以下语句构成一个数组:
x = array(data = 1:6, dim = c(2,3))
看起来像:
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
好的,我理解这一点,但以下陈述意味着什么:
x[c(1,2), c(TRUE, TRUE, FALSE)]
输出:
[,1] [,2]
[1,] 1 3
[2,] 2 4
实际发生了什么?
答案 0 :(得分:1)
矩阵索引如下:matrix[rows, columns]
。你在做什么告诉它:
第1行和第2行(c(1, 2)
)和
取第一列和第二列(TRUE, TRUE, FALSE
),结果是
x[c(1,2), c(TRUE, TRUE, FALSE)]
# [,1] [,2]
#[1,] 1 3
#[2,] 2 4
如果您将逻辑表达式的序列更改为TRUE, FALSE, TRUE
,那么您将抓住第一列和第三列,即
x[c(1,2), c(TRUE, FALSE, TRUE)]
# [,1] [,2]
#[1,] 1 5
#[2,] 2 6