如何在python中的其他列上汇总数据帧列?

송준석*_*송준석 0 python dataframe pandas

我有以下数据框架.

ID    Product  quantity
9626     a       1
9626     b       1
9626     c       1
6600     f       1
6600     a       1
6600     d       1
Run Code Online (Sandbox Code Playgroud)

我希望通过ID加入行.以下是结果的示例.(数量列是可选的.此列不是必需的.)

ID    Product  quantity
9626     a,b,c     3
6600     a,d,f     3
Run Code Online (Sandbox Code Playgroud)

我使用了合并和求和,但它没有用.

这个问题只用循环语句解决了吗?

如果您能为我提供解决方案,我将不胜感激.

San*_*apa 5

用途groupby.agg:

df = (df.sort_values('Product')
        .groupby('ID', as_index=False, sort=False)
        .agg({'Product':','.join, 'quantity':'sum'}))

print(df)
     ID Product  quantity
0  9626   a,b,c         3
1  6600   a,d,f         3
Run Code Online (Sandbox Code Playgroud)