Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 整数值之间的条件正向填充_Python_Pandas_Dataframe_Nan - Fatal编程技术网

Python 整数值之间的条件正向填充

Python 整数值之间的条件正向填充,python,pandas,dataframe,nan,Python,Pandas,Dataframe,Nan,我有一个整数值的dataframe列,它们之间有空的NaN。我想在新整数的开始和该整数的最后一个实例之间进行正向填充 0 NaN 1 2.0 2 NaN 3 NaN 4 2.0 5 NaN 6 NaN 7 3.0 8 NaN 9 NaN 10 NaN 11 3.0 12 NaN 13 NaN 14 4.0 15 NaN 16 4.0 因此,我的结果数据框如下所示。我该怎么做?我的第一种方法是将enumerate和条件语句与isinstanc

我有一个整数值的dataframe列,它们之间有空的NaN。我想在新整数的开始和该整数的最后一个实例之间进行正向填充

0   NaN
1   2.0
2   NaN
3   NaN
4   2.0
5   NaN
6   NaN
7   3.0
8   NaN
9   NaN
10  NaN
11  3.0
12  NaN
13  NaN
14  4.0
15  NaN
16  4.0
因此,我的结果数据框如下所示。我该怎么做?我的第一种方法是将enumerate和条件语句与isinstance(x,int)一起使用

ffill
+
bfill
掩码
s
是您的专栏。
我真的很喜欢这个简洁

0   NaN
1   2.0
2   2.0
3   2.0
4   2.0
5   NaN
6   NaN
7   3.0
8   3.0
9   3.0
10  3.0
11  3.0
12  NaN
13  NaN
14  4.0
15  4.0
16  4.0
i = s.ffill()
i.mask(i != s.bfill())

0     NaN
1     2.0
2     2.0
3     2.0
4     2.0
5     NaN
6     NaN
7     3.0
8     3.0
9     3.0
10    3.0
11    3.0
12    NaN
13    NaN
14    4.0
15    4.0
16    4.0
Name: 1, dtype: float64