A: 열 이름으로 데이터 프레임을 병합하는 방법
다음 방법을 사용하여 R에서 열 이름으로 데이터 프레임을 병합할 수 있습니다.
방법 1: 일치하는 열 이름을 기준으로 병합
merge(df1, df2, by=' var1 ')
방법 2: 일치하지 않는 열 이름을 기준으로 병합
merge(df1, df2, by. x = ' var1 ', by. y = ' variable1 ')
방법 3: 일치하는 여러 열 이름을 기반으로 병합
merge(df1, df2, by=c(' var1 ', ' var2 '))
방법 4: 일치하지 않는 여러 열 이름을 기반으로 병합
merge(df1, df2, by. x =c(' var1 ', ' var2 '), by. y =c(' variable1 ', ' variable2 '))
다음 예에서는 각 방법을 실제로 사용하는 방법을 보여줍니다.
예시 1: 일치하는 열 이름을 기준으로 병합
다음 코드는 일치하는 열 이름을 기반으로 R에서 두 개의 데이터 프레임을 병합하는 방법을 보여줍니다.
#define data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team=c('A', 'B', 'C', 'D'),
rebounds=c(22, 31, 29, 20))
#merge based on one column with matching name
merge(df1, df2, by=' team ')
team points rebounds
1 A 88 22
2 B 98 31
3 C 104 29
4 D 100 20
결과는 팀 열을 사용하여 각 데이터 프레임의 행과 일치하는 데이터 프레임입니다.
예시 2: 일치하지 않는 열 이름을 기준으로 병합
다음 코드는 일치하지 않는 열 이름을 기반으로 R에서 두 개의 데이터 프레임을 병합하는 방법을 보여줍니다.
#define data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team_name=c('A', 'B', 'C', 'D'),
rebounds=c(22, 31, 29, 20))
#merge based on one column with unmatched name
merge(df1, df2, by. x = ' team ', by. y = ' team_name ')
team points rebounds
1 A 88 22
2 B 98 31
3 C 104 29
4 D 100 20
결과는 첫 번째 데이터 프레임의 팀 열과 두 번째 데이터 프레임의 team_name 열을 사용하여 행을 일치시키는 데이터 프레임입니다.
예시 3: 일치하는 여러 열 이름을 기반으로 병합
다음 코드는 일치하는 여러 열 이름을 기반으로 R에서 두 데이터 프레임을 병합하는 방법을 보여줍니다.
#define data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
rebounds=c(22, 31, 29, 20))
#merge based on multiple columns with matching names
merge(df1, df2, by=c(' team ', ' position '))
team position points rebounds
1 AF 98 31
2 AG 88 22
3 BF 100 20
4 BG 104 29
결과는 각 데이터 프레임의 팀 및 위치 열을 사용하여 각 데이터 프레임의 행과 일치하는 데이터 프레임입니다.
예 4: 일치하지 않는 여러 열 이름을 기반으로 병합
다음 코드는 일치하지 않는 여러 열 이름을 기반으로 R에서 두 데이터 프레임을 병합하는 방법을 보여줍니다.
#define data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
position=c('G', 'F', 'G', 'F'),
dots=c(88, 98, 104, 100))
df2 <- data. frame (team_name=c('A', 'A', 'B', 'B'),
position_name=c('G', 'F', 'G', 'F'),
rebounds=c(22, 31, 29, 20))
#merge based on multiple columns with matching names
merge(df1, df2, by. x =c(' team ', ' position '), by. y =c(' team_name ', ' position_name '))
team position points rebounds
1 AF 98 31
2 AG 88 22
3 BF 100 20
4 BG 104 29
결과는 첫 번째 데이터 프레임의 team 및 position 열과 두 번째 데이터 프레임의 team_name 및 position_name 열을 사용하여 행을 일치시키는 데이터 프레임입니다.
추가 리소스
다음 튜토리얼에서는 R에서 다른 일반적인 데이터 프레임 기능을 수행하는 방법을 설명합니다.
R에서 왼쪽 조인을 수행하는 방법
R에서 내부 조인을 수행하는 방법
R에서 VLOOKUP을 수행하는 방법
R의 데이터 프레임에 행을 추가하는 방법