statsmodels.imputation.mice.MICEData

class statsmodels.imputation.mice.MICEData(data, perturbation_method='gaussian', k_pmm=20, history_callback=None)[source]

包装一个数据集以允许使用MICE处理缺失数据。

Parameters:
dataPandas data frame

数据集,它在内部被复制。

perturbation_methodstr

默认的扰动方法

k_pmmint

在预测均值匹配过程中使用的最近邻数量。也可以在fit中指定。

history_callbackfunction

在每个完整的插补周期后调用的函数。返回值将被附加到历史记录中。MICEData对象作为唯一参数传递给历史回调

注释

允许的扰动方法有‘gaussian’(模型参数被设置为从后验分布的高斯近似中抽取的值),以及‘boot’(模型参数被设置为拟合数据集的自助版本时获得的估计值)。

history_callback 可以实现以产生诸如将当前输入的数据集保存到磁盘等副作用。

示例

从名为 data 的数据集中绘制20个插补,并将它们保存在文件名模式为 dataXX.csv 的单独文件中。除了 x1 之外的变量使用通过OLS拟合的线性模型进行插补,均值结构包含 data 中所有其他变量的主效应。名为 x1 的变量具有包含x2^2额外项的条件均值结构。

>>> imp = mice.MICEData(data)
>>> imp.set_imputer('x1', formula='x2 + np.square(x2) + x3')
>>> for j in range(20):
...     imp.update_all()
...     imp.data.to_csv('data%02d.csv' % j)

方法

get_fitting_data(vname)

返回用于拟合插补模型所需的数据。

get_split_data(vname)

返回用于插补给定变量的内生变量和外生变量。

impute(vname)

impute_pmm(vname)

使用预测均值匹配来填补缺失值。

next_sample()

返回插补过程中的下一个插补数据集。

perturb_params(vname)

plot_bivariate(col1_name, col2_name[, ...])

绘制两个变量的观测值和插补值。

plot_fit_obs(col_name[, lowess_args, ...])

绘制拟合值与插补值或观测值的散点图。

plot_imputed_hist(col_name[, ax, ...])

显示一个变量的插补值作为直方图。

plot_missing_pattern([ax, row_order, ...])

生成显示缺失数据模式的图像。

set_imputer(endog_name[, formula, ...])

指定单个变量的插补过程。

update(vname)

为单个变量填补缺失值。

update_all([n_iter])

执行指定次数的MICE迭代。


Last update: Oct 16, 2024