我根据确定的条件创建了一个布尔列。我想通过计算每组的True值来更进一步。
我有
group = df.groupby('id')
df.loc[:,'Match'] = (group['flag'].transform(lambda x: x.eq(0).any()))&(group['flag'].transform(lambda x: x.eq(1).any()))
这给了我正确和错误的价值。然后,如何计算每个id填充的True值的数量?
样本数据:
id flag Match Count Match
123 0 True 3
123 1 True 3
123 1 True 3
567 0 False 0
567 0 False 0
匹配列是在上面创建的,然后我想创建计数匹配列。
是吗:
df['Count Match'] = df['Match'].astype(int).groupby(df['id']).transform('sum')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句