【问题标题】:How to construct a simple matrix and change values according to equation (numpy)?如何构造一个简单的矩阵并根据方程(numpy)改变值?
【发布时间】:2021-01-13 12:37:37
【问题描述】:
我的问题很简单。我必须制作一个 5*5 矩阵,每个 i,j 值应遵循 i+j 的公式
到目前为止,我有这个:
'''
w = np.zeros(shape=(5,5))
print(w)
for i in range(5):
for j in range(5):
w[i][j] == i**2+j
print(w)
但它现在只是返回一个 0 矩阵怎么办?
【问题讨论】:
标签:
python
python-3.x
numpy
matrix
numpy-ndarray
【解决方案1】:
只是改变
w[i][j] == i**2+j
to(如果你想保留公式)
w[i,j] = i**2+j
或使用您问题中的公式
w[i,j] = i+j
如果你想摆脱循环,你可以使用 numpy
w = np.arange(5)
w = np.add.outer(w ** 2, w)
print(w)
输出:
[[ 0 1 2 3 4]
[ 1 2 3 4 5]
[ 4 5 6 7 8]
[ 9 10 11 12 13]
[16 17 18 19 20]]