我正在尝试填写一个时间序列的缺失值,如下所示。我正在使用Python3。
Week Rainfall(cm)
1 1
2 NaN
3 9
4 10
5 11
6 NaN
7 NaN
8 14
我不想用平均值来填充缺失的值。如果我亲自去填NaN值,我可能猜第2周的降雨量是5厘米,第6周和第7周的降雨量分别是12厘米和13厘米。
我想让它在第二周,值是平均的第一周(1厘米的降雨量)和第3周(9厘米的降雨量)。(例如,第2周降雨量为5厘米)。
但事情变得更复杂了..。
在第6周和第7周,我想让NaN值充满12和13,因为如果你在第5周(11厘米的降雨量)和第8周(14厘米的降雨量)之间划出一条线,你会期望第6周和第7周的降雨量分别是12厘米和13厘米。
有人能想到用我前面描述的方式填充NaN值的方法吗?在过去的几个小时里,我一直在搜索这个问题,似乎什么都找不到。
发布于 2017-12-14 15:51:31
您似乎指的是线性插值的过程。如果rf
是您的DataFrame:
rf.interpolate()
Week Rainfall(cm)
0 1 1.0
1 2 5.0
2 3 9.0
3 4 10.0
4 5 11.0
5 6 12.0
6 7 13.0
7 8 14.0
https://stackoverflow.com/questions/47817250
复制相似问题