我正在尝试读取第1列是日期字符串的文件,第2-4列是常规浮点数。如果我做
data = np.genfromtxt("infile.csv", delimiter=','),
我在文件中得到一个4x行的数组,其中第1列中的所有值都是(非常正确)NaN。所以为了把我的日期作为字符串我试过
data = np.genfromtxt("infile.csv", delimiter=',', dtype=("|S20",float,float,float))
结果是一维数组,每行的所有四列现在都是数组的一个元素。
有人可以解释我做错了吗?
答案 0 :(得分:1)
有更好的方法可以做到这一点,但是因为我们不知道你打算如何处理日期字符串快速(写入,而不是根据数据量运行)和脏的方式将是使用一些循环:
data_tup = tuple(np.empty(len(data), dtype=data.dtype[i]) for i in range(len(data[0])))
for i, line in enumerate(data):
for j, item in enumerate(line):
data_tup[j][i] = item
这将为您提供包含每列数据的ndarrays元组。