2

我的问题:

Amat <- diag(4)

我想用我选择的值(例如)替换Amat(即Amat[2,1]Amat[3,1]、等)的所有下三角值。Amat[3,2]NA

显然我不想一个一个地替换每个元素。

你能告诉我使用单个命令最有效的方法吗?

4

2 回答 2

8

这在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

于 2012-08-29T10:53:06.443 回答
5

你在寻找什么lower.triupper.tri

这些函数在 R 基础中。

于 2012-08-29T10:53:37.417 回答