반응형
앞서 dplyr library에서 join 함수에 대해서 배웠는데, A라는 데이터프레임과 B라는 데이터프레임을 name이라는 공통된 칼럼으로 합친다고 하면 (inner_join을 써보겠습니다 여기선), inner_join(A, B, by="name") 뭐 이런 식으로 하면 되는데요. 만약 A, B, C, D, and, E라는 데이터프레임을 합친다고 하면 어떻게 한 줄로 만들 수 없을까요. list에 데이터프레임 이름을 넣어서 하는 방식도 있을 수 있겠지만, 여기서는 dplyr %>% 기능을 쓰면 편합니다. %>%라는 dplyr에서 자주 이용하는 기능인데요 쉽게 얘기해서 파이프 (pipe)같은 기능이라고 보시면 됩니다. 왼쪽 있는 걸 수행한 다음에 오른쪽 걸 수행해라 뭐 이런 식입니다. 이걸 결합하면 다음과 같이 써볼 수 있습니다. merged 라는 데이터프레임을 새로 만들었는데 A, B, C, D, 그리고 E를 모두 합친 (여기선 inner_join을 썼습니다) 결과입니다.
merged<-inner_join(A, B, by=c("name"))%>%
inner_join(., C, by=c("name")) %>%
inner_join(., D, by=c("name")) %>%
inner_join(., E, by=c("name"))
반응형
'R > R basic' 카테고리의 다른 글
데이터 문자값 바꾸기 (sub, gsub 함수) (0) | 2021.05.04 |
---|---|
%>%란 무엇인가 (dplyr) (0) | 2021.04.30 |
두 개의 데이터프레임 합치기 (join 함수) (0) | 2021.04.23 |
데이터 불러서 한 번에 통합 (plyr::ldply 함수) (0) | 2021.04.21 |
한 폴더에 있는 파일을 한꺼번에 불러서 통합시키기 (list.files / do.call 함수) (1) | 2021.04.20 |