【发布时间】:2020-01-24 00:08:34
【问题描述】:
我想在一个文件中保存几个不同形状的 numpy 数组(使用 python 2.7)。
a_1.shape = [4,130]
a_2.shape = [4,39]
a_3.shape = [4,60]
我可以创建一个包含所有数组的列表,如下所示:
list=[a_1, a_2, a_3]
但是当我尝试保存它或用它制作一个 np.array 时......
all=np.array(list)
np.savetxt('./a_list',list)
...它返回错误:
could not broadcast input array from shape (4,39) into shape (4)
有没有其他方法可以保持单个数组的形状?
谢谢!
【问题讨论】:
-
savetxt旨在以整洁的 csv 表格格式保存 one 二维数组。你期待什么?引发错误的是np.array(list)步骤。您可以加入数组以制作一个 (4, 130+39+69) 数组。或者通过savez单独保存它们(制作一个 zip 存档)。 -
我想要的是一个类似于
savetxt的函数,但允许保存这个多维numpy 数组(实际上更类似于np.save)。它不必生成 csv 格式。加入数组将导致 (4,229),因此不会保存分离。我会检查 savez - 谢谢!
标签: arrays python-2.7 numpy save