【发布时间】:2021-05-06 07:06:34
【问题描述】:
我正在尝试解析 2 个向量,并根据公式填充矩阵。我就是这样做的,效率很低。
import numpy as np
list1 = [1, 2, 3, 4]
list2 = [20, 30, 40, 50, 60, 70, 80, 90]
array1 = np.array(list1)
array2 = np.array(list2)
columns = len(list1)
rows = len(list2)
matrix = np.zeros((rows, columns))
for column in range(0, columns):
for row in range(2*column, rows):
matrix[row, column] = round(10 * (array2[row] - array1[column]), 0)
print(matrix)
输出应该是
[[190. 0. 0. 0.]
[290. 0. 0. 0.]
[390. 380. 0. 0.]
[490. 480. 0. 0.]
[590. 580. 570. 0.]
[690. 680. 670. 0.]
[790. 780. 770. 760.]
[890. 880. 870. 860.]]
这是一个例子,真正的数组很大。 如何使用 numpy 内置代码以最有效和优化的方式执行此操作?
谢谢
【问题讨论】:
标签: python arrays numpy matrix