使用pd.read_fwf读取固定宽度文件时的ValueError - 与所看到的数字不匹配的预期字段数

时间:2017-03-20 20:56:19

标签: python pandas

我当前的代码包含以下内容:

columns=[(0,4), (4,8), (8,9), (9,10), (20,22), (23,24)]

header=['var1','var2','var3','var4','var5','var6']

file=pd.read_fwf('file_name.gz', compression='gzip', colspec=columns, names=header)

当我跑步时,我得到以下内容: ValueError:第1行中预期的8个字段,见3

输入文件中包含的数据如下所示:

02011602160108 26 312870000

似乎是在阅读空格而不是注意列规格

1 个答案:

答案 0 :(得分:1)

正如@StephenRauch在他的评论中所述(当我慢慢编译这个答案时)

from io import StringIO
import pandas as pd

txt = """02011602160108 26 312870000"""

columns=[(0,4), (4,8), (8,9), (9,10), (20,22), (23,24)]
header=['var1','var2','var3','var4','var5','var6']

pd.read_fwf(StringIO(txt), colspecs=columns, names=header)

   var1  var2  var3  var4  var5  var6
0   201  1602     1     6    28     0