给出像
这样的Pandas数据框ID VALUE
1 false
2 true
3 false
4 false
5 false
6 true
7 true
8 true
9 false
对于一组真值
之后的下一行,结果应为trueID RESULT
1 false
2 false
3 true
4 false
5 false
6 false
7 false
8 false
9 true
如何在熊猫中实现这一目标?
答案 0 :(得分:2)
您可以检查diff()
列的VALUE
结果是否等于-1:
df.VALUE.astype(int).diff() == -1
#0 False
#1 False
#2 True
#3 False
#4 False
#5 False
#6 False
#7 False
#8 True
#Name: VALUE, dtype: bool
答案 1 :(得分:1)
您可以将这些值与偏移版本进行比较,以找出真实之后新假设的位置:
>>> df['VALUE'] = df['VALUE'].astype('bool')
>>> (~df['VALUE'] & df['VALUE'].shift())
0 False
1 False
2 True
3 False
4 False
5 False
6 False
7 False
8 True
Name: VALUE, dtype: bool
答案 2 :(得分:0)
Before changes:
values
0 false
1 true
2 false
3 false
4 false
5 true
6 true
7 true
8 false
After changes:
values
0 false
1 false
2 true
3 false
4 false
5 false
6 false
7 false
8 true
结果:
{{1}}