如何使用组合分隔符"|"分割Pandas DataFrame单列数据
解决方法
你之前拆分失败的核心原因是原始字符串首尾带有多余双引号,直接拆分后会残留冗余符号,按以下步骤处理即可:
- 第一步:清洗并拆分原始单列
先移除每行首尾的双引号,再以"|"作为分隔符拆分,生成多列DataFrame:
# 假设原始单列的列名为 0 new_df = df[0].str.strip('"').str.split('"|"', expand=True)
- 第二步:设置表头并清洗无效行
把拆分后的第一行设为列名,删除原有表头行后重置索引:
new_df.columns = new_df.iloc[0] new_df = new_df[1:].reset_index(drop=True)
- 第三步:拆分COLUMN_B的连续大写字符串
用正则匹配大写字母开头的单词边界,插入空格即可实现你要的拆分效果:
import re new_df['COLUMN_B'] = new_df['COLUMN_B'].apply(lambda s: re.sub(r'(?<=[A-Za-z])(?=[A-Z])', ' ', s))
运行完以上代码就能得到你需要的输出结果。
内容的提问来源于stack exchange,提问作者DDM
相关产品推荐
相关产品推荐

