4

a我有一个名为shape的 numpy int32 数组(4, 8, 3)。我想将此数组重塑为 size 的数组(4, 12, 3)。我怎么做?

我尝试过使用reshape,但reshape要求数组大小相同。

4

1 回答 1

2

我可能错了,但是:一个 numpy 数组不应该以这种方式发生突变。当您进行重塑时,您实际上在做的只是更改读取字节/元素的顺序/方式

您要做的是创建一个更大的新数组,其中包含前一个数组的数据以及其他内容。你必须告诉 Numpy 你想要新东西在哪里以及你想要旧东西在哪里。

IE:

new_array = np.zeros((4, 12, 3))
new_array[:, :8, :] = old_array

此示例在第二维末尾的数组上添加 4 个附加“列”。

于 2012-11-24T02:52:08.900 回答