python-3.x - 如何用 pandas 中 ffill() 和 bfill() 的平均值替换缺失值?
问题描述
这是一个示例数据框,它包含NA
:
x y z datetime
0 2 3 4 02-02-2019
1 NA NA NA 03-02-2019
2 3 5 7 04-02-2019
3 NA NA NA 05-02-2019
4 4 7 9 06-02-2019
现在,我想填充这些NA
值,我可以使用ffill()
或来做到这一点bfill()
。但是如果想应用ffill() & bfill()
. 那我该怎么做呢?
直接平均值df = (df.fill() + df.bfill()) / 2
不起作用,因为datetime column
.
最终数据框应如下所示:
x y z datetime
0 2 3 4 02-02-2019
1 2.5 4 5.5 03-02-2019
2 3 5 7 04-02-2019
3 3.5 6 8 05-02-2019
4 4 7 9 06-02-2019
解决方案
df.interpolate()
x y z datetime
0 2.0 3.0 4.0 02-02-2019
1 2.5 4.0 5.5 03-02-2019
2 3.0 5.0 7.0 04-02-2019
3 3.5 6.0 8.0 05-02-2019
4 4.0 7.0 9.0 06-02-2019
推荐阅读
- r - ggplot2的世界地图
- android - 在 Kotlin 中按下按钮时,Android 应用程序崩溃
- c - 打印行号随着 C 中的每个输入而递增
- python-3.x - 为什么 Python 不加载 ca 证书?
- c++ - 在与 C++ 实现相关的类图中,描述员工职业的适当方式是什么?
- ajax - 带有 rowGroup 的数据表 ajax.reload()
- python - 一次热编码期间的 RunTimeError
- python-3.x - 终端中打印的 pyton3 中可能的参数
- python - 如何通过 discord.py 对所有不和谐的版主进行 dm,而不仅仅是一个?
- html - 图案元素内的多个分层元素