【发布时间】:2017-02-13 19:16:12
【问题描述】:
我有一个ndarray,我正在尝试从 CSV 文件中读取它。
我可以通过numpy 从文件中读取它,但无法获得我想要的结构;而不是二维数组,我有一个元组数组
作为 MCVE:我没有像 DataSet1 这样的二维数组,而是 DataSet2:
dataset=numpy.array([
["abc ",3000.0,1],
["def",3650.0,1],
["xyz",3000.0,2]
])
print("DataSet1\n",dataset)
print("DataSet1-Shape\n",dataset.shape)
dataset2=numpy.array([])
dataset2 = np.genfromtxt('file.csv', delimiter=",",dtype='S32,float,int')
print("DataSet2\n",dataset2)
print("DataSet2-Shape\n",dataset2.shape)
输出是:
DataSet1
[['abc ' '3000.0' '1']
['def' '3650.0' '1']
['xyz' '3000.0' '2']]
DataSet1-Shape
(3, 3)
DataSet2
[(b'"fabc"', 3000.0, 1) (b'"fdef"', 3650.0, 1) (b'"ghi"', 3000.0, 2)]
DataSet2-Shape
(3,)
我希望 DataSet2 成为 DataSet1 的 2D。
CSV 文件内容:
"fabc",3000.0,1
"fdef",3650.0,1
"ghi",3000.0,2
【问题讨论】:
-
能否包含 csv 的内容?
-
目前 csv 是 3 行,但会增长:"fabc",3000.0,1 "fdef",3650.0,1 "ghi",3000.0,2
-
请编辑您的问题以包含此内容(我猜也缺少 \n 个字符)
-
所以你很高兴
Dataset1只是字符串?您可以像这样直接加载 CSV。试试 dtypestr.
标签: arrays python-3.x csv numpy multidimensional-array