qwe*_*rty 0 python numpy pandas
我有这个数据框:
ID X1 X2 Y
A 11 47 0
A 11 87 0
A 56 33 0
A 92 72 1
A 83 34 0
A 34 31 0
B 88 62 1
B 28 71 0
B 95 28 0
B 92 87 1
B 91 45 0
C 46 59 0
C 60 68 1
C 67 78 0
C 26 26 0
C 13 77 0
D 40 95 0
D 25 26 1
D 93 31 0
D 71 67 0
D 91 24 1
D 80 19 0
D 44 49 0
D 41 84 1
E 38 10 0
F 23 75 1
G 46 58 1
G 44 52 0
Run Code Online (Sandbox Code Playgroud)
我想分配一个值1before Ywas equal 1,只有第一次。否则,0。
“否则”意味着Y已经(或正在)相等1。
ID单独。预期结果:
ID X1 X2 Y before
A 11 47 0 1
A 11 87 0 1
A 56 33 0 1
A 92 72 1 0
A 83 34 0 0
A 34 31 0 0
B 88 62 1 0
B 28 71 0 0
B 95 28 0 0
B 92 87 1 0
B 91 45 0 0
C 46 59 0 1
C 60 68 1 0
C 67 78 0 0
C 26 26 0 0
C 13 77 0 0
D 40 95 0 1
D 25 26 1 0
D 93 31 0 0
D 71 67 0 0
D 91 24 1 0
D 80 19 0 0
D 44 49 0 0
D 41 84 1 0
E 38 10 0 1
F 23 75 1 0
G 46 58 1 0
G 44 52 0 0
Run Code Online (Sandbox Code Playgroud)
国际大学联盟
df['New']=df.groupby('ID').Y.cumsum().eq(0).astype(int)
df
ID X1 X2 Y New
0 A 11 47 0 1
1 A 11 87 0 1
2 A 56 33 0 1
3 A 92 72 1 0
4 A 83 34 0 0
5 A 34 31 0 0
6 B 88 62 1 0
7 B 28 71 0 0
8 B 95 28 0 0
9 B 92 87 1 0
10 B 91 45 0 0
11 C 46 59 0 1
12 C 60 68 1 0
13 C 67 78 0 0
14 C 26 26 0 0
15 C 13 77 0 0
16 D 40 95 0 1
17 D 25 26 1 0
18 D 93 31 0 0
19 D 71 67 0 0
20 D 91 24 1 0
21 D 80 19 0 0
22 D 44 49 0 0
23 D 41 84 1 0
24 E 38 10 0 1
25 F 23 75 1 0
26 G 46 58 1 0
27 G 44 52 0 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
36 次 |
| 最近记录: |