gpt4 book ai didi

python - 统计列中连续True的个数,False时重新开始

转载 作者:行者123 更新时间:2023-12-02 02:03:17 30 4
gpt4 key购买 nike

我在 pandas df 中使用以下列:

A
True
True
True
False
True
True

我想添加 B 列来计算 A 中连续出现“True”的次数。每次出现“False”时我都想重新开始。期望的输出:

A      B
True 1
True 2
True 3
False 0
True 1
True 2

最佳答案

使用 cumsum 识别 A 列中的值保持 True 的行 block ,然后将 A 列分组code> 在这些 block 上计算累积和以分配序号

df['B'] = df['A'].groupby((~df['A']).cumsum()).cumsum()

       A  B
0 True 1
1 True 2
2 True 3
3 False 0
4 True 1
5 True 2

关于python - 统计列中连续True的个数,False时重新开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68740434/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com