Cara cepat membuat pivottable di r


Di Excel, tabel pivot menyediakan cara mudah untuk mengelompokkan dan meringkas data.

Misalnya, jika kita memiliki kumpulan data berikut di Excel, kita bisa menggunakan tabel pivot untuk meringkas total penjualan dengan cepat berdasarkan wilayah:

Ini memberitahu kita:

  • Wilayah A memiliki total 51 penjualan
  • Wilayah B memiliki total 85 penjualan
  • Wilayah C mencapai 140 total penjualan

Atau kita dapat meringkasnya dengan metrik lain seperti rata-rata penjualan berdasarkan wilayah:

Ternyata kita bisa dengan cepat membuat tabel pivot serupa di R menggunakan fungsi group_by() dan ringkasan() dari paket dplyr .

Tutorial ini memberikan beberapa contoh bagaimana melakukan hal ini.

Contoh: Membuat PivotTable di R

Pertama, mari buat kumpulan data yang sama di R yang kita gunakan pada contoh sebelumnya dari Excel:

 #create data frame
df <- data. frame (region=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C'),
                 device=c('X', 'X', 'Y', 'X', 'Y', 'Y', 'X', 'X', 'Y', 'Y'),
                 sales=c(12, 18, 21, 22, 34, 29, 38, 36, 34, 32))

#view data frame
df

   region device sales
1AX 12
2AX18
3 AY 21
4 BX22
5 BY 34
6 BY 29
7 CX 38
8CX36
9 CY 34
10 CY 32

Selanjutnya, mari muat paket dplyr dan gunakan fungsi group_by() dan ringkasan() untuk mengelompokkan berdasarkan wilayah dan mencari jumlah penjualan berdasarkan wilayah:

 library (dplyr)

#find sum of sales by region
df %>%
  group_by (region) %>% 
  summarize (sum_sales = sum (sales))

# A tibble: 3 x 2
  region sum_sales
        
1 to 51
2 B 85
3 C 140

Kita dapat melihat bahwa angka-angka ini cocok dengan angka-angka yang ditunjukkan pada contoh pengantar Excel.

Kami juga dapat menghitung rata-rata penjualan berdasarkan wilayah:

 #find average sales by region
df %>%
  group_by (region) %>% 
  summarize (mean_sales = mean (sales))

# A tibble: 3 x 2
  region mean_sales
        
1 to 17  
2 B 28.3
3 C 35

Sekali lagi, angka-angka ini cocok dengan angka-angka yang ditunjukkan pada contoh Excel sebelumnya.

Perhatikan bahwa kita juga dapat mengelompokkan berdasarkan beberapa variabel. Misalnya, kami dapat menemukan jumlah penjualan yang dikelompokkan berdasarkan wilayah dan jenis perangkat:

 #find sum of sales by region and device type
df %>%
  group_by (region, device) %>% 
  summarize (sum_sales = sum (sales))

# A tibble: 6 x 3
# Groups: region [3]
  region device sum_sales
          
1AX30
2 AY 21
3 BX22
4 BY 63
5 CX 74
6 CY 66

Sumber daya tambahan

Bagaimana melakukan VLOOKUP (mirip dengan Excel) di R
Panduan Lengkap: Cara Mengelompokkan dan Meringkas Data di R

Tambahkan komentar

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