2017-12-02 1 views
1

이 코드 :기능 오류 : 인수 3 개 일치 여러 형식 인수

f1 <- function(abc , ac , df){ 
    list(f1 = abc , f2=ac , f3 = df) 
} 

f1(1,2,a=3) 

반환 오류 :

Error in f1(1, 2, a = 3) : argument 3 matches multiple formal arguments 

기능으로 인해 f1에 인수 abc, ac 일치되고이 오류 A에 대한 이유 ~ function partial matching?

답변

4

명명 된 인수가 모든 정규 인수와 일치하지 않으면 R은 접두어로 부분 일치 을 적용하려고합니다. abcac은 모두 "a"로 시작하고 이고 어느 것이 사용해야하는지 알 수 없으므로 오류가 발생합니다.

당신이 f1(1, 2, ac=3)를 사용하는 경우, 다음 R은 ac, 에 3를 할당 한 다음이 df에, 나머지 할당되지 않은 매개 변수에 그래서 1abc에와 2를 나머지 값을 할당합니다.