【发布时间】:2017-08-30 01:24:32
【问题描述】:
我有一个包含一些 NaN 值的数据,我想使用 imputer 填充 NaN 值。
from sklearn.preprocessing import Imputer
imp = Imputer(missing_values='NaN', strategy='mean', axis=1)
cleaned_data = imp.fit_transform(original_data)
到目前为止,我知道 imputer 可以在整个专栏中使用这样的:
Point1 Point2
S.No
2 NaN
1 NaN 4
2 NaN
NaN 4
2 2 NaN
NaN 4
应用 imputer 后数据如下:
Point1 Point2
S.No
2 2
1 1 4
2 2
1 4
2 2 2
1 4
但我希望 imputer works index wise name as S.No
Point1 Point2
S.No
2 1.33
1 1.333 4
2 1.33
0.667 4
2 2 2.667
0.667 4
是否可以像这样实现imputer,或者在python 上的DataFrame 上存在任何替代方法可以这样做。
【问题讨论】:
-
这里的
S.No是什么?指数?而且我似乎无法重现您的结果。你的数据框是熊猫数据框吗? -
我像这样导入我的数据 data = pd.read_csv("filename.csv",index_col = [0]);是的!!
S.No是索引,是的!我的数据框是熊猫数据框 -
当我运行您的插补变换时,Point1 列填充的是 4 而不是 1。也许您想设置
axis = 1?
标签: python-3.x dataframe scikit-learn nan imputation