在Pandas列中将逗号分隔值替换为换行符(不新增行)
在Pandas列中将逗号分隔值替换为换行符(不新增行)
嗨,这需求很好解决!你要的是把col2里的逗号分隔内容换成换行符,同时保持原有行结构不变对吧?用Pandas的字符串替换方法就能轻松搞定,我给你一步步说明:
首先,先模拟你的DataFrame结构:
import pandas as pd df = pd.DataFrame({ 'col1': [1, 2, 3], 'col2': ['abc,pqr', 'ghv', 'mrr, jig'] })
接下来核心操作就是用str.replace()替换逗号(包括逗号后可能的空格)为换行符:
# 匹配逗号+任意数量的空格,替换成换行符 df['col2'] = df['col2'].str.replace(r',\s*', '\n', regex=True)
这样处理之后,col2里的内容就变成了换行分隔的形式。如果你的数据里逗号后面没有空格,直接用df['col2'].str.replace(',', '\n')就足够了。
处理后的DataFrame在支持换行渲染的环境(比如Jupyter Notebook)里会显示成你想要的样子:
col1 col2 0 1 abc pqr 1 2 ghv 2 3 mrr jig
小提示:你示例里的单引号是显示格式,Pandas存储字符串时不会包含这些单引号,所以替换操作不需要处理它们~
备注:内容来源于stack exchange,提问作者Kallol
相关产品推荐
相关产品推荐

