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

如何将DataFrame字符串列中的字符拆分为多个列?

没问题,这事儿用pandas分分钟搞定!你需要把每行的字符串按单个字符拆分,分别映射到新的列中。这里给你两种可行的方法,都是针对固定长度字符串(你的例子里都是4个字符)的场景:

方法1:直接按字符索引提取(直观易懂)

这种方式适合明确知道字符串长度的情况,直接通过str[index]提取每个位置的字符:

import pandas as pd

# 创建你提供的原始DataFrame
df = pd.DataFrame({'col1': ['AGCT', 'AGCT']})

# 提取每个位置的字符,生成新列
df = pd.DataFrame({
    'col1': df['col1'].str[0],
    'col2': df['col1'].str[1],
    'col3': df['col1'].str[2],
    'col4': df['col1'].str[3]
})

print(df)

运行后输出就是你想要的结构:

col1 col2 col3 col4
0    A    G    C    T
1    A    G    C    T

方法2:用split拆分后整理(更通用)

如果你的字符串长度固定但不想逐个写索引,可以用str.split拆分,再过滤掉多余的空列并重命名:

import pandas as pd

df = pd.DataFrame({'col1': ['AGCT', 'AGCT']})

# 拆分字符串(空字符拆分会产生首尾空列,所以用iloc取中间有效列)
split_df = df['col1'].str.split('', expand=True).iloc[:, 1:-1]

# 重命名列名
split_df.columns = ['col1', 'col2', 'col3', 'col4']

print(split_df)

两种方法都能得到你需要的结果,选哪种看你习惯就行~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:48:41