【发布时间】:2022-01-23 04:36:20
【问题描述】:
我有一个 2D numpy 数组
import numpy as np
np.array([[1, 2], [3, 4]])
[[1 2]
[3 4]]
我想把上面的数组放大成如下:
np.array([[1, 1, 2, 2], [1, 1, 2, 2], [3, 3, 4, 4], [3, 3, 4, 4]])
[[1 1 2 2]
[1 1 2 2]
[3 3 4 4]
[3 3 4 4]]
原始数组中的每个元素,因为新数组中的一个 2x2 数组。
我要从第一个数组转到第二个“放大”数组吗?
编辑
这与此处How to "scale" a numpy array? 的缩放问题不同,因为np.kron(a, np.ones((2,2))) 与a.repeat(2, axis=1).repeat(2, axis=0) 不同
Edit #2 仍在等待移除 [duplicate] 标志
由@Michael Szczesny 发布。 numpy API 发生了细微的变化。这个问题是相关的,因为正在提供更新的答案。
【问题讨论】:
-
我刚刚发布的解决方案也在链接的问题中。
-
是的。不知道什么时候变了您可以使用
np.ones((2,2), 'bool')。