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

如何对pandas DataFrame列中逗号分隔的值按字母顺序排序

解决方法

直接使用pandas的字符串处理方法结合排序函数即可实现需求,核心代码如下:

# 假设你的DataFrame变量名为df
df['things'] = df['things'].str.split(',').apply(lambda x: ','.join(sorted(x)))

代码逻辑说明

  • 用str.split(',')将things列的每个字符串按逗号拆分为列表
  • 用sorted()对拆分得到的列表按字母升序排序
  • 用','.join()将排序后的列表重新拼接为逗号分隔的字符串

完整测试示例

你可以运行以下代码验证效果:

import pandas as pd

# 构造和你示例一致的DataFrame
df = pd.DataFrame({
    'ID': [1, 2, 3],
    'things': ['pen,car,robot', 'lamp,jug,phone', 'switch,pen,book']
})

# 执行处理
df['things'] = df['things'].str.split(',').apply(lambda x: ','.join(sorted(x)))

# 输出结果
print(df)

空值兼容处理

如果你的数据中things列存在空值NaN,可以修改代码避免报错:

df['things'] = df['things'].apply(lambda x: ','.join(sorted(x.split(','))) if pd.notna(x) else x)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 10:36:03