1
我試圖在m矩陣中取'1'的位置,並使用這些位置將k矩陣中的值更改爲NA。但是在嘗試之後我很難得到它。根據列位置更改矩陣中的值
m <- matrix(c(0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1),
nrow = 4, byrow = TRUE)
m
[,1] [,2] [,3] [,4]
[1,] 0 0 0 1
[2,] 0 1 0 1
[3,] 1 0 0 0
[4,] 0 0 1 1
k <- matrix(c(12, 32, 12, 13, 23, 31, 23, 31, 23, 32, 67,63,61, 22,99, 34),
nrow = 4, byrow = TRUE)
k
[,1] [,2] [,3] [,4]
[1,] 12 32 12 13
[2,] 23 31 23 31
[3,] 23 32 67 63
[4,] 61 22 99 34
這樣做下面我得到1S的在M矩陣的列位置:
jj<- row(m)[m!=0]
[1] 3 2 4 1 2 4
我試了幾種方法,但我奮鬥基礎上,在K矩陣替代值將m個矩陣的行位置分配給NA。
我想達成什麼是以下:
[,1] [,2] [,3] [,4]
[1,] 12 32 12 NA
[2,] 23 NA 23 NA
[3,] NA 32 67 63
[4,] 61 22 NA NA
是的,這是正確的。非常感謝! – Sam
驚人地簡潔的代碼..超級! –