2014-12-07 139 views
1

我有一个包含在.txt文件中的10000x500矩阵格式的数据。在每一行中,数据点由一个空格相互分隔开,并且在每行的末尾有一条新行开始。将多维数组数据读入Python

通常情况下,我能够通过使用下面的代码片段阅读这种多维数组数据成Python的:

with open("position.txt") as f: 
    data = [line.split() for line in f] 

# Get the data and convert to floats 
ytemp = np.array(data) 
y = ytemp.astype(np.float) 

此代码工作至今。当我尝试用另一套同样的方式格式化的数据都使用完全相同的一些代码,我得到以下错误:

setting an array element with a sequence.

当我试图让ytemp的“形状”,它给了我下面的:

(10001,)

因此,它将行转换为数组,而不是列。

我想到任何其他信息,但没有出现在我脑海里。基本上我试图将我的数据从.txt文件转换为Python中的多维数组。代码之前工作过,但现在由于某些原因,我不清楚这是行不通的。我试图比较一下数据,当然这很大,但是在工作的数据和不工作的数据之间似乎都很相似。

我很乐意提供您可能需要的任何其他信息。提前致谢。

回答

1

使用numpy的的内置函数:

data = numpy.loadtxt('position.txt') 

退房的documentation探索其他可用的选项。

+0

非常感谢,我不会猜到解决方案会是这么简单:)。我是Python的新手,并且总是有太多的语法可供我选择。 – melampyge 2014-12-07 18:38:32