gpt4 book ai didi

python - 应用 "group by"后选择第一个或最后一个 n 组

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

我想在按列应用组后提取特定数量的组。例如前 2 或 3 组。

我有一个数据框:

id gender value1  f      1123 1  f      102  m      1232  m      154  2  m      1653  m      654  3  m      9874  f      76544  f      76544  f      7654...  ...  ....

I want something like this

id gender value2  m      1232  m      154 3  m      654  3  m      987... .. ...  

My code is:

dtFrame2 = dtFrame.groupby('id').head(2)
dtFrameMale = dtFrame2.loc[dtFrame2.gender=='male']
temp = maleGroups.filter(lambda x: len(x) == 2)

最后一条语句为我提供了两行的所有组,但之后我想提取前两个、三个或 n 个组。

最佳答案

像这样

In [60]: s = df[df['gender'] == 'm'].groupby('id').size()

In [61]: s.name = 'size'

In [62]: df2 = df.join(s, on='id')

In [63]: df2[df2['size'] == 2]
Out[63]:
id gender value size
5 3 m 654 2
6 3 m 987 2

关于python - 应用 "group by"后选择第一个或最后一个 n 组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31025860/

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