2
私は2つの(偽と真の)下三角行列を持っています。私は選択した数字ですべての真の値を変換したいと思います。私はコードを書いたが動作しません。与えられた例は私の問題と非常に似ています(非常に複雑です)。ここでリストを下三角行列に変換できません
は私のコードです:ここでは
> Matrix
[[1]]
[,1] [,2] [,3] [,4] [,5]
[1,] FALSE FALSE FALSE FALSE FALSE
[2,] TRUE FALSE FALSE FALSE FALSE
[3,] TRUE TRUE FALSE FALSE FALSE
[4,] TRUE TRUE TRUE FALSE FALSE
[5,] TRUE TRUE TRUE TRUE FALSE
[[2]]
[,1] [,2] [,3] [,4] [,5]
[1,] FALSE FALSE FALSE FALSE FALSE
[2,] TRUE FALSE FALSE FALSE FALSE
[3,] TRUE TRUE FALSE FALSE FALSE
[4,] TRUE TRUE TRUE FALSE FALSE
[5,] TRUE TRUE TRUE TRUE FALSE
np1 <- 10
np2 <- 10
np <-list(np1, np2)
はTRUE
値の場所を取る必要がある数字です。
new <- list(c(1,2,3,4,5,6,7,8,9,10),c(1,2,3,4,5,6,7,8,9,10))
そうするために、私はこのコードを書いた:
new1 <- lapply(1:2, function(i) matrix(0, 5, 5))
new1 <- lapply(1:2, function(i){new1[[i]][Matrix[[i]]] <- new[[i]][1:np[[i]]]})
'new1'で' lapply'を定義する方法は、それをベクトルとして保持し、なぜそれが行列に変換されないのかを示します。 –