gpt4 book ai didi

python - pandas 根据先前的值创建组

转载 作者:行者123 更新时间:2023-11-28 17:56:07 25 4
gpt4 key购买 nike

我有一个按整数列 v1 排序的 DataFrame:

   v1
0 1
1 5
2 6
3 12
4 15
5 23
6 24
7 25
8 33

我想像这样对 v1 中的值进行分组:如果值 - prev_value < 5,则它们具有相同的组。
为此,我想为每个组增加一个数字。

所以我想创建另一个列 v1_group,它将具有输出:

   v1  v1_group
0 1 1
1 5 1
2 6 1
3 12 2 # 12 - 6 > 5, new group
4 15 2
5 23 3
6 24 3
7 25 3
8 33 4

我需要对日期时间列执行相同的任务:如果值 - prev_value < timedelta,则对值进行分组。

我知道我可以使用标准 for 循环来解决这个问题。有更好的 pandas 方法吗?

最佳答案

国际工业联合会

df['v1_group'] = df.v1.diff().ge(5).cumsum() + 1

输出:

   v1  v1_group
0 1 1
1 5 1
2 6 1
3 12 2
4 15 2
5 23 3
6 24 3
7 25 3
8 33 4

关于python - pandas 根据先前的值创建组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58309963/

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