如何从获得
test <- matrix(c("eb2","ebrees",NA,NA,
"ebrees","es2",NA,NA,
NA, NA, NA, NA,
NA, NA, NA, NA), ncol = 4, byrow = T)
[,1] [,2] [,3] [,4]
[1,] "eb2" "ebrees" NA NA
[2,] "ebrees" "es2" NA NA
[3,] NA NA NA NA
[4,] NA NA NA NA
至:
[,1] [,2] [,3] [,4]
[1,] T T F F
[2,] T T F F
[3,] F F F F
[4,] F F F F
以下是我的进展:
哪个(!是.na(测试(,arr.ind=TRUE(
row col
[1,] 1 1
[2,] 2 1
[3,] 1 2
[4,] 2 2
这给了我所需要的数字版本。
第二次尝试是将矩阵视为df,但返回的是char而不是逻辑,看起来我很接近,但不知道如何获取逻辑值。
test[!is.na(test)] = T
test[is.na(test)] = F
test1 <- (!is.na(test))
输出
> test1
[,1] [,2] [,3] [,4]
[1,] TRUE TRUE FALSE FALSE
[2,] TRUE TRUE FALSE FALSE
[3,] FALSE FALSE FALSE FALSE
[4,] FALSE FALSE FALSE FALSE