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

将字符串列表读取到pandas DataFrame时出现EmptyDataError错误

解决读取多表格文本文件时的EmptyDataError错误

问题原因

使用split('\n\n')分割文本时,会生成包含空字符串的块——比如文件开头/结尾的空行、连续多个空行,都会被分割成空块。当pd.read_csv处理空字符串时,因没有可解析的列,就会触发EmptyDataError。

解决方案

在处理每个块之前,先过滤掉空的或仅含空白字符的块,有两种实现方式:

方式1:分割时直接过滤

with open(txt_full_paths[0], 'r') as file: 
    # 分割后过滤掉空块(含仅空白字符的块)
    chunks = [chunk for chunk in file.read().split('\n\n') if chunk.strip()]

方式2:循环内判断处理

dfs = []
for chunk in chunks:
    cleaned_chunk = chunk.strip()
    # 仅处理非空的有效块
    if cleaned_chunk:
        df = pd.read_csv(StringIO(cleaned_chunk), sep='\t').transpose()
        dfs.append(df)

验证方法

如果想确认问题根源,可以打印所有块的内容,查看是否存在空块:

print([repr(chunk) for chunk in chunks])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 19:55:13