如何使用Pandas对DataFrame列中逗号分隔的字符串值进行排序
实现代码
你可以直接用Pandas的字符串处理方法结合sorted内置函数实现,代码非常简洁:
import pandas as pd # 构造原始DataFrame df = pd.DataFrame({ 'C1': [0, 1, 2], 'C2': ['b,g,f', 'a,f,c', 'f,e,a,c'] }) # 核心处理逻辑 df['C2'] = df['C2'].str.split(',').apply(lambda x: ','.join(sorted(x))) # 输出验证 print(df)
逻辑说明
- 先用
str.split(',')把每个单元格的逗号分隔字符串拆分为单个字符组成的列表 - 用
apply遍历每个列表,先通过sorted()对列表内的字符按字典序排序,再用','.join()把排序后的列表重新拼接为逗号分隔的字符串
运行后输出的结果完全符合预期:
C1 C2 0 0 b,f,g 1 1 a,c,f 2 2 a,c,e,f
内容的提问来源于stack exchange,提问作者Luis Alejandro Vargas Ramos
相关产品推荐
相关产品推荐

