이번 시간은 apply 계열을 설명합니다. apply 함수는 "데이터객체"를 설명할 때 "행렬(matrix)" 객체에서
간단하게 설명한 바 있습니다. apply 함수는 사용법이 간단합니다.
이 간단한 apply와 유사한 함수들이 많은데 sapply, lapply, tapply ... 등이 있습니다.
그리고 apply(데이터, 1또는 2, 함수) 형태인데 함수를 사용할 수 있는 것도 유용한 기능입니다.
이 함수에 mean, sum, min,max, prod 간단한 함수를 사용하는 예제를 보이지만
다양한 함수를 적용할 수 있습니다.
apply() 함수
m1 <- matrix(c(1,2,3,4,5,6),nrow=2,byrow=T);m1 # [,1] [,2] [,3] # [1,] 1 2 3 # [2,] 4 5 6 apply(m1,1,sum) # 행합계 apply(m1,2,sum) # 열합계 apply(m1,1,min) apply(m1,1,max) apply(m1,1,mean) apply(m1,1,range) apply(m1,1,quantile) apply(m1,1,prod) |
형태: apply(데이터,옵션,함수)
apply(m1,1,sum) :
데이터 m1에 대하여 ,
옵션 '1'을 이용하여 (가로, 행)
통계 sum 을 이용하여 합계를 구합니다.
옵션 '2'를 이용하면 (세로, 열) 방향으로 합계를 구하게 됩니다.
sapply() 와 lapply( )
sapply(s1,sum) # simple 변수별 합계... 벡터
lapply(s1,sum) # list 변수별 합계... 리스트
sapply(s1,sum) # 변수별 합계... 벡터
데이터 s1에 대하여 ,
통계 sum 을 이용하여 합계를 구합니다.
sapply 는 합계를 벡터 형태로 구합니다.
lapply(s1,sum) # 변수별 합계... 리스트
데이터 s1에 대하여 ,
통계 sum 을 이용하여 합계를 구합니다.
lapply 는 합계를 리스트 형태로 구합니다.
NA다루기
m1[1,3] <- NA |
상관계수 구하기
cor(s1) # 데이터 s1에 있는 모든 변수의 상관계수를 구합니다.(id와 gender를 제외했으니 가능) lapply(s1,cor,s1$wage) |
tapply
tapply(s$wage,s$gender,sum) # 남녀별 합계 구하기 |
> tapply(s$wage,s$gender,sum) # 남녀별 합계 구하기
F M
4110 3220
'R연습 200제 > 05_00. (R)전처리와 R 응용' 카테고리의 다른 글
(R)제07강(2.1) 데이터 다루기 - 패키지 dplyr 이용하기 (0) | 2022.01.08 |
---|---|
(R1)제07강(0.0) 파일핸들링 목차 - apply계열, dplyr, merge 등 (0) | 2021.01.12 |