【发布时间】:2020-10-15 01:14:43
【问题描述】:
我目前正在从事一个机器学习项目,我必须将 -99 值 (nan) 替换为每列的平均值。但是,我无法替换正确的值,只能替换所有列的第一个值。所以,我需要的是每列的平均值而不是该列的 -99。
我首先为每一列生成均值:
mean_miss = []
for i in df_train[vars_ind_numeric]:
mean_miss = df_train[vars_ind_numeric].mean()
然后通过:
for var in df_train[vars_ind_numeric]:
df_train[vars_ind_numeric]=df_train[vars_ind_numeric]\
.replace(nan, mean_miss[var])
关于如何解决这个问题的任何想法?提前致谢
【问题讨论】:
-
欢迎来到 SO。您能否添加示例输入数据和示例所需的输出数据?请参阅stackoverflow.com/questions/20109391/…。
标签: python pandas dataframe machine-learning nan