numpy的迭代说我有两个矩阵:了两个二维数组
X, Y = np.meshgrid(np.arange(0, 2, 0.1), np.arange(3, 5, 0.1))
和一个函数,是这样的:
def func(x) :
return x[0]**2 + x[1]**2
我怎么能填充基质Z
(大小np.shape( X)),其中,每个条目是通过调用func
上的X
两个相应值和Y
,即形成:
Z[i, j] = func([X[i, j], Y[i, j]])
有没有一种方法不使用双嵌套的for-loop?
代码中有一个错字'x ** [1]'。 – NKN
这不就是'Z = func([X,Y])'吗? –
最好避免使用分数范围(比如'np.arange(0,2,0.1)'),因为浮点不准确会导致不可预测的终点。改用'linspace'。 –