2017-02-09 2 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 

원하는 답을 얻을 수 없습니다. 그래서 줄임표를 올바르게 사용하는 법. 특히 내가 사용하고자하는 하나 이상의 줄임표가 올 때.하나의 함수에 둘 이상의 줄임표가있을 수 있습니까?

+0

참조, 예를 들어, [여기] (http://stackoverflow.com/questions/5080972/using-multiple-ellipses-arguments-in-r) 또는 [여기] (HTTP : // 유래. com/questions/4124900/is-a-way-to-use-two-in-a-function-in-r) –

+0

왜곡의 정의를 확인하십시오. –

+0

'e1071 :: skewness'를 참조하십시오. 전달하는 모든 타원이 아니라, 직접'na.rm' 인수를 포함시키고 전달하는 것을 고려할 수도 있습니다. –

답변

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'는 여전히 NA를 가질 수 있습니다. –

+0

글쎄, 때로는 그런 종류의 실수를하게 될 것입니다. – JackBoooooom

관련 문제