合并Pandas数据框作为分组后的结果

2024-06-01 10:30:40 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有以下数据帧:

    between_count            name1            name2  \
0              1     Jacubo Hakym  Johannem Haxixe   
1              2  Johannem Haxixe          Antonio   
2              4          Antonio  Johannem Haxixe   
3              8  Johannem Haxixe     Jacubo Hakym   
4             13     Jacubo Hakym  Johannem Haxixe   
5             24  Johannem Haxixe           Domine   
6             44           Domine  Johannem Haxixe   
7             20  Johannem Haxixe  Johannem Haxixe   
8             48  Johannem Haxixe  Johannem Haxixe   

                                               words  
0                          contra Pro Coram magistro  
1                Coram magistro contra Axac testibus  
2  Axac testibus Testamur quod Coram magistro hab...  
3  habitator Rabatj Melite Jn accomandita dederat...  
4  duas taceas de argento Hodie supratitulato pre...  
5  presenti unam taceam ex dictis duabus taceis e...  
6  speravi Jn te’ et nomine vendicionis dimisit p...  
7  venditor confessus est se recepisse at habuiss...  
8  venditor transtulit et mandavit Jn eumdem magi...  

我希望通过以下方式按名称1和名称2分组:

cp = candidate_pairs.groupby(['name1','name2'], as_index=False).apply(func)

但同时添加分组项目的between_计数,并将单词附加到一个bow中

因此,记录0和4将变为: 在\u count name1 name2单词之间 14雅库布·哈克姆·约翰南·哈克西(Jacubo Hakhym Johannem Haxixe)与阿根托·霍迪(argento Hodie)在宪法上的地位相反

有没有一种简单的方法可以做到这一点,而不是手动添加between_count的值,然后添加单词并删除不需要的行?多谢各位


Tags: countbetween单词jncontraname1name2antonio
1条回答
网友
1楼 · 发布于 2024-06-01 10:30:40

我认为您需要通过{}和{}与{a1}进行聚合:

d = {'between_count':'sum', 'words':' '.join}
cp = candidate_pairs.groupby(['name1','name2'], as_index=False).agg(d)
print (cp)
             name1            name2  between_count  \
0          Antonio  Johannem Haxixe              4   
1           Domine  Johannem Haxixe             44   
2     Jacubo Hakym  Johannem Haxixe             14   
3  Johannem Haxixe          Antonio              2   
4  Johannem Haxixe           Domine             24   
5  Johannem Haxixe     Jacubo Hakym              8   
6  Johannem Haxixe  Johannem Haxixe             68   

                                               words  
0     Axac testibus Testamur quod Coram magistro hab  
1     speravi Jn te’ et nomine vendicionis dimisit p  
2  contra Pro Coram magistro duas taceas de argen...  
3                Coram magistro contra Axac testibus  
4     presenti unam taceam ex dictis duabus taceis e  
5     habitator Rabatj Melite Jn accomandita dederat  
6  venditor confessus est se recepisse at habuiss...  

相关问题 更多 >