我有一組矩陣如下
import numpy as np
Number = 10
mylist = [np.random.randint(1, 5, size=(4, 4)) for i in range(Number)]
現在我想mylist 一次對所有矩陣進行矩陣乘法。這里的值Number可能會改變
是否有任何方法/功能可用于執行此操作?
uj5u.com熱心網友回復:
您可以使用 functools 包的 reduce 功能輕松做到這一點:
import functools
result = functools.reduce(lambda a, b: a @ b, mylist)
uj5u.com熱心網友回復:
此功能是np.linalg包中的原生功能:
np.linalg.multi_dot(mylist)
uj5u.com熱心網友回復:
考慮使用functools.reduce
import numpy as np
from functools import reduce
Number = 10
mylist = [np.random.randint(1, 5, size=(4, 4)) for i in range(Number)]
list_product = reduce(np.dot, mylist)
這list_product將是一個 4x4 矩陣,其中包含矩陣的乘積mylist。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/488952.html
標籤:python-3.x 麻木的 矩阵乘法
