首页 > 解决方案 > 将列中的 nan 替换为两个值 python 之间的平均值

问题描述

我有一个 df 如下。在这两个值之间存在不确定数量的 nan 值的速度值。我试图用两个数值之间的平均值替换 nan 值。

timestamp   ...           Speed km h^-1
0     1434838676097.07006835937500000000  ... 53.02799834399999667767
1     1434838676130.07006835937500000000  ...                     nan
2     1434838676229.07006835937500000000  ...                     nan
3     1434838676328.07006835937500000000  ...                     nan
4     1434838676429.07006835937500000000  ...                     nan
5     1434838676526.07006835937500000000  ...                     nan
6     1434838676625.07006835937500000000  ...                     nan
7     1434838676726.07006835937500000000  ...                     nan
8     1434838676826.07006835937500000000  ...                     nan
9     1434838676924.07006835937500000000  ...                     nan
10    1434838676992.07006835937500000000  ... 51.19200097200000243447

标签: pythonpandas

解决方案


我认为您可以简单地使用pandas.Series.interpolate

所以在这里,因为你想用上面和下面的填充值的平均值填充 nan 值,它应该看起来像:

df.Speed.interpolate()

这将返回一系列所有速度测量值和 nan 值的插值。


推荐阅读