我在 Excel 中有一個相關矩陣(比如矩陣 A),大約有 4,200 行和相同的列數,這對于日常 Excel 用戶來說相當大。
我還有另一個具有相同行數和 1 列數的矩陣 (B)。對于矩陣 A 的每一行i
,我想將其元素乘以Aij
元素Bi1
和Bj1
,并在乘法之后得到 A 的每一行中元素的總和。
行的總和是相關的,矩陣不是。這可以通過公式輕松實作,但是由于資料量如此之大,檔案變得太大而無法操作。
在 Excel 中有沒有更好的方法來解決這個問題?
uj5u.com熱心網友回復:
我不排除使用公式。我在 16G 記憶體上有一個 Ryzen 7 2700x,帶有 Excel O365。我在 4200 x 4200 浮點樣本上運行了一些方法,得到了令人驚訝的運行時間。我嘗試了幾種不同的方法。最快的是這個。我認為這會給你你想要的結果(需要 O365):
=LET(
matrix,MMULT(SmallTable,TRANSPOSE(SmallTable))*BigTable,
BYROW(matrix,LAMBDA(r,SUM(r)))
)
我命名了 4,200 x 1 陣列SmallTable
和 4,200 x 4,200 陣列BigTable
。
我得到 < 3 秒的完成時間。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/524860.html
標籤:擅长矩阵矩阵乘法