【发布时间】:2018-01-06 20:09:37
【问题描述】:
我正在尝试从具有不同列数的文本文件中导入数据。我知道第一列将始终是 int 并且后续 cols 将在所有文件中浮动。如何使用 dtypes 明确指定这一点?
dtypes=[int,float,float,float...] #this number will change depending on the number of columns in the file
data=np.genfromtxt(file,dtype=dtypes,delimiter='\t',skip_header=11) #read in
the data
谢谢
【问题讨论】:
-
你能把你输入文件的前几行和你收到的错误信息贴出来吗?
-
dtype=None适合你吗?或者将 dtype 保留为默认浮点数并获取二维数组而不是结构化数组。 -
我想要一个二维数组,因为稍后我想对数据进行切片并更改某些列。我可以将其保留为浮点数,但我正在编写新文件并希望通过尽可能将数字减少到 int 来尽可能减小文件大小。
-
第一行如下所示:1 0.00000 -26.28813 -48.48795 -542.29841 .... 如果我手动输入所有列数据类型,我不会收到错误,但在某些情况下,我有更多或更少的浮点类型列。
标签: python numpy import genfromtxt