用从邻居传播的值替换列表中的所有内容

时间:2019-04-12 10:54:01

标签: python pandas

我有一个列表:

L = [-10,-9.8,-9.6, None, None, None, -8.8, -8.6, -8.4]

如何根据值的传播将None替换为值,如下所示:

L = [-10,-9.8,-9.6, -9.4, -9.2, -9.0, -8.8, -8.6, -8.4]

我尝试使用pandas.fillna(method = ffill),但它给出了ValueError: DataFrame constructor not properly called! 但这似乎并不是正确的方法。

1 个答案:

答案 0 :(得分:4)

您可以这样做:

import pandas as pd

pd.Series([-10,-9.8,-9.6, None, None, None, -8.8, -8.6, -8.4]).interpolate()

产量:

0   -10.0
1    -9.8
2    -9.6
3    -9.4
4    -9.2
5    -9.0
6    -8.8
7    -8.6
8    -8.4
dtype: float64

返回列表:

pd.Series([-10,-9.8,-9.6, None, None, None, -8.8, -8.6, -8.4]).interpolate().tolist()