R

R 기초 13 - 내장함수(최소값, 평균값, 분산... 등), 사용자 정의 함수

코딩탕탕 2022. 10. 24. 11:33

 

# 함수
# 내장 함수
seq(0, 5, by = 1.5) # 0부터 5까지 1.5씩 늘어나는 함수

set.seed(123)
rnorm(10, mean = 0, sd = 1) # 정규분포를 따르는 난수
hist(rnorm(5000, mean = 0, sd = 1)) # 표준정규분포

runif(10, min = 0, max = 100)
hist(runif(5000, min = 0, max = 100))  # 균등분포

sample(0:10, 5)

vec <- 1:10
min(vec)    # 최소값
range(vec)  # 최소, 최대값
mean(vec)   # 평균값
median(vec) # 
var(vec)    # 분산
sqrt(var(vec)) # 표준편차
sd(vec)     # 표준편차
sd(vec) / mean(vec) # 변동변수
quantile(vec)       # 0, 25, 50, 75, 100% 구하기
sum(vec)    # 총 합
prod(vec)   # 총 곱셉

내장함수를 사용하여 함수를 만들지 않아도 값을 구할 수 있다.

 

 

표준정규분포 : 그래프의 양쪽의 대략 대칭형인 그래프

균등분포 : 그래프가 균등하게 분포되어 있는 그래프

 

 

사용자 정의 함수

# 사용자 정의 함수
func1 <- function(arg){
  print(arg)
  return(arg + 10)
}
typeof(func1) # "closure" 타입(파이썬의 클로저가 아니다.)

func1(5)

gugu_func <- function(dan){
  for(d in dan){
    for(i in 1:9){
      cat(d, '*', i, '=', d * i, ' ')
    }
    cat('\n')
  }
}

gugu_func(2:5) # 2단부터 5단까지 호출
gugu_func(3)   # 3단 호출

내장함수도 있지만 함수를 만들어서 사용할 수 있다.