【发布时间】:2020-05-06 11:18:46
【问题描述】:
我有一个这样的数据框:
id date status value
1 2009-06-17 1 NaN
1 2009-07-17 B NaN
1 2009-08-17 A NaN
1 2009-09-17 5 NaN
1 2009-10-17 0 0.55
2 2010-07-17 B NaN
2 2010-08-17 A NaN
2 2010-09-17 0 0.00
现在我想按 id 分组,然后检查在状态更改为 A 后值是否变为非零。因此对于 id=1 的组,状态确实更改为 A 并且之后(就日期而言)该值也变为非零。但是对于 id=2 的组,即使状态变为 A 后,值也不会变为非零。请注意,如果状态没有变为 A,那么我什至不需要检查值。
所以最后我想要一个像这样的新数据框:
id check
1 True
2 False
【问题讨论】:
-
A之后是否需要测试下一个值? -
不,不一定是A之后的下一个值,后面的值也可以变为非零
-
@jezrael 我已经编辑了问题以反映这一点
-
有可能
0和A在同一行,那么输出True? -
@jezrael 这永远不会发生,但即使发生了,是的,输出将是 True
标签: python-3.x pandas dataframe pandas-groupby