好的,我是Python新手,我有一个我想读的.dat文件,我需要错过标题,它的类型是:
header blah blah blah blah blah 10e20 2e46 blah blah blah
10.0 0.0
10.1 0.0
10.2 0.0
10.3 0.0
10.4 0.0
10.5 0.0
左侧的数字由标签空间分隔
我的代码就是
import matplotlib.pyplot as pyplot
import math
import csv
import numpy
import numpy as np
data = np.genfromtxt("file.dat", skip_header=1, delimiter=',')
print data
这是作业的第一部分,我甚至无法读取文件并打印数据?代码适用于其他文件,但不是这一个,我得到的输出是
[nan nan nan ...,nan nan nan]
任何帮助将不胜感激
答案 0 :(得分:5)
正确指定分隔符。在给定的文件中没有逗号。
>>> import numpy as np
>>> np.genfromtxt("file.dat", skip_header=1, delimiter='\t')
array([[ 10. , 0. ],
[ 10.1, 0. ],
[ 10.2, 0. ],
[ 10.3, 0. ],
[ 10.4, 0. ],
[ 10.5, 0. ]])
答案 1 :(得分:0)
我没看到数据中的逗号分隔符在哪里?它更多的是标签或空格。
10.0 0.0
10.1 0.0
10.2 0.0
10.3 0.0
10.4 0.0
10.5 0.0
只需更改分隔符参数即可匹配数据分隔符。
data = np.genfromtxt("file.dat", skip_header=1, delimiter='\t')
尝试使用空格:
data = np.genfromtxt("file.dat", skip_header=1, delimiter=' ')
所以我现在用标签测试它,它没有用。我用空格试了一下,效果很好。