python读取文件空格分割_如何从带有空格分隔符的.txt文件中读取数据?

我将示例作为多行文本复制粘贴到我的ipython会话中,并运行以下genfromtxt:In [281]: np.genfromtxt(txt.splitlines(),dtype=None,names=True,usecols=range(13))

Out[281]:

array([(1, 15.2, 12.3, 9.96, 10.1, 15.0, 33.7, 137, 309, 182, 62.6, 27.4, 17.2),

(2, 14.9, 12.3, 9.96, 9.96, 16.4, 38.2, 109, 342, 197, 69.9, 25.4, 16.6),

(3, 14.9, 12.3, 9.78, 10.3, 17.3, 50.3, 118, 472, 184, 68.7, 24.5, 17.0),

(4, 14.6, 12.3, 9.69, 10.3, 18.7, 58.1, 152, 275, 190, 68.7, 24.5, 16.6),

(5, 14.4, 12.3, 9.51, 10.1, 18.9, 44.5, 165, 188, 206, 69.9, 24.0, 16.5),

(6, 14.1, 12.3, 9.41, 10.3, 19.8, 44.8, 142, 157, 192, 62.2, 23.8, 16.1),

(7, 14.0, 12.3, 9.32, 10.3, 20.4, 52.6, 121, 146, 182, 58.9, 24.9, 15.6)],

dtype=[('Day', '

我必须指定usecols,因为头中有14个名称,但数据行中只有13个字段。在

请注意,它加载了一个1d结构化数组。列是按字段名访问的,例如data['Jan'],而不是数字。data[1]将从第二个数据行获取数据。在

如果我跳过标题行,我可以将其作为一个二维浮点数组加载

^{pr2}$

从scatch开始,我可以将这些行转换为一个列表列表,其中包括:ll = []

for line in txt.splitlines():

ll.append(line.strip().split())

我可以通过以下方式获取浮动列表:for line in txt.splitlines()[1:]: # skip the header

ll.append([float(i) for i in line.strip().split()])

可以转化为二维数组np.array(ll)

如果空白分隔符不起作用,genfromtxt还接受一个字段宽度列表作为“分隔符”。看它的文件或实验。在

你可能感兴趣的:(python读取文件空格分割)