2017-09-05 48 views
0

我在其中包含布爾大熊貓有一列,並希望自上次真值來算THR行,像這樣:計數行,因爲條件

a   b 
False  0 
True  0 
False  1 
False  2 
False  3 
True  0 
False  1 
True  0 

我可以通過一個循環做到這一點,但它似乎有必須是更好的方式

回答

2
a = ~df['a'] 
b = a.cumsum() 
c = b-b.where(~a).ffill().fillna(1).astype(int) 
print (c) 
0 0 
1 0 
2 1 
3 2 
4 3 
5 0 
6 1 
7 0 
Name: a, dtype: int32