R 在函数中设置默认值?
我有一个简单的密度函数如下:R 在函数中设置默认值?,r,function,default-value,R,Function,Default Value,我有一个简单的密度函数如下: dpower <- function(x, b, r){ if ((b <= 0 | r <= 0)) return("Wrong parameters entered!") else{ density.temp <- (r/b)*(x/b)^(r - 1) density.temp[which(x >= b | x <= 0)] <- NA return(density.temp) } } 感谢您的帮助,dp
dpower <- function(x, b, r){
if ((b <= 0 | r <= 0))
return("Wrong parameters entered!")
else{
density.temp <- (r/b)*(x/b)^(r - 1)
density.temp[which(x >= b | x <= 0)] <- NA
return(density.temp)
}
}
感谢您的帮助,
dpower您可以将X的值设置为NULL
,并将函数的第一行之一设置为
dpower <- function(b, r, x = seq(from = 0.05, to = b, by = 0.001))
....
if(is.null(x))
x <- seq(from = 0.05, to = b, by = 0.001)
if(is.null(x))
在缺少“x”的情况下,您打算如何调用函数?嗨,Matthew,只有b和r。我想让R知道,如果不调用x(即dpower只有两个参数),那么R使用默认值x。这是可以做到的,但如果“x”参数是列表中最后一个参数,会容易得多。是的,我明白了……那么我们可以把它放在最后。很好。调用函数时,是否仍要检查函数中是否指定了x参数?返回TRUE或FALSE的内容?是的,缺少(x)
。这将测试函数中的参数(x
)是否已在调用中指定。
if(is.null(x))
x <- seq(from = 0.05, to = b, by = 0.001)