私の質問:
Amat <- diag(4)
Amat
(、、、など)Amat[2,1]
の下三角値をすべて、選択した値(eg )に置き換えたいと思います。Amat[3,1]
Amat[3,2]
NA
もちろん、各要素を1つずつ置き換えたくはありません。
1つのコマンドでそれを行う最も効率的な方法を教えてください。
私の質問:
Amat <- diag(4)
Amat
(、、、など)Amat[2,1]
の下三角値をすべて、選択した値(eg )に置き換えたいと思います。Amat[3,1]
Amat[3,2]
NA
もちろん、各要素を1つずつ置き換えたくはありません。
1つのコマンドでそれを行う最も効率的な方法を教えてください。
これは、のドキュメントにかなり詳しく記載されていupper.tri
ます。
Amat[upper.tri(Amat)] <- NA
Amat
# [,1] [,2] [,3] [,4]
# [1,] 1 NA NA NA
# [2,] 0 1 NA NA
# [3,] 0 0 1 NA
# [4,] 0 0 0 1
もちろん、下の三角形をsAmat[lower.tri(Amat)] <- NA
に変換する場合も同じようになります。NA
あなたが探しているのは何ですかlower.tri
?upper.tri
これらの関数はRベースにあります。