我有这个人。输入文件:
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=' ')
但是,由于某些列之间没有空格,因此无法正确读取它们。有没有办法指定单个列宽?
答案 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