假设我有一个4x4维度的numpy数组,并希望通过将其减半来将其更改为2x2。因此,理论上可以这样做:
这是否可能在不使用任何循环的情况下工作,并且能够适用于不仅是4x4而是比如500x500的情况?
#input:
x_4= np.array([[1, 2, 4, 5], [3, 4, 6, 8], [5, 3, 1, -1], [2, 3, 5, 0]])
# thinking it would work with something like this:
new = x_4[:2, :2]/4 + x_4[:2, -2:]/4 + x_4[-2:, :2]/4 + x_4[-2:, -2:]/4
new
# output: array([[11, 9],[16, 15]])
#Expected output: array([[2.5, 5.75], [3.25, 1.25]])