1. Functions 개요
1) 반복적으로 사용하는 부분을 함수화 하여서 적절하게 프로그래밍시에 사용할 수 있게 한다.
2) 기본형은 아래와 같다. (대부분의 다른 프로그래밍 언어와 동일 하다.)
f -> function (<arguments>) {
## 함수 내용
}
2. Function Arguments
1) 기본 arguments는 함수의 정의에 의해 결정된다.
2) Arguments는 생략될 수 있다.
3. Argument Matching
1) Arguments의 순서와 이름에 의해서 일치가 되는지 확인한다.
2) 동일한 함수 이름이라고 하더라도 arguments가 다른 경우 다른 함수로 사용될 수 있다.
3) Partial Match: Argument 이름이 길 경우 부분적으로만 일치되는지는 확인한다
- 이름, partial match, positional match의 순서대로 일치를 확인하여 함수를 찾게 된다.
4. Lazy Evaluation
1) 함수 검사는 컴파일 시 나타나지 않고, 실행 시에 천천히 평가 된다.
- b object에 대해서 전형 수행을 하지 않으므로, 함수 호출 시 굳이 쓰지 않아도 위처럼 정상 실행 된다.
- 위와 같이 b object를 호출하는 경우에는 error로 실행이 되지 않는다.
5. "…" Argument
1) 고급 사용시에 사용되는 함수 변수로 object 변수의 개수가 유동적으로 바뀔 수 있는 상황에 사용한다.
- paste()의 경우 붙일 수 있는 object 개수가 다양하므로 함수 정의에서 "…" 으로 정의 되어 있다.
'IT | Computer > R' 카테고리의 다른 글
R 언어 통계 프로그래밍_lapply, sapply (0) | 2016.08.21 |
---|---|
R 언어 통계 프로그래밍: Dates, Times (0) | 2016.08.10 |
R 언어 통계 프로그래밍: Control Structure 제어문 (0) | 2016.04.01 |
R 언어 통계 프로그래밍: Subsetting (0) | 2016.03.31 |
R 언어 통계 프로그래밍: 외부 입출력 (0) | 2016.01.26 |