通过理解创建 NumPy 矩阵

Creating NumPy Matrix by comprehension

假设我有两个向量,xm 个条目,yn 个条目。我想要一个 numpy m x n 矩阵 A,为此,

A[i][j]== x[i]**y[j]

我知道如何创建一个二维数组来解决这样的问题,但是有没有办法使用 numpy 有效地做到这一点? 谢谢

如果你正在寻找外在的力量,你可以这样做:

A=np.power.outer(x,y)

(假设将 numpy 导入为 np)

您可以使用 numpy.outer 来做到这一点

import numpy as np

x = np.arange(4) # size m
y = np.arange(5) # size n

outer_product = np.outer(x,y) # size m x n
print(outer_product)

输出:

[[ 0  0  0  0  0]
[ 0  1  2  3  4]
[ 0  2  4  6  8]
[ 0  3  6  9 12]]