【发布时间】:2012-08-29 10:45:03
【问题描述】:
我的问题:
Amat <- diag(4)
我想用我选择的值(例如NA)替换Amat 的所有下三角值(即Amat[2,1]、Amat[3,1]、Amat[3,2] 等)。
显然我不想一个一个地替换每个元素。
您能告诉我使用单个命令最有效的方法吗?
【问题讨论】:
标签: r
我的问题:
Amat <- diag(4)
我想用我选择的值(例如NA)替换Amat 的所有下三角值(即Amat[2,1]、Amat[3,1]、Amat[3,2] 等)。
显然我不想一个一个地替换每个元素。
您能告诉我使用单个命令最有效的方法吗?
【问题讨论】:
标签: r
这在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
当然,Amat[lower.tri(Amat)] <- NA 也可以将下三角形转换为NAs。
【讨论】:
upper.tri 替换为 lower.tri。
as.table 中会抑制NA 值的打印。
lower.tri 和 upper.tri 是您要找的吗?
这些函数在 R 基础中。
【讨论】: