带分隔符的熊猫groupby加入
问题描述:
我试着用groupby来分组具有多个值的行。带分隔符的熊猫groupby加入
col val
A Cat
A Tiger
B Ball
B Bat
import pandas as pd
df = pd.read_csv("Inputfile.txt", sep='\t')
group = df.groupby(['col'])['val'].sum()
我
A CatTiger
B BallBat
我想介绍一个分隔符,让我的输出看起来像
A Cat-Tiger
B Ball-Bat
我试过,
group = df.groupby(['col'])['val'].sum().apply(lambda x: '-'.join(x))
此产生,
A C-a-t-T-i-g-e-r
B B-a-l-l-B-a-t
这里有什么问题?
感谢,
AP
答
或者你可以这样来做:
In [48]: df.groupby('col')['val'].agg('-'.join)
Out[48]:
col
A Cat-Tiger
B Ball-Bat
Name: val, dtype: object
答
只是尝试
group = df.groupby(['col'])['val'].apply(lambda x: '-'.join(x))