首页 > 解决方案 > 如何根据另一个列名聚合熊猫中的文本

问题描述

我想聚合所有相同名称的文本列。例如

我有:

df = pd.DataFrame([['Tom', 'good', 3],
                   ['Jack', 'bad', 6],
                   ['Tom', 'average', 9],
                   ],
                  columns=['name', 'text', 'day'])

我想:

df = pd.DataFrame([['Tom', 'good average'],
                   ['Jack', 'bad',],
                   ],
                  columns=['name', 'text'])

标签: pythonpandas

解决方案


df.groupby(by='name').agg(text=("text", lambda x: ",".join(set(x))))

推荐阅读