我有一个多维数组,我想塑造成(19381,100,6)。一旦我将数组转换为numpy数组,我得到的形状是(19381,)
Input: d.shape
Output: (19381,)
Input: d[0].shape
Output: (100,6)
Input: d[0][0].shape
Output: (6,)
Input: if any(i.shape != (100,6) for i in d):
print(True)
else:
print(False)
Output: False
我错过了什么?我尝试过使用
d.shape = (19381,100,6)
但我得到一个"无法重塑19381大小的阵列(19381,100,6)
谢谢,
伊恩
答案 0 :(得分:0)
由于我创建numpy数组的方式,问题出现了。我试图做像
这样的事情l1 = [1,2,3,4]
l2 = [5,6,7,8]
l = zip(l1, l2)
np.random.shuffle(l)
l1, l2 = np.array(zip(*l))
我将代码更改为
l1, l2 = zip(*l)
l1 = np.array(l1)
l2 = np.array(l2)
形状输出与预期一致。