python pandas - 获取唯一计数、描述文本示例(类似于mysql group_concat)

ihi*_*wer 0 python pandas

说我有这样的样本数据

在此处输入图片说明

我想为大型数据集生成带有 desc1 和 desc2 示例文本的摘要数据框..(大约 20,000 行)

我将有更多的列,如 desc3、desc4 等……我可能希望在结果中包含额外的 desc_n 样本。

在此处输入图片说明

目的是了解唯一名称是什么(分组依据)..然后查看连接的其他字段的示例文本和唯一 desc1 的计数

Psi*_*dom 5

你可以这样做:

# customized aggregation function
join_unique = lambda x: ','.join(set(x))

# aggregate columns desc1 and desc2 respectively
df1 = df.groupby('name').agg({'desc1': [join_unique, 'nunique'], 'desc2': join_unique})

# rename columns
df1.columns = ['_'.join(x) if x[1] == 'nunique' else x[0] + "_samp" for x in df1.columns]

df1   # call reset_index() if necessary
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明