Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在函数中设置默认值?_R_Function_Default Value - Fatal编程技术网

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)