Свернуть панда данных после группировки - PullRequest
0 голосов
/ 15 октября 2018

Предполагая, что у меня есть следующий Dataframe:

    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)

Но в то же время добавьте значениеween_count изсгруппированные элементы и добавьте слова к одному луку.

Поэтому записи 0 и 4 станут: между_счетом name1 name2 слова 14 Jacubo Hakym Johannem Haxixe contra Pro Coram magistro duas taceas de argento Hodie supratitulato pre ...

Есть ли простой способ сделать это, вместо того, чтобы делать это вручную, добавляя значенияween_count и добавляя слова и удаляя ненужные строки?Спасибо

1 Ответ

0 голосов
/ 15 октября 2018

Я полагаю, вам нужно увеличить на sum и join с DataFrameGroupBy.agg:

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...  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...