만들기
문법
함수명 <- function(매개변수 목록) { 실행할 명령문(들) return(함수의 실행 결과) } |
사용
mymax(10,15)
a <- mymax(20,15)
b <- mymax(31,45)
print(a+b)
매개변수에 초기값 설정
mydiv <- function(x,y=2) {
result <- x/y
return(result)
}
mydiv(x=10,y=3) # 매개변수 이름과 매개변수값을 쌍으로 입력
mydiv(10,3) # 매개변수값만 입력
mydiv(10) # x에 대한 값만 입력(y 값이 생략됨)
함구가 반환하는 결과값이 여러 개일 때의 처리
myfunc <- function(x,y) {
val.sum <- x+y
val.mul <- x*y
return(list(sum=val.sum, mul=val.mul))
}
result <- myfunc(5,8)
s <- result$sum # 5, 8의 합
m <- result$mul # 5, 8의 곱
cat('5+8=', s, '\n')
cat('5*8=', m, '\n')
저장 및 호출
setwd("d:/source") # myfunc.R이 저장된 폴더
source("myfunc.R") # myfunc.R 안에 있는 함수 실행
# 함수 사용
a <- mydiv(20,4) # 함수 호출
b <- mydiv(30,4) # 함수 호출
a+b
mydiv(mydiv(20,2),5) # 함수 호출
This post was written based on what I read and studied the book below.
댓글