注意:我不是指在here中的矩陣乘法 - 即使在另一篇文章討論過的轉置的扭曲。Column Wise [R]矩陣乘法
我有這兩個矩陣...
矩陣A
:
A <- matrix(c(1,1,1,-1,1,1,1,-1,1,-1,-1,1), ncol=4)
[,1] [,2] [,3] [,4]
[1,] 1 -1 1 -1
[2,] 1 1 -1 -1
[3,] 1 1 1 1
...和矩陣B
:
B <- matrix(c(1,2,3,2,1,3,2,3,1), ncol=3)
[,1] [,2] [,3]
[1,] 1 2 2
[2,] 2 1 3
[3,] 3 3 1
餘萬噸得到與[R]的代碼:
[,1] [,2] [,3]
[1,] 1*1 1*2 1*2
[2,] 1*2 1*1 1*3
[3,] 1*3 1*3 1*1
[,1] [,2] [,3]
[1,] -1*1 -1*2 -1*2
[2,] 1*2 1*1 1*3
[3,] 1*3 1*3 1*1
[,1] [,2] [,3]
[1,] 1*1 1*2 1*2
[2,] -1*2 -1*1 -1*3
[3,] 1*3 1*3 1*1
[,1] [,2] [,3]
[1,] -1*1 -1*2 -1*2
[2,] -1*2 -1*1 -1*3
[3,] 1*3 1*3 1*1
因爲在乘法的末尾沒有總和這不是線性代數乘法。這不是克羅內克產品。我嘗試過apply(A, 2, function(x) A * B
,但它不起作用,因爲儘管我可以指定我想要一列一列A
,但我不知道如何對B
列執行相同的操作。
我沒有設置任何特定類型的對象(列表,矩陣,數組)作爲輸出。
現在的問題是:我怎樣才能將這兩個矩陣的元素智能和列智能乘以另一個矩陣或「列表」對象或數組?
這正是我需要的。謝謝。現在有任何機會讓我打擾你,讓R中的命令分別添加列表(?)中的所有列或您在答案中顯示的對象? – Toni
@AntoniParellada,你是什麼意思的「分別添加」?你最終的結果是什麼? – A5C1D2H2I1M1N2O1R2T1
'6 6 6 // 4 2 2 // 2 4 0 // 0 0 -4' – Toni