首页 > 解决方案 > 创建一个类似形状的数组的numpy数组(来自列表)

问题描述

我需要将 numpy 数组列表转换为数组数组,以便使用 numpy.save 保存它(在列表上调用 save direclty 无论如何都会调用 numpy.array )。当列表中数组的形状不同时,一切正常。例如:

data = np.array([np.zeros((18, 10)), np.zeros((19, 11))])

工作,并且data有 shape (2,),这是我所期望的。但是,当数组的形状相同时,例如

data = np.array([np.zeros((18, 10)), np.zeros((18, 10))])

数据得到形状(2, 18, 10)。如何防止这种行为?

更糟糕的是,如果我在轴 0 上只有相同的形状:

data = np.array([np.zeros((18, 10)), np.zeros((18, 11))])

我收到一个错误:

ValueError: could not broadcast input array from shape (18,10) into shape (18)

任何想法?谢谢您的帮助!

标签: pythonarrayslistnumpyshapes

解决方案


推荐阅读