我正在探索用于输入缺失值的statsmodels.imputation.mice包。但是,在http://www.statsmodels.org之外,我还没有看到它的任何使用示例。 从我收集的内容中,我们将创建一个mouse.MICEData实例并将其与mice.MICE()。fit()结合使用。来自http://www.statsmodels.org/dev/generated/statsmodels.imputation.mice.MICE.html
的示例>>> imp = mice.MICEData(data)
>>> fml = 'y ~ x1 + x2 + x3 + x4'
>>> mice = mice.MICE(fml, sm.OLS, imp)
>>> results = mice.fit(10, 10)
>>> print(results.summary())
但是,MiceData实例中的插补值并不固定。我的意思是,如果
imp = mice.MICEData(data)
每次通话
imp.update('x1')
(假设数据有一列' x1')使用“预测平均匹配”为缺失值绘制新样本。 如果我将MICEDdata与MICE.fit()一起使用,这一切都很好。 但是,让我们说我想使用这个包来估算一次值,然后使用来自另一个包的预测器,比如来自sklearn,以适应数据。 我想知道,什么是合理的方法。我可以多次运行更新并对每个缺失值进行平均预测。或者,我可以创建具有不同插补值的多个数据集并适合每个集合。但是,如果我的数据集很大,那么它可能会非常昂贵。