You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何快速提取pandas列字符串内的所有唯一值并拼接为单个字符串

解决方案

直接用pandas内置的矢量化方法即可实现,无需自己遍历列,也不需要额外安装第三方库,性能远高于Python层的循环实现。

核心实现代码

import pandas as pd
import html

# 处理逻辑
res = ','.join(
    DF['COLUMN']
    # 可选步骤:转义HTML特殊字符,将`&`还原为`&`
    .apply(html.unescape)
    # 按逗号加任意数量空白字符拆分每个字符串为列表
    .str.split(r',\s*', expand=False)
    # 将列表中的每个元素展开为单独的行
    .explode()
    # 取所有唯一值
    .unique()
)

步骤说明

  • str.split(r',\s*'):适配原数据中逗号后多余的空格,自动分割每个字符串
  • explode():pandas 0.25及以上版本支持的方法,将可迭代的列元素展开为多行,避免手动循环
  • unique():直接获取所有唯一值,比手动去重效率更高

如果你使用的pandas版本低于0.25不支持explode方法,可以将拆分+展开的步骤替换为:

.str.split(r',\s*', expand=True).stack()

最终效果完全一致。

运行上述代码后res就是你要的所有唯一值逗号分隔的字符串结果。

内容的提问来源于stack exchange,提问作者oli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 00:45:03