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

如何使用pandas读取含多组单列数据的文件并生成多列DataFrame

你可以配合简单的正则预处理,只用几行代码就能实现批量读取,不用写复杂的逐行解析逻辑,性能也足够处理大量文件:

实现代码

import pandas as pd
import re

def read_custom_format(file_path):
    # 一次性读取文件全部内容
    with open(file_path, encoding='utf-8') as f:
        raw_content = f.read()
    # 匹配所有括号包裹的数据块,第一个分组是列名,第二个分组是值内容
    data_blocks = re.findall(r'\((\w+)\s+([\s\S]+?)\)', raw_content)
    
    df_dict = {}
    for col_name, val_text in data_blocks:
        # 拆分每行值,过滤空行后转成对应类型(这里示例是整数,可按需修改)
        val_list = [int(v.strip()) for v in val_text.splitlines() if v.strip()]
        df_dict[col_name] = val_list
    
    return pd.DataFrame(df_dict)

调用方法

直接传入文件路径即可,返回的就是你需要的DataFrame格式:

df = read_custom_format("你的文件路径.txt")

如果你的数据值不是整数,只要修改int(v.strip())处的类型转换逻辑即可,比如要保留字符串就去掉int(),要浮点数就换成float()。批量处理同类文件时,只要遍历所有文件路径循环调用这个函数就行,完全可以对接你现有的自动化后处理流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 09:21:01