gpt4 book ai didi

python - Pandas dataframe groupby 并组合多个行值

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

如果标题不清楚,我深表歉意,但我很难表述问题。如果我只是展示我想做的事情,那可能是最好的。

一些上下文:我解析了一个文档的名称,并在每个名称出现的地方存储了页码。我需要转换 DataFrame,以便每个名称都有一行,页码列组合了名称出现的所有页面。我认为这需要 GroupBy,但我不完全确定。

我目前的数据:

data = np.array([['John', 'Smith', 1], ['John', 'Smith', 7], ['Eric', 'Adams', 9], ['Jane', 'Doe', 14], ['Jane', 'Doe', 16], ['John', 'Smith', 19]])

pd.DataFrame(data, columns=['FIRST_NM', 'LAST_NM', 'PAGE_NUM'])

FIRST_NM LAST_NM PAGE_NUM
0 John Smith 1
1 John Smith 7
2 Eric Adams 9
3 Jane Doe 14
4 Jane Doe 16
5 John Smith 19

所需的数据框:

  FIRST_NM LAST_NM PAGE_NUM
0 John Smith 1,7,19
1 Eric Adams 9
2 Jane Doe 14,16

最佳答案

您可以使用 groupby 执行此操作并应用:

df.groupby(['FIRST_NM', 'LAST_NM']).apply(lambda group: ','.join(group['PAGE_NUM']))
Out[23]:
FIRST_NM LAST_NM
Eric Adams 9
Jane Doe 14,16
John Smith 1,7,19
dtype: object

关于python - Pandas dataframe groupby 并组合多个行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32686683/

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