함수 호출
함수 호출
R에서 수행되는 계산의 대부분은 함수의 평가와 관련되어 있어요. 이를 함수 호출(invocation)이라고도 해요. 함수는 이름과 쉼표로 구분된 인자 목록을 사용해 호출됩니다.
본문
3.1.3 함수 호출
R에서 수행되는 계산의 대부분은 함수의 평가(evaluation)와 관련됩니다. 우리는 이를 함수 호출(invocation)이라고도 부를게요. 함수는 이름과 쉼표로 구분된 인자 목록을 사용해 호출됩니다.
> mean(1:10)
[1] 5.5
이 예에서 mean 함수는 인자 하나, 즉 1부터 10까지의 정수 벡터로 호출되었어요. R에는 다양한 목적을 가진 수많은 함수가 있습니다. 대부분은 R 객체를 결과로 생성하는 데 사용되지만, 일부는 출력이나 플로팅 함수처럼 부수 효과(side effects)를 위해 사용되기도 해요.
함수 호출은 plot(x, y, pch = 3)처럼 태그된(또는 이름 붙은) 인자를 가질 수 있어요. 태그가 없는 인자는 위치적(positional)이라고 불러요. 함수는 호출의 인자들 사이에서 그들의 순차적 위치로 의미를 구분해야 하기 때문이죠. 예를 들어 x가 가로축 변수, y가 세로축 변수임을 나타내는 것처럼요. 태그/이름의 사용은 선택적 인자가 많은 함수에서 분명 편리합니다.
특별한 유형의 함수 호출은 할당 연산자 왼쪽에 나타날 수 있어요:
> class(x) <- "foo"
이 구성이 실제로 하는 일은 class<- 함수를 원래 객체와 오른쪽 값으로 호출하는 거예요. 이 함수는 객체의 수정을 수행하고 결과를 반환하며, 그 결과는 다시 원래 변수에 저장됩니다. (적어도 개념적으로는 이렇게 동작해요. 불필요한 데이터 복제를 피하기 위해 추가적인 노력이 들기도 하지만요.)