我的问题:
Amat <- diag(4)
Run Code Online (Sandbox Code Playgroud)
我想,以取代所有的下三角值Amat(即Amat[2,1],Amat[3,1],Amat[3,2],等),用一个值我选择(例如NA).
显然我不想逐个替换每个元素.
你能用一个命令告诉我最有效的方法吗?
这在文档中有很好的记录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
Run Code Online (Sandbox Code Playgroud)
当然,Amat[lower.tri(Amat)] <- NA将下三角形转换为NAs也是如此.