(1:10)[2:5]
# [1] 2 3 4 5
(1:10)[2 + 1:5 + 1]
# [1] 4 5 6 7 8
(1:10)[(2 + 1):(5 + 1)]
# [1] 3 4 5 6
(1:10)[10 + 1:5 + 1]
# [1] NA NA NA NA NA
我正在学习列表访问如何在R中工作。上面的第二个案例看起来很奇怪。有人可以解释这种模式是如何运作的吗?
(1:10)[2 + 1:5 + 1]
答案 0 :(得分:2)
R允许将向量视为单个数字。这是一个关于矢量数学的link很好的教程。我打赌你已经知道这一点,但在这种情况下配置只是有点不寻常。你的测试用例基本上将3(1 + 2)加到向量1:5然后索引。
> (1:10)[1+1:5+2] == (1:10)[1:5+3]
[1] TRUE TRUE TRUE TRUE TRUE