A: cara menggabungkan bingkai data berdasarkan nama kolom
Anda dapat menggunakan metode berikut untuk menggabungkan bingkai data berdasarkan nama kolom di R:
Metode 1: Gabungkan berdasarkan nama kolom yang cocok
merge(df1, df2, by=' var1 ')
Metode 2: Gabungkan berdasarkan nama kolom yang tidak cocok
merge(df1, df2, by. x = ' var1 ', by. y = ' variable1 ')
Metode 3: Gabungkan berdasarkan beberapa nama kolom yang cocok
merge(df1, df2, by=c(' var1 ', ' var2 '))
Metode 4: Gabungkan berdasarkan beberapa nama kolom yang tidak cocok
merge(df1, df2, by. x =c(' var1 ', ' var2 '), by. y =c(' variable1 ', ' variable2 '))
Contoh berikut menunjukkan cara menggunakan masing-masing metode dalam praktik.
Contoh 1: Gabungkan berdasarkan nama kolom yang cocok
Kode berikut menunjukkan cara menggabungkan dua bingkai data di R berdasarkan nama kolom yang cocok:
#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
Hasilnya adalah bingkai data yang cocok dengan baris di setiap bingkai data menggunakan kolom tim .
Contoh 2: Gabungkan berdasarkan nama kolom yang tidak cocok
Kode berikut menunjukkan cara menggabungkan dua bingkai data di R berdasarkan nama kolom yang tidak cocok:
#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
Hasilnya adalah bingkai data yang cocok dengan baris menggunakan kolom tim di bingkai data pertama dan kolom nama_tim di bingkai data kedua.
Contoh 3: Gabungkan berdasarkan beberapa nama kolom yang cocok
Kode berikut menunjukkan cara menggabungkan dua bingkai data di R berdasarkan beberapa nama kolom yang cocok:
#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
Hasilnya adalah bingkai data yang cocok dengan baris-baris di setiap bingkai data menggunakan kolom tim dan posisi di setiap bingkai data.
Contoh 4: Gabungkan berdasarkan beberapa nama kolom yang tidak cocok
Kode berikut menunjukkan cara menggabungkan dua bingkai data di R berdasarkan beberapa nama kolom yang tidak cocok:
#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
Hasilnya adalah bingkai data yang cocok dengan baris menggunakan kolom tim dan posisi di bingkai data pertama serta kolom nama_tim dan nama_posisi di bingkai data kedua.
Sumber daya tambahan
Tutorial berikut menjelaskan cara menjalankan fungsi bingkai data umum lainnya di R:
Bagaimana cara melakukan gabung kiri di R
Bagaimana cara melakukan inner join di R
Bagaimana cara melakukan VLOOKUP di R
Bagaimana cara menambahkan baris ke bingkai data di R