簡體   English   中英

通過索引在 R 中編寫矩陣

[英]Writing a matrix in R , by indices

我想在 R 中創建這個矩陣,但我的代碼給我所有元素的零。

其中對角線為 1,與對角線相鄰的元素為 0.25。 在此處輸入圖片說明

 n = 97 W = matrix(0 , n,n) diag(W)=1 for (i in 1:rowCount) { for (j in 1:rowCount){ if(j==i){W[i,j] = 1 } else if (j==i-1){W[i,j] = .25 } else if (j==i+1){W[i,j] =.25} }}

您可以使用diag將對角線元素設置為 1,然后使用row col將與對角線相鄰的元素設置為 0.25。

n <- 5
mat <- diag(1, n)
mat[abs(row(mat) - col(mat)) == 1] <- 0.25
mat

#     [,1] [,2] [,3] [,4] [,5]
#[1,] 1.00 0.25 0.00 0.00 0.00
#[2,] 0.25 1.00 0.25 0.00 0.00
#[3,] 0.00 0.25 1.00 0.25 0.00
#[4,] 0.00 0.00 0.25 1.00 0.25
#[5,] 0.00 0.00 0.00 0.25 1.00

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM