将文本文件读入pandas数据帧失败

时间:2015-05-12 16:33:52

标签: python pandas

我有这个人。输入文件:

  1988   1   1  7.88-15.57-25.00  0.00  0.81  4.02
  1988   1   2  6.50-10.37-24.87  0.00  0.49  4.30
  1988   1   3  6.48 -8.79-21.28  0.00  0.62  3.91

我读了如下:

df = pandas.read_csv(inp_file, header=None, sep=' ')

但是,由于某些列之间没有空格,因此无法正确读取它们。有没有办法指定单个列宽?

1 个答案:

答案 0 :(得分:1)

好的,read_fwf有效我觉得你的第3行格格不入,但它看起来像pukka:

In [9]:

t="""1988   1   1  7.88-15.57-25.00  0.00  0.81  4.02
1988   1   2  6.50-10.37-24.87  0.00  0.49  4.30
1988   1   3  6.48 -8.79-21.28  0.00  0.62  3.91"""
pd.read_fwf(io.StringIO(t),header=None)
Out[9]:
      0  1  2                 3  4     5     6
0  1988  1  1  7.88-15.57-25.00  0  0.81  4.02
1  1988  1  2  6.50-10.37-24.87  0  0.49  4.30
2  1988  1  3  6.48 -8.79-21.28  0  0.62  3.91