我有一系列,其中第一个数据可以是NaN值。 我尝试了插值('重心',limit_direction ='两者都是')但如果第一个数据是NaN,它确实有效:
pd.Series([ np.NaN, 1.5, 2]).interpolate( 'barycentric', limit_direction='both')
0 NaN
1 1.5
2 2.0
dtype: float64
有没有一种简单的方法可以让它猜测第一个数字应该是' 1' ?或者它有没有理由不这样做?其他方法和指示似乎不起作用。
答案 0 :(得分:2)
以适合您数据的方式使用limit
参数进行尝试,例如:
(pd
.Series([ np.NaN, 1.5, 2])
.interpolate(method = "barycentric", limit = 3, limit_direction = "both"))
0 1.0
1 1.5
2 2.0
dtype: float64