考虑一个假设的例子:
sim <- function(n,p){
x <- rbinom(n,1,p)
y <- (x==0) * rnorm(n)
z <- (x==1) * rnorm(n,5,2)
dat <- data.frame(x, y, z)
return(dat)
}
现在我想编写另一个函数simfun
,在该函数中我将调用上述的sim
函数,并检查数据框的y
和z
列是否小于一个值k
。
simfun <- function(n, p, k){
dat <- sim(n, p)
dat$threshold <- (dat$y<=k & dat$z<=k)
return(dat$threshold)
}
但是将 sim
的参数用作 simfun
的参数是标准的吗?我可以写成 simfun <- function(k)
并在 simfun
中调用 sim
函数吗?
simfun
时有出现错误吗?我在你的代码中没有看到任何问题。 - David Lealsimfun
函数中只有一个参数k
,但仍然可以调用sim
函数的方法? - timen,p
在函数simfun(k)
之外定义,这样您就可以只使用一个参数调用它。这些值也可以在选项设置中定义。我不明白其中的意义,可能是因为从这样的玩具示例很难推断出您的实际问题。请尝试扩展一下您的假设问题,它不必是您的真实问题。 - David Leal