填充含有nan的细胞,其前后均为平均值

时间:2018-04-09 19:20:30

标签: python-3.x pandas numpy

我有一个非常类似的问题 Fill cell containing NaN with average of value before and after 唯一的补充是连续的几个条目可能是NaN,然后​​替换应该用平均值来完成,或者更好的线性调整平均值,例如:     [1,nan,nan,4,...]应该成为[1,2,3,4 ......] 和     [8,nan,nan,2,...]应该成为[8,6,4,2,...] 这还有可能吗?

1 个答案:

答案 0 :(得分:1)

使用interpolate

df=pd.DataFrame({'A':[1,np.nan, np.nan, 4],'B':[8,np.nan,np.nan,2]})


     A    B
0  1.0  8.0
1  NaN  NaN
2  NaN  NaN
3  4.0  2.0


df.interpolate()

输出:

     A    B
0  1.0  8.0
1  2.0  6.0
2  3.0  4.0
3  4.0  2.0