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

如何使用Python重构该DataFrame?

数据格式转换解决方案

你需要将初始数据集转换为目标形态,尝试str.split()未达预期。下面针对常见的字符串拆分场景给出可行方案:

场景1:简单分隔符的字符串拆分(如逗号、空格)

假设你的初始数据是类似这样的字符串列表:

raw_data = ["张三,25,北京", "李四,30,上海", "王五,28,广州"]

直接用str.split()会得到嵌套列表,要转成结构化数据可以这么做:

转成字典列表(便于后续处理)

processed_data = []
for item in raw_data:
    # 按逗号拆分,对应姓名、年龄、城市字段
    name, age, city = item.split(',')
    processed_data.append({"姓名": name, "年龄": int(age), "城市": city})
print(processed_data)

用pandas转成表格(适合批量数据)

如果数据量较大,用pandas处理更高效:

import pandas as pd

# 拆分后直接生成DataFrame
df = pd.DataFrame([x.split(',') for x in raw_data], columns=["姓名", "年龄", "城市"])
# 将年龄转为数值类型
df["年龄"] = df["年龄"].astype(int)
print(df)

场景2:复杂/不规则分隔符

如果初始数据的分隔符不统一(比如混合空格、逗号、制表符),用正则表达式拆分更靠谱:

import re

raw_data = ["张三  25 北京", "李四,30 上海", "王五 28,广州"]
processed_data = []
for item in raw_data:
    # 匹配任意数量的空格或逗号作为分隔符
    parts = re.split(r'[\s,]+', item.strip())
    processed_data.append({"姓名": parts[0], "年龄": int(parts[1]), "城市": parts[2]})
print(processed_data)

如果你的实际数据格式和上述示例不同,补充具体的初始数据样例,能帮你调整出更精准的代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 14:55:31