从向量子集排除数字<和> x的序列

时间:2019-01-09 19:30:07

标签: r vector subset subsequence

我正在尝试通过对向量A中小于25且大于75的所有数字进行替换来创建一个新的向量C。 我的问题是如何以及在何处放置命令以设置我想要的范围。

set.seed(135)
A <- sample(1:100,1000, replace=T)
C <- A[seq(1,length(A),)]

我知道我可以通过将数字放在最后一个逗号之后来子集第n个对象,如下所示:

B <- A[seq(4,length(AA),4)

因此,我尝试将要排除的范围放在那里,但出现了一系列错误:

Error: unexpected ',' in "C <- A[seq(1,length(A),(x<25,"
> C <- A[seq(1,length(A),x<25,x>75)]
Error in seq.default(1, length(A), x < 25, x > 75) : 
  object 'x' not found
> C <- A[seq(1,length(A),(A<25,A>75))]
Error: unexpected ',' in "C <- A[seq(1,length(A),(A<25,"
> C <- A[seq(1,length(A),A<25,A>75)]
Warning message:
In seq.default(1, length(A), A < 25, A > 75) :
  erstes Element von 'length.out' Argument benutzt

我需要序列的第一组看起来像这样:

[1] 4 93 10 85 8 89 16 91 84 85 ...

1 个答案:

答案 0 :(得分:0)

您需要在条件之间使用or运算符(|)。

set.seed(135)
A <- sample(1:100,1000, replace=T)
A[A<25 | A>75]