Gae Ko's Blog

[R] data frame 결합 본문

통계/R

[R] data frame 결합

Gae Ko 2017. 10. 8. 11:16

 R 데이터프레임 결합 : rbind( ), cbind( ), merge( ) 


- 함수 비교 


(1) 행 결합 (위 + 아래) : rbind( A, B)

 rbind는 row bind 의 약자

 위의 행결합 rbind()를 하기 위해서는 결합하려는 두 개의 데이터셋의 열의 개수와 속성, 이름이 같아야만 함

 만약 맞지 않으면 맞지 않다고 에러메세지가 뜸  

==사진==


(2) 열 결합 (왽쪽 + 오른쪽) : cbind( A, B)

 cbind는 column bind의 약자

 cbind()도 결합하려는 두 데이터셋의 관측치가 행이 서로 동일 대상이여야하고, 행의 개수도 서로 같아야만 함 

 마찬가지로 맞지 않으면 맞지 않다고 에러메세지가 뜸

==사진==


(3) 동일 key 값 기준 결합 : merge( A, B, by='key')

 두 개의 데이터셋을 열 결합할 때, 동일 key값을 기준으로 결합해야할 경우가 있다.

cbind()를 사용할라면 일단 각 행의 관찰치가 서로 동일 대상일 때 그리고 개수가 같을 때 가능해야하는데, 만약 각 행의 관찰치가 서로 동일한 것도 있고 그렇지 않는 것도 섞여 있다면 그때는 cbind()를 사용하면 안되고 merge()를 사용해야한다.

==사진==


- merge( )함수의 join 종류


(3-1) merge( ) : Inner Join 

==사진==


(3-2) merge( ) : OuterJoin 

==사진==


(3-3) merge( ) : Left Outer Join 

==사진==


(3-4) merge( ) : Right Outer Join 

==사진== 


참고로 merge()함수는 2개의 데이터셋의 결합만 가능하다는 점을 유의해야한다.

3개 이상의 데이터셋에 대해서 key값 기준으로 merge()결합하면 에러가 남

==사진==

따라서 key값 기준으로 데이터프레임 2개씩 순차적으로 merge( ) 해야한다.


(참고 : http://rfriend.tistory.com)

'통계 > R' 카테고리의 다른 글

[Data Science] R의 dplyr 패키지  (0) 2018.02.19
[R] apply() 함수  (0) 2018.02.16
[R] 정렬하기  (0) 2018.02.16
[R] 데이터타입  (0) 2018.02.02
[Rstudio] 단축키  (0) 2018.01.18