더북(TheBook)

mapply()

이제 apply( ) 계열 함수의 마지막 변형으로 mapply( )에 대해 살펴보자. mapply( )는 sapply( )와 유사하지만 다수의 인자를 함수에 넘긴다는 점에서 차이가 있다. 주요 사용 목적은 다수의 인자를 받는 함수 FUN( )이 있고 FUN( )에 넘겨줄 인자들이 데이터로 저장되어 있을 때, 데이터에 저장된 값들을 인자로 하여 함수를 호출하는 것이다. 다음 표에 mapply( )에 대해 보였다.

표 4-14 mapply( ) 함수

mapply : 함수에 리스트 또는 벡터로 주어진 인자를 적용한 결과를 반환한다.

mapply(
  FUN,  # 실행할 함수
  ...,  # 적용할 인자
)

...에 주어진 여러 데이터가 있을 때 FUN에 이들 데이터 각각의 첫째 요소를 인자로 전달하여 실행한 결과, 각각의 둘째 요소를 인자로 전달하여 실행한 결과 등을 반환한다.

여기에서는 정규 분포를 따르는 난수를 생성하는 rnorm( ) 함수에 mapply( )를 적용하는 예를 살펴볼 것이다. R에는 다양한 난수 생성 함수가 있다. 이 함수들은 ‘r{분포명}( )’ 형태를 띤다.

표 4-15 난수 생성 함수

함수

의미

rnorm(n, mean=0, sd=1)

평균이 n, 표준 편차가 sd인 정규 분포를 따르는 난수 n개 발생

runinf(n, min=0, max=1)

최솟값이 min, 최댓값이 max인 균등 분포를 따르는 난수 n개 발생

rpois(n, lambda)

람다 값이 lambda인 포아송 분포를 따르는 난수 n개 발생

rexp(n, rate=1)

람다가 rate인 지수 분포를 따르는 난수 n개 발생

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.