본문 바로가기
R

R ) apply()함수 알아보기 in r

by C.Mond 2022. 4. 11.
728x90
728x90

안녕하세요

 

오늘은 apply함수에 대해 공부한 것을 기록하려고 합니다.

 

apply함수는 행렬의 행 또는 열 방향으로 같은 함수를 반복해서 실행하는 함수 입니다.

 

apply()함수의 X인자에는 헹렬 및 배열 자료형을 넣어 줍니다.

 

MARGIN인자에는 1또는 2를 지정합니다. 1은 행방향 2는 열방향을 지정합니다.

 

FUN인자에는 반복실행할 함수를 지정합니다.

 

iris
test1 <- iris[1:10,1:5]
test2 <- iris[1:10,1:4]

iris data를 활용해 보겠습니다.

test1은 iris data의 실수 부분만을 가져오고 test2는 Specise인 column까지 가져오겠습니다.

 

apply(test1, 1, FUN=mean)
apply(test1, 2, FUN=mean)

data에 평균을 계산할 수 없는 factor형 data가오니 함수 자체가 동작을 하지않고 NA를 반환합니다.

apply(test2, 1, FUN=mean)
apply(test2, 2, FUN=mean)

실수만으로 이루어진 data를 활용하니 제대로 동작함을 알 수 있습니다.

 

가상의 data를 만들어 실습을 해보겠습니다.

 

score <- data.frame(col1=sample(x=1:100,size=10000,replace = T),
col2=sample(x=1:100,size=10000,replace = T),
col3=sample(x=1:100,size=10000,replace = T))

10000개의 row를 가진 data table을 만들었습니다.

 

apply를 이용해 각 column별 함수를 적용시켜보겠습니다.

 

apply(X=score,MARGIN=2,FUN=mean)

for문을 이용해서도 구현할 수 있지만 이는 시간이 좀 더 걸립니다.

 

728x90
728x90

댓글