我正在尝试将多行数据合并为单行。
df.groupby('issue')['name'].apply(' '.join).reset_index()
但是我遇到一个错误:TypeError: unhashable type: 'Issue'
下面是我的数据的样子:
issue, name
101,prod_a
101,prod_b
102,prod_b
103,prod_a
103,prod_c
预期输出:
issue, new_val
101, prod_a,prod_b
102, prod_b
103, prod_a, prod_c
答案 0 :(得分:0)
result_df = df.groupby('issue').agg({'name': list}).apply(lambda r: ','.join(r['name']), axis=1).reset_index()
result_df.columns = ['issue', 'new_val']
result_df
issue new_val
0 101 prod_a,prod_b
1 102 prod_b
2 103 prod_a,prod_c