在Python中动态地将列中的nan替换为两个值之间的均值。

8 浏览
0 Comments

在Python中动态地将列中的nan替换为两个值之间的均值。

我有一个如下的数据框。其中的速度值之间有不确定数量的nan值。我试图用两个数值之间的平均值替换nan值。

时间戳 ... 速度 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

0
0 Comments

问题原因:在给定的数据集中,某一列存在缺失值(NaN),需要将这些缺失值替换为其上下两个非缺失值的平均值。

解决方法:可以使用pandas库中的Series.interpolate方法。具体操作如下:

df.Speed.interpolate()

这将返回一个包含所有速度测量值的Series,并对缺失值进行插值处理。

0