我想去:
ind col1 col2 col3 1 12 333 string1 ... 2 23 444 string2 ... 3 34 555 string1 ... 4 13 667 string2 ... 5 17 888 string3 ... ... ... ... ... ...
收件人:
ind col1 col2 col3 1 12,34 333,555 string1 ... 2 13,23 444,667 string2 ... 3 17 888 string3 ... ... ... ... ... ...
如果我这样做:
df.groupby('col3').agg(','.join)这将通过使用col3作为索引来修改表的结构。我不希望修改表结构,并得到与上述表相同的结果(包括col3)
col1 col2 col3 string1 12,34 333,555 string2 23,13 444,667 string3 17 888
答案 0 :(得分:0)
尝试传入arg as_index=False
,这会将'col3'保留在聚合的DataFrame
中。然后使用df.column
进行索引以固定列顺序:
df.astype(str).groupby('col3', as_index=False).agg(','.join)[df.columns]
[出]
col1 col2 col3
0 12,34 333,555 string1
1 23,13 444,667 string2
2 17 888 string3