在r中,假设我们有一个向量
area = c(rep(c(26:30), 5), rep(c(500:504), 5), rep(c(550:554), 5), rep(c(76:80), 5))
还有另一个向量
yield = c(1:100)
.
现在,假设我想这样索引:
> yield[area==27]
[1] 2 7 12 17 22
> yield[area==501]
[1] 27 32 37 42 47
没问题,对吧?但当我试图用
c(A, B)
. (当我尝试的时候更奇怪
c(min:max)
……)
> yield[area==c(27,501)]
[1] 7 17 32 42
我所期待的当然是其他两个例子中出现的实例,而不仅仅是它们的一些奇怪的组合。当我可以使用管道或操作器时,这是有效的:
> yield[area==27 | area==501]
[1] 2 7 12 17 22 27 32 37 42 47
但是如果我在使用靶场呢?假设我要按范围索引它
c(27:503)
?在我的实际示例中,有更多的数据点和范围,因此它更有意义,请不要建议我手工操作,这实际上意味着:
yield[area==27 | area==28 |Â area==29 | ... | area==303 | ... | area==500 |Â area==501]
一定有更好的方法…