gpt4 book ai didi

python - 根据条件对 Pandas 系列进行分组

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

我有一个 Pandas df,其中一列具有以下值。

      Data
0 A
1 A
2 B
3 A
4 A
5 A
6 B
7 A
8 A
9 B

我想尝试对这些值进行分组,对于每次遇到值 B,我希望将组值更改如下
      Data  Group
0 A 1
1 A 1
2 B 1
3 A 2
4 A 2
5 A 2
6 B 2
7 A 3
8 A 3
9 B 3

如何使用内置的 Pandas 来实现这一点。以某种方式创建任何辅助列以促进上述任务。

最佳答案

你可以试试 cumsum 比较后是否系列equals B然后 shift将 B 包括在组中的 1 个位置:

df['Data'].eq('B').shift(fill_value=False).cumsum().add(1)
0    1
1 1
2 1
3 2
4 2
5 2
6 2
7 3
8 3
9 3

关于python - 根据条件对 Pandas 系列进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61305853/

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