让我们考虑例如R中的以下向量:x <- 2*c(1:100)
。
现在我想定义一个逐步函数,对于x x[1] = 2
',x >= 0 & x < 1
x x[2] = 4
',x >= 1 & x < 2
的值I tried to do this with the following code:
y <- 2*c(1:100)
f <- function(x){for(i in 1:100){if((x >= i-1) & (x < i)){y[i]}
}
}
....
keepStrings
这不起作用 - 我的代码出了什么问题?
提前致谢。
答案 0 :(得分:0)
首先,您错过if
条件下的结束括号。它应该是这样的:
if((x >= i-1) & (x < i))
其次,您的函数使用x
作为参数以及外部向量的名称。那令人困惑。
第三,
function(y) x[floor(y)]
会更有效率