R 带上下间隔的Ifelse

R 带上下间隔的Ifelse,r,R,我有一个向量x2,1,ifelse(xifelse语句的格式是ifelse(condition,true,false)。你想让你的第二个ifelse位于false位置,所以把完整的ifelse放在那里: ifelse(x>2, 1, ifelse(x<-2,-1,x))) ifelse(x>2,1,ifelse)(x我知道这个答案已经得到了回答,但我认为如果可能的话,最好避免嵌套多个ifelse()调用(尽管两个调用并不太糟糕)。我会重新构造您正在做的事情,并在间隔内返回任何内容[

我有一个向量
x2,1,ifelse(xifelse
语句的格式是
ifelse(condition,true,false)
。你想让你的第二个
ifelse
位于
false
位置,所以把完整的
ifelse
放在那里:

ifelse(x>2, 1, ifelse(x<-2,-1,x)))

ifelse(x>2,1,ifelse)(x我知道这个答案已经得到了回答,但我认为如果可能的话,最好避免嵌套多个
ifelse()
调用(尽管两个调用并不太糟糕)。我会重新构造您正在做的事情,并在间隔内返回任何内容[-2,2]未更改,否则根据需要返回
-1
1

ifelse(x >= -2 & x <= 2, x, sign(x))

ifelse(x>=-2&x你的括号放错地方了。它们都应该在末尾。你的意思是:ifelse(x>2,1,ifelse)(xHe的意思是
ifelse(x>2,1,ifelse(xBe请注意此处的间距。如果在
x<-2
中的小于号和负号之间不加空格,则实际上是在将
x
赋值给2。我以前曾与此发生过不幸的冲突。
ifelse(x>2, 1, ifelse(x<-2,-1,x)))
ifelse(x >= -2 & x <= 2, x, sign(x))