我正在與R.Matlab的稀疏(I,J,S,M,N)相當於R中
工作我具有矩陣結構,但存儲在三個列表IND1,IND2和VAL中,每個相同的長度N;我需要在VAL的值存儲在一個矩陣MAT這樣的:
for each i in 1 to N:
MAT[IND1(i), IND2(i)] == VAL(i)
正如您可以猜到MAT的最終大小不一定是N×N的,但我知道的大小必須是什麼(命名爲m,如果你需要知道尺寸,因爲對我來說它必須是一個方形矩陣)。
Matlab的有一個很好的函數來創建一個sparse矩陣正是這樣做的,但我需要在語言R鍵實現這一點,希望沒有循環,沒有人知道是否可以做到這一點,並會請告訴我如何。提前致謝。
P.S:我已經嘗試了很明顯的:
MAT <- matrix(nrow=m, ncol=m)
MAT[IND1, IND2] <- VAL
,但我得到一個奇怪的結果(所有行具有相同的重複值)
+1 - 打敗我,儘管我只是發佈了一個雙線:'圖書館(矩陣); sparseMatrix(i = c(1,3,5),j = c(4,1,9),x = 10:12)'! – 2012-04-26 14:02:35