30

以下に単純な密度関数があります。

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)
 } 
}

この関数は、パラメーターbおよびrを使用して、指定された分布から値xに対応する密度を返します。ユーザーがxを指定しない場合、デフォルト値が通過するように、xにデフォルト値を設定したいと思います。dpower <-function(x = x.default、b、r)...を設定するだけですが、デフォルト値はrとbによって異なります。どうやってやるの?xのデフォルト値は次のとおりです。

seq(from = 0.05, to = b, by = 0.001)

ご協力いただきありがとうございます、

4

2 に答える 2

40
dpower <- function(b, r, x = seq(from = 0.05, to = b, by = 0.001))
....
于 2012-11-16T04:34:23.793 に答える
8

Xの値をに設定してNULL、関数の最初の行の1つを

 if(is.null(x))
     x <- seq(from = 0.05, to = b, by = 0.001)
于 2012-11-16T04:41:37.520 に答える