Python 基于数据帧中另一列的最后一个值填充列
我有一个数据帧:Python 基于数据帧中另一列的最后一个值填充列,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据帧: | col_1 | col_2 --------------------- 0 | 1 | NaN 1 | 0 | NaN 2 | 0 | NaN 3 | 0 | NaN 4 | 0 | NaN 5 | 0 | NaN 6 | 0 | NaN 7 | -1 | NaN 8 | 0 | NaN 9 | 0 | NaN 10| 0 | NaN 11| 0 |
| col_1 | col_2
---------------------
0 | 1 | NaN
1 | 0 | NaN
2 | 0 | NaN
3 | 0 | NaN
4 | 0 | NaN
5 | 0 | NaN
6 | 0 | NaN
7 | -1 | NaN
8 | 0 | NaN
9 | 0 | NaN
10| 0 | NaN
11| 0 | NaN
现在,我试图根据col_1中最后一个数字的出现,用1或-1填充col_2
我正在尝试以这种格式获取它:
| col_1 | col_2
---------------------
0 | 1 | 1
1 | 0 | 1
2 | 0 | 1
3 | 0 | 1
4 | 0 | 1
5 | 0 | 1
6 | 0 | 1
7 | -1 | -1
8 | 0 | -1
9 | 0 | -1
10| 0 | -1
11| 0 | -1
使用replace
和ffill
:
输出
col_1 col_2
0 1 1.0
1 0 1.0
2 0 1.0
3 0 1.0
4 0 1.0
5 0 1.0
6 0 1.0
7 -1 -1.0
8 0 -1.0
9 0 -1.0
10 0 -1.0
11 0 -1.0
使用replace
和ffill
:
输出
col_1 col_2
0 1 1.0
1 0 1.0
2 0 1.0
3 0 1.0
4 0 1.0
5 0 1.0
6 0 1.0
7 -1 -1.0
8 0 -1.0
9 0 -1.0
10 0 -1.0
11 0 -1.0
非常聪明的解决方案!非常聪明的解决方案!