2017-02-09 5 views
0
skewness <- function(x, ...){ 
    if(!is.numeric(x)) 
     stop("x is not numeric") 
    mean((x-mean(x,...)),...)/(var(x,...))^2 
} 
x <- rnorm(100) 
x[3] <- NA 
skewness(x,na.rm=T) 
[1] NA 

私は必要な答えを得ることができません。それで、省略記号を正しく使う方法。特に私が使用したい1つ以上の省略記号について言えば。1つの関数に複数の省略記号を付けることはできますか?

+0

参照、例えば、[ここ](http://stackoverflow.com/questions/5080972/using-multiple-ellipses-arguments-in-r)または[ここ](のhttp://のstackoverflow。 com/questions/4124900/is-there-a-way-to-use-2-st-a-function-in-r) –

+0

歪度の定義を確認してください。 –

+0

'e1071 :: skewness'を参照してください。すべての省略記号を渡すのではなく、 'na.rm'引数を直接インクルードして渡すことも考えられます。 –

答えて

1

あなたは省略記号1つを紛失しました。私はそこに1対多の()があると思います。

skewness <- function(x, ...){ 
    if(!is.numeric(x)) 
     stop("x is not numeric") 
    mean(x - mean(x, ...), ...)/(var(x, ...))^2 
} 
+0

'mean((x-mean(x、...)))')では、最初の 'x'はまだNAsを持つかもしれません。 –

+0

まあ、時々私はそれらの種類の間違いをするでしょう。 – JackBoooooom

関連する問題