【问题标题】:read_table error while reading .idx file读取 .idx 文件时出现 read_table 错误
【发布时间】:2015-07-16 20:57:49
【问题描述】:

我正在尝试读取大小约为 1.89Gb 的 .idx 文件。如果我写:

indexfile=pd.read_table("C:\Edgar Zip 文件\2001\company.idx")

我得到的输出为:

  • 公司名称 表格类型 CIK 日期 归档文件名
  • 0 033 资产管理有限责任公司 / ...
  • 1 033 资产管理有限责任公司 / ...
  • 2 1 800 联系公司 ...
  • 3 1 800 联系公司 ...
  • 4 1 800 FLOWERS COM INC ...

所有列都合并在一个列中


如果我这样做:

indexfile=pd.read_table("C:\Edgar Zip files\2001\company.idx",sep="")

我得到错误:

CParserError:标记数据时出错。 C 错误:预计第 4 行中有 69 个字段,看到 72


我可以使用:

indexfile=pd.read_table("C:\Edgar Zip files\2001\company.idx",error_bad_lines=False)

但这只会删除我的大部分数据。

有什么解决办法吗?

PS:链接到示例 .idf 文件 SEC EDGAR。下载 company.idx 文件。

【问题讨论】:

    标签: python csv pandas


    【解决方案1】:

    您的列条目中也有空格。所以使用 2 个空格作为分隔符。

    indexfile=pd.read_table("C:\Edgar Zip files\2001\company.idx",sep="  ")
    

    【讨论】:

    • 仍然得到错误:>预计第 2 行中的 32 个字段,看到 38
    • 第 2 行中的 --------------------- 可能会导致问题。尝试添加 error_bad_lines=False 或从 company.idx 中删除第二行并尝试。
    • 我实际上已经删除了第二行,但我仍然收到错误消息。同样使用 error_bad_lines=False 它会跳过表中的大部分条目
    • 删除第二行后能把错误粘贴到这里吗?
    • 'ValueError: 预计第 2 行有 32 个字段,看到 38'
    猜你喜欢
    • 1970-01-01
    • 2017-03-11
    • 1970-01-01
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 2020-08-14
    • 2015-06-08
    相关资源
    最近更新 更多