使用NumPy的loadtxt()函数从文件中读取单列数据

15

我想从多个文件中读取数据,以便用于绘图(matplotlib)。

我找到了一个可以用于此目的的函数loadtxt()。但是,我只想从每个文件中读取一列。

如何做到这一点? 如果我至少读入两列,例如下面的命令对我有效:

numpy.loadtxt('myfile.dat', usecols=(2,3))

但是

numpy.loadtxt('myfile.dat', usecols=(3))

会抛出一个错误。


对于更高级的文本加载(例如处理缺失值),您还可以使用NumPy的[genfromtxt](http://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html)函数。 - Sicco
1个回答

22
在3后面需要加上逗号,这样才能告诉Python (3,) 是一个元组。Python会把(3)解释为整数3,而loadtxt需要一个序列类型的参数来处理usecols
numpy.loadtxt('myfile.dat', usecols=(3,))

啊,没想到。这是我第一次使用NumPy,谢谢! - user2015601
9
如果你不想使用逗号,可以使用usecols=[3] - askewchan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接