如果我有一些缺失值,并且我想用之前和之后值的平均值替换所有 NaN,我该怎么做?
我知道我可以使用pandas.DataFrame.fillna
with method='ffill'
or method='bfill'
用前面或后面的值替换 NaN 值的选项,但是我想在数据帧上应用这些值的平均值,而不是迭代行和列。
Try DataFrame.interpolate() http://pandas.pydata.org/pandas-docs/stable/missing_data.html#interpolation。 panda 文档中的示例:
In [65]: df = pd.DataFrame({'A': [1, 2.1, np.nan, 4.7, 5.6, 6.8],
....: 'B': [.25, np.nan, np.nan, 4, 12.2, 14.4]})
....:
In [66]: df
Out[66]:
A B
0 1.0 0.25
1 2.1 NaN
2 NaN NaN
3 4.7 4.00
4 5.6 12.20
5 6.8 14.40
In [67]: df.interpolate()
Out[67]:
A B
0 1.0 0.25
1 2.1 1.50
2 3.4 2.75
3 4.7 4.00
4 5.6 12.20
5 6.8 14.40
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)