如何去除Python DataFrame列中逗号后的空格
移除DataFrame字符串中逗号后的空格
原始数据
ID Col 1 new york, london school of economics, america 2 california & washington, harvard university, america
期望输出
ID Col 1 new york,london school of economics,america 2 california & washington,harvard university,america
尝试的代码
df1[Col].apply(lambda x : x.str.replace(", ","", regex=True))
正确实现方式
你的代码存在几个问题:
df1[Col]中的Col未加引号,会被当作变量处理,应该写成df1['Col']- 无需嵌套
apply和str.replace,Series本身支持直接调用str方法 - 原代码只能替换逗号后单个空格,无法处理第二行中逗号后多个空格的情况
修正后的代码:
# 匹配逗号后任意数量的空格,替换为单个逗号 df1['Col'] = df1['Col'].str.replace(r',\s+', ',', regex=True)
如果只需要处理逗号后单个空格的场景,也可以关闭正则(效率稍高):
df1['Col'] = df1['Col'].str.replace(', ', ',', regex=False)
执行后即可得到期望的输出结果。
内容的提问来源于stack exchange,提问作者AB14
相关产品推荐
相关产品推荐

