使用读取固定宽度文件时出错pd.read\U固件所需字段的数目与所看到的数目不匹配

2024-04-18 23:49:53 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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个字段,saw 3

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

02011602160108 26 312870000

它似乎在读取空白区域,而不是注意列规格


Tags: columns代码namereadfileheaderpdgz
1条回答
网友
1楼 · 发布于 2024-04-18 23:49:53

正如@stephernauch在他的评论中所说的(当我缓慢地编写这个答案时)

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

相关问题 更多 >