Python 整数值之间的条件正向填充
我有一个整数值的dataframe列,它们之间有空的NaN。我想在新整数的开始和该整数的最后一个实例之间进行正向填充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
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