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

如何无需遍历行将pandas双字符列拆分为两列?

拆分pandas双字符列为单字符列的方法

以下几种方法都无需逐行遍历,直接对列操作即可:

  • 字符串切片法(最直观高效,适合固定长度字符串)
    利用pandas的str.slice直接提取指定位置的字符:

    import pandas as pd
    
    # 构造初始DataFrame
    df = pd.DataFrame({'Initial': ['PT', 'XT', 'ZT']})
    # 拆分并生成新列
    df[['S1', 'S2']] = df['Initial'].str.slice(0, 1), df['Initial'].str.slice(1, 2)
    
  • 正则提取法(灵活适配不同长度场景,这里针对双字符)
    用正则表达式的捕获组一次性拆分出两个字符:

    df[['S1', 'S2']] = df['Initial'].str.extract(r'(.)(.)', expand=True)
    

    其中(.)代表匹配单个任意字符,两个捕获组对应生成两列。

  • split拆分法(特殊技巧处理无分隔符场景)
    用空字符串拆分后过滤掉首尾空值:

    df[['S1', 'S2']] = df['Initial'].str.split('', expand=True).iloc[:, 1:3]
    

    split('')会把字符串拆分为包含空字符串的列表,通过iloc选取有效位置的字符列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 02:17:03