在熊猫的前一行中获取第一个非零值

时间:2018-10-05 14:47:17

标签: python pandas numpy pandas-groupby series

以下是我的数据框的外观。 Expected_Output是我想要的列:

   Group  Signal  Ready  Value  Expected_Output
0      1       0      0      3              NaN
1      1       0      1     72              NaN
2      1       0      0      0              NaN
3      1       4      0      0             72.0
4      1       4      0      0             72.0
5      1       4      0      0             72.0
6      2       0      0      0              NaN
7      2       7      0      0              NaN
8      2       7      0      0              NaN
9      2       7      0      0              NaN

如果是Signal > 1,那么我正试图在Value的{​​{1}}的前一行中获取最新的非零Group。因此,在第3行Ready = 1中,所以我想从第1行的Signal = 4获取最新的非零Value of 72

一旦我可以获取值,就可以执行Ready = 1,因为信号反复出现,就像444一样,但是不确定如何获取df.groupby(['Group','Signal']).Value.transform('first')

2 个答案:

答案 0 :(得分:2)

具有布尔值分配的IIUC import React from 'react'; import { Location } from '@reach/router'; export default () => ( <Location> {({ navigate, location }) => /* ... */} </Location> ); + groupby

ffill

答案 1 :(得分:2)

通过from project.test.moduletoimport import function_name + GroupBy创建一个系列,然后掩盖所得的系列:

ffill