すべての値 <=.2 が 2 になり、<=.4 が 3 になるように、マトリックスの値を再コード化したいと考えています。 NA)。ここに、私のコードの簡略化されたバージョンがあります。na.omit を使用すると、最初の変更で完全に機能します
try <- matrix(c(0.78,0.62,0.29,0.47,0.30,0.63,0.30,0.20,0.15,0.58,0.52,0.64,
0.76,0.32,0.64,0.50,0.67,0.27, NA), nrow = 19)
try[na.omit(try <= .2)] <- 2 #Indeed changes .20 and .15 to 2 and leaves the NA as NA
ただし、より高いカテゴリに対して同じことを行うと、NA も変更されます。
try[na.omit(try <= .8)] <- 5 #changes all other values including the NA to 5
誰かが私に2つの違いは何ですか、そしてなぜ2番目のものもNA値を変更するのに最初のものは変更しないのか説明できますか? それとも私は何か他のことを間違っていますか?