【发布时间】:2018-03-20 22:17:35
【问题描述】:
我想创建一个矩阵 C,其中每个元素都等于其相应行和列索引的最小值。例如:第一行第二列对应的元素取值为1,第八行第三列对应的元素取值为3等。
我编写了以下代码,可以返回我想要的内容。运行以下代码:
from numpy import empty
C = empty(shape=(32,32))
for j in range(1,33):
for i in range(1,33):
minimum = min(i,j)
C[i-1][j-1] = minimum
print(C)
结果
[[ 1. 1. 1. ..., 1. 1. 1.]
[ 1. 2. 2. ..., 2. 2. 2.]
[ 1. 2. 3. ..., 3. 3. 3.]
...,
[ 1. 2. 3. ..., 30. 30. 30.]
[ 1. 2. 3. ..., 30. 31. 31.]
[ 1. 2. 3. ..., 30. 31. 32.]]
问题:这是最有效的方法吗?如果不;如何改进这种方法?
【问题讨论】: