2
假设我有2个numpy 2D数组,mins和maxs,它们将始终是相同的维度。我想创建第三个数组,结果,这是将linspace应用于最大值和最小值的结果。有没有一些“numpy”/矢量化的方式来做到这一点?非矢量化代码示例如下,以显示我想要的结果。跨多维数组的向量化NumPy空间
import numpy as np
mins = np.random.rand(2,2)
maxs = np.random.rand(2,2)
# Number of elements in the linspace
x = 3
m, n = mins.shape
results = np.zeros((m, n, x))
for i in range(m):
for j in range(n):
min = mins[i][j]
max = maxs[i][j]
results[i][j] = np.linspace(min, max, num=x)
如何从'np.linspace缩放结果( 0,1,NUM = X)'? – hpaulj
如何在这种情况下获得最小值和最大值? – holtc
'mins [...,None] +(maxs-mins)[...,None] * np.linspace(0,1,num = x)'。这使用广播通过'mins'和'maxs'来缩放'linspace'。 – hpaulj