【发布时间】:2019-09-28 10:00:19
【问题描述】:
我有一个DataFrame,其列名称为age,salary。还有一些NaN 值。我想使用Mean 和Median 填充这些值。
原始数据帧
age salary
0 20.0 NaN
1 45.0 22323.0
2 NaN 598454.0
3 32.0 NaN
4 NaN 48454.0
使用apply() 用mean() 和salary 填充缺失的age 和它们各自列的median()。
我用过
df['age','salary'].apply({'age':lambda row:row.fillna(row.mean()), 'salary':lambda row:row.fillna(row.median()) })
即使在我使用axis=1 之后,它仍显示Key error 'age','salary'
预期输出
age salary
0 20.000000 48454.0
1 45.000000 22323.0
2 32.333333 598454.0
3 32.000000 48454.0
4 32.333333 48454.0
有人可以告诉我如何正确执行此操作以及后台发生的情况吗?
请告知是否还有其他方法。我正在从头开始学习 Pandas
【问题讨论】:
-
嘿 Deshwal,您能发布一个数据示例和预期输出吗?
-
@Datanovice 当然。我已经更新了。请看一下
标签: python pandas dataframe apply series