Cara menggunakan fungsi dcast dari data.table di r


Anda dapat menggunakan fungsi dcast dari paket data.table di R untuk membentuk ulang bingkai data dari format panjang ke format lebar.

Fungsi ini sangat berguna ketika Anda ingin meringkas variabel tertentu dalam bingkai data, yang dikelompokkan berdasarkan variabel lain.

Contoh berikut menunjukkan cara menggunakan fungsi dcast dalam praktiknya dengan bingkai data berikut di R:

 library (data.table)

#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
                 points=c(18, 13, 10, 12, 16, 25, 24, 31),
                 assists=c(9, 8, 8, 5, 12, 15, 10, 7))

#convert data frame to data table
dt <- setDT(df)

#view data table
dt

   team position points assists
1: AG 18 9
2: AG 13 8
3:AF 10 8
4:AF 12 5
5: BG 16 12
6: BG 25 15
7: BF 24 10
8: BF 31 7

Contoh 1: Hitung metrik suatu variabel, yang dikelompokkan berdasarkan variabel lain

Kode berikut menunjukkan cara menggunakan fungsi dcast untuk menghitung nilai poin rata-rata, yang dikelompokkan berdasarkan variabel tim dan posisi :

 library (data.table)

#calculate mean points value by team and position
dt_new <- dcast(dt,
                team + position ~.,
                fun. aggregate = mean, 
                value. var = ' points ')

#view results
dt_new

   team position.
1:AF 11.0
2: AG 15.5
3: BF 27.5
4: BG 20.5

Contoh 2: Hitung beberapa metrik untuk suatu variabel, yang dikelompokkan berdasarkan variabel lain

Kode berikut menunjukkan cara menggunakan fungsi dcast untuk menghitung nilai poin rata-rata dan nilai poin maksimum, yang dikelompokkan berdasarkan variabel tim dan posisi :

 library (data.table)

#calculate mean and max points values by team and position
dt_new <- dcast(dt,
                team + position ~.,
                fun. aggregate = list(mean, max), 
                value. var = ' points ')

#view results
dt_new

   team position points_mean points_max
1:AF 11.0 12
2: AG 15.5 18
3: BF 27.5 31
4: BG 20.5 25

Contoh 3: Hitung metrik untuk beberapa variabel, yang dikelompokkan berdasarkan variabel lain

Kode berikut menunjukkan cara menggunakan fungsi dcast untuk menghitung nilai rata-rata poin dan rata-rata nilai bantuan , yang dikelompokkan berdasarkan variabel tim dan posisi :

 library (data.table)

#calculate mean and max points values by team and position
dt_new <- dcast(dt,
                team + position ~.,
                fun. aggregate = mean, 
                value. var = c(' points ', ' assists '))

#view results
dt_new

   team position points assists
1:AF 11.0 6.5
2: AG 15.5 8.5
3: BF 27.5 8.5
4: BG 20.5 13.5

Sumber daya tambahan

Tutorial berikut memberikan informasi tambahan tentang tabel data:

data.table vs bingkai data di R: tiga perbedaan utama
Cara memfilter data.tabel di R
Cara menggunakan rbindlist di R untuk membuat tabel data dari beberapa

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *