반응형
merge 함수는 두 데이터프레임을 합쳐주는 함수입니다. rbind 보다는 cbind 와 유사한데요. cbind와 구벌되는 점은 특정 열을 기준으로 하여 합친다는 것입니다. 총 네가지 방법이 있는데요. 그림을 보면 쉽게 이해가 되실겁니다.
데이터프레임을 가지고 직접 해봅시다. 사용할 두 데이터는 아래와 같습니다.
A=data.frame(id=c(1,2,3),weight=c(78,88,98),height=c(170,175,180))
B=data.frame(id=c(2,3,4),math=c(75,85,85),eng=c(100,85,60))
콘솔창에 입력해보면 아래와 같습니다.
> A
id weight height
1 1 78 170
2 2 88 175
3 3 98 180
> B
id math eng
1 2 75 100
2 3 85 85
3 4 85 60
1) Inner Join
Inner Join 은 공통된 부분을 id를 기준으로 합치는 방법입니다. 아래 그림과 같습니다.
데이터프레임 A와 B에 적용해봅시다.
> merge(A,B,by='id')
id weight height math eng
1 2 88 175 75 100
2 3 98 180 85 85
2) Outer Join
Outer Join 은 모든 행을 유지하며 합치는 방법입니다. 아래 그림과 같습니다.
데이터프레임 A와 B에 적용해봅시다.
> merge(A,B,by='id',all=TRUE)
id weight height math eng
1 1 78 170 NA NA
2 2 88 175 75 100
3 3 98 180 85 85
4 4 NA NA 85 60
3) Left Outer Join
Left Outer Join은 좌측 데이터프레임의 모든 행을 유지하며 결합합니다. 아래 그림과 같습니다.
데이터프레임 A와 B에 적용해봅시다.
> merge(A,B,by='id',all.x=TRUE)
id weight height math eng
1 1 78 170 NA NA
2 2 88 175 75 100
3 3 98 180 85 85
4) Right Outer Join
Left Outer Join은 우측 데이터프레임의 모든 행을 유지하며 결합합니다. 아래 그림과 같습니다.
데이터프레임 A와 B에 적용해봅시다.
> merge(A,B,by='id',all.y=TRUE)
id weight height math eng
1 2 88 175 75 100
2 3 98 180 85 85
3 4 NA NA 85 60
영상강의
반응형
'R 주제 > R 기초 및 통계 강의' 카테고리의 다른 글
[R강의] 139. 데이터프레임 열이름, 행이름 출력하고 수정하기 (0) | 2023.02.03 |
---|---|
[R강의] 138. 데이터프레임 행 추가할 때 리스트를 사용해야하는 이유 (0) | 2023.01.31 |
[R강의] 136. rbind로 데이터프레임들 결합할 때, 구분하는 열 추가하기 (0) | 2023.01.31 |
[R강의] 135. 데이터프레임을 열로 결합하기 (cbind) (1) | 2023.01.25 |
[R강의] 134. 데이터프레임 열이름이 다른 경우 rbind 적용하기 (0) | 2023.01.25 |
댓글