gpt4 book ai didi

python - 从 GroupBy 对象中的组中获取除前 k 行以外的所有行

转载 作者:太空宇宙 更新时间:2023-11-04 00:32:06 24 4
gpt4 key购买 nike

我有一个 pandas GroupBy 对象。我正在使用 head(k) 将每个组的前 k 个元素提取到数据框中,我还想提取补码。每个组的大小都不固定。

有什么简单的方法可以做到这一点吗?

最佳答案

你可以试试这个:

给定:

df = pd.DataFrame({'ID':['a','b','b','c','c','c','d','d','d','d'],
'Data':np.arange(10)})

Data ID
0 0 a
1 1 b
2 2 b
3 3 c
4 4 c
5 5 c
6 6 d
7 7 d
8 8 d
9 9 d

df[~df.index.isin(df.groupby('ID').head(2).index)]

输出:

   Data ID
5 5 c
8 8 d
9 9 d

其中 df.groupby('ID').head(2) 返回:

   Data ID
0 0 a
1 1 b
2 2 b
3 3 c
4 4 c
6 6 d
7 7 d

关于python - 从 GroupBy 对象中的组中获取除前 k 行以外的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45428631/

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