Panduan lengkap: cara menggunakan fungsi aggregate() di r
Fungsi Agregat() di R dapat digunakan untuk menghitung statistik ringkasan untuk sekumpulan data.
Fungsi ini menggunakan sintaks dasar berikut:
agregat(x, oleh, MENYENANGKAN)
Emas:
- x : Variabel yang akan digabungkan
- by : Daftar variabel yang akan dikelompokkan
- FUN : Ringkasan statistik untuk dihitung
Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktik dengan bingkai data berikut di R:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'), position=c('G', 'G', 'F', 'G', 'F', 'F'), points=c(99, 90, 86, 88, 95, 99), assists=c(33, 28, 31, 39, 34, 23), rebounds=c(30, 28, 24, 24, 28, 33)) #view data frame df team position points assists rebounds 1 AG 99 33 30 2 AG 90 28 28 3 AF 86 31 24 4 BG 88 39 24 5 BF 95 34 28 6 BF 99 23 33
Contoh 1: Rata-rata keseluruhan per kelompok
Kode berikut menunjukkan cara menggunakan fungsi Aggregate() untuk menghitung jumlah rata-rata poin yang dicetak per tim:
#find mean points by team
aggregate(df$points, by=list(df$team), FUN=mean)
Group.1 x
1 A 91.66667
2 B 94.00000
Ini memberitahu kita:
- Pemain Tim A mencetak rata-rata 91,67 poin per game.
- Pemain tim B mencetak rata-rata 94 poin per game.
Perhatikan bahwa Anda juga dapat mengubah nama kolom di output menggunakan fungsi colnames() :
#find mean points by team agg <- aggregate(df$points, by=list(df$team), FUN=mean) #rename columns in output colnames(agg) <- c(' Team ', ' Mean_Points ') #viewoutput agg Team Mean_Points 1 A 91.66667 2 B 94.00000
Contoh 2: Akun gabungan berdasarkan grup
Kode berikut menunjukkan cara menggunakan fungsi Aggregate() untuk menghitung jumlah pemain per tim:
#count number of players per team
aggregate(df$points, by=list(df$team), FUN=length)
Group.1 x
1 to 3
2 B 3
Ini memberitahu kita:
- Tim A terdiri dari 3 pemain.
- Tim B terdiri dari 3 pemain.
Contoh 3: Jumlah keseluruhan per kelompok
Kode berikut menunjukkan cara menggunakan fungsi Aggregate() untuk menghitung jumlah poin yang dicetak oleh masing-masing tim:
#find sum of points scored by team
aggregate(df$points, by=list(df$team), FUN=sum)
Group.1 x
1 to 275
2 B 282
Ini memberitahu kita:
- Tim A mencetak total 275 poin.
- Tim B mencetak total 282 poin.
Contoh 4: Gabungkan beberapa kolom
Kode berikut menunjukkan cara menggunakan fungsi Aggregate() untuk menemukan jumlah rata-rata poin yang dicetak, dikelompokkan berdasarkan tim dan posisi:
#find mean of points scored, grouped by team and position
aggregate(df$points, by=list(df$team, df$position), FUN=mean)
Group.1 Group.2 x
1AF 86.0
2 BF 97.0
3 AG 94.5
4 BG 88.0
Ini memberitahu kita:
- Pemain di posisi “F” di Tim A mencetak rata-rata 86 poin.
- Pemain posisi “F” Tim B mencetak rata-rata 97 poin.
- Pemain di posisi “G” di Tim A mencetak rata-rata 94,5 poin.
- Pemain di posisi “G” di Tim B mencetak rata-rata 88 poin.
Sumber daya tambahan
Tutorial berikut menjelaskan cara menggunakan fungsi umum lainnya di R:
Cara menggunakan fungsi table() di R
Cara menggunakan fungsi gsub() di R
Cara menggunakan fungsi ringkasan() di R