gpt4 book ai didi

python - Pandas :如何计算考虑到以前记录的变化数量

转载 作者:太空宇宙 更新时间:2023-11-03 13:08:20 26 4
gpt4 key购买 nike

我有一个如下所示的数据框:

import pandas as pd 
df = pd.DataFrame({"id":[1,1,1,1,1,1,2,2,2,2,3,3,3,3],
"val":[0,1,1,0,1,0,0,1,0,1,0,0,0,1]})

id val
0 1 0
1 1 1
2 1 1
3 1 0
4 1 1
5 1 0
6 2 0
7 2 1
8 2 0
9 2 1
10 3 0
11 3 0
12 3 0
13 3 1

如您所见,ID 重复,我的值在 0 和 1 之间交替。我想以某种方式计算值从 0 切换到 1 的次数。例如:

id  val
1 2
2 2
3 1

这不是 1 的计数,而是每个 ID 的 0-->1 的 val 切换次数计数器。

最佳答案

通过使用diff

df.groupby('id').val.apply(lambda x : sum(x.diff().eq(1)))
Out[306]:
id
1 2
2 2
3 1
Name: val, dtype: int64

关于python - Pandas :如何计算考虑到以前记录的变化数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50819114/

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