1 回答
TA贡献2080条经验 获得超4个赞
使用shiftwith eq(==) 比较值,将 boolean mask 和 last count Trues by 链接起来sum:
out = (df['On/Off'].shift(-1).eq('Off') & df['On/Off'].eq('On')).sum()
另一种解决方案:
out = (df['On/Off'].shift().eq('On') & df['On/Off'].eq('Off')).sum()
print (out )
2
细节:
print ((df['On/Off'].shift().eq('On') & df['On/Off'].eq('Off')))
0 False
1 False
2 False
3 False
4 False
5 False
6 False
7 False
8 False
9 False
10 False
11 False
12 False
13 False
14 True
15 False
16 False
17 False
18 False
19 False
20 False
21 False
22 False
23 False
24 False
25 False
26 False
27 False
28 False
29 False
30 False
31 False
32 False
33 False
34 False
35 False
36 False
37 False
38 False
39 False
40 False
41 False
42 False
43 False
44 True
45 False
46 False
47 False
48 False
49 False
Name: On/Off, dtype: bool
添加回答
举报
