R에서 행 이름으로 데이터 프레임을 병합하는 방법


다음 기본 구문을 사용하여 행 이름을 기반으로 R의 두 데이터 프레임을 병합할 수 있습니다.

 #inner join
merge(df1, df2, by= 0 )

#left join
merge(df1, df2, by= 0 , all. x = TRUE )

#outerjoin
merge(df1, df2, by= 0 , all= TRUE )

by=0 인수를 사용하면 데이터 블록의 행 이름을 사용하여 병합하고 싶다고 R에 알릴 수 있습니다.

다음 예에서는 다음 두 데이터 프레임에 각 메서드를 사용하는 방법을 보여줍니다.

 #create first data frame
df1 <- data. frame (points=c(99, 90, 86, 88, 95),
                  assists=c(33, 28, 31, 39, 34))

rownames(df1) <- c(1, 2, 3, 4, 5)

df1

  assist points
1 99 33
2 90 28
3 86 31
4 88 39
5 95 34

#create second data frame
df2 <- data. frame (rebounds=c(17, 15, 22, 26, 25),
                  blocks=c(7, 7, 15, 12, 14))

rownames(df2) <- c(3, 4, 5, 6, 7)

df2

  rebound blocks
3 17 7
4 15 7
5 22 15
6 26 12
7 25 14

예시 1: 행 이름을 사용하여 내부 조인 수행

다음 코드는 행 이름을 사용하여 두 데이터 프레임에서 내부 조인을 수행하는 방법을 보여줍니다.

 #perform inner join using row names
merge(df1, df2, by= 0 )

  Row.names points assists rebounds blocks
1 3 86 31 17 7
2 4 88 39 15 7
3 5 95 34 22 15

행 이름이 두 데이터 프레임 모두에 속하는 행만 최종 병합된 데이터 프레임에 유지됩니다.

예 2: 행 이름을 사용하여 왼쪽 조인 수행

다음 코드는 행 이름을 사용하여 두 데이터 프레임에 대해 왼쪽 조인을 수행하는 방법을 보여줍니다.

 #perform left join using row names
merge(df1, df2, by= 0 , all. x = TRUE )

  Row.names points assists rebounds blocks
1 1 99 33 NA NA
2 2 90 28 NA NA
3 3 86 31 17 7
4 4 88 39 15 7
5 5 95 34 22 15

첫 번째 데이터 프레임의 모든 행은 병합된 최종 데이터 프레임에 유지됩니다.

예 3: 행 이름을 사용하여 외부 조인 수행

다음 코드는 행 이름을 사용하여 두 데이터 프레임에서 외부 조인을 수행하는 방법을 보여줍니다.

 #perform outer join using row names
merge(df1, df2, by= 0 , all= TRUE )

  Row.names points assists rebounds blocks
1 1 99 33 NA NA
2 2 90 28 NA NA
3 3 86 31 17 7
4 4 88 39 15 7
5 5 95 34 22 15
6 6 NA NA 26 12
7 7 NA NA 25 14

두 데이터 프레임의 모든 행은 최종 병합된 데이터 프레임에 유지됩니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 데이터 프레임 기능을 수행하는 방법을 설명합니다.

R에서 왼쪽 조인을 수행하는 방법
R에서 VLOOKUP을 수행하는 방법
R의 데이터 프레임에 행을 추가하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다