将列值连接到Pandas中的行值

时间:2016-09-01 17:01:01

标签: python pandas dataframe

我有一个类似下面的数据框 - 两列都是字符串,ValCol是一串逗号分隔的整数。索引是一个没有意义的通用整数索引。

for i in file1 file2 file3
do
cat $i >> combined_file
done

将其汇总到

的最佳方法是什么
NameCol    ValCol
Name1      555, 333
Name2      433
Name1      999
Name3      123
Name2      533

不要关心逗号分隔整数的顺序,但我确实需要在它们之间保留逗号。它可能是一个非常小的数据帧,<100条记录,因此效率并不重要。

我觉得应该采用一些群体方法,但我还没想到它。

1 个答案:

答案 0 :(得分:4)

使用groupby方法:

df = df.groupby('NameCol')['ValCol'].apply(', '.join).reset_index()

结果输出:

  NameCol         ValCol
0   Name1  555, 333, 999
1   Name2       433, 533
2   Name3            123