Cara menghitung statistik ringkasan di r menggunakan dplyr


Anda dapat menggunakan sintaks berikut untuk menghitung statistik ringkasan untuk semua variabel numerik dalam bingkai data di R menggunakan fungsi dalam paket dplyr :

 library (dplyr)
library (tidyr)

df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

Fungsi summarise() berasal dari paket dplyr dan digunakan untuk menghitung ringkasan statistik variabel.

Fungsi pivot_longer() berasal dari paket Tidyr dan digunakan untuk memformat output agar lebih mudah dibaca.

Sintaks khusus ini menghitung ringkasan statistik berikut untuk setiap variabel numerik dalam bingkai data:

  • Nilai minimal
  • Nilai median
  • Nilai rata-rata
  • Deviasi standar
  • persentil ke-25
  • persentil ke-75
  • Nilai maksimum

Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.

Contoh: Hitung ringkasan statistik di R menggunakan dplyr

Misalkan kita memiliki kerangka data berikut di R yang berisi informasi tentang berbagai pemain bola basket:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(12, 15, 19, 14, 24, 25, 39, 34),
                 assists=c(6, 8, 8, 9, 12, 6, 8, 10),
                 rebounds=c(9, 9, 8, 10, 8, 4, 3, 3))

#view data frame
df

  team points assists rebounds
1 to 12 6 9
2 A 15 8 9
3 A 19 8 8
4 A 14 9 10
5 B 24 12 8
6 B 25 6 4
7 B 39 8 3
8 B 34 10 3

Kita dapat menggunakan sintaks berikut untuk menghitung statistik ringkasan untuk setiap variabel numerik dalam bingkai data:

 library (dplyr)
library (tidyr)

#calculate summary statistics for each numeric variable in data frame
df %>% summarise(across(where(is. numeric ), .fns = 
                     list(min = min,
                          median = median,
                          mean = mean,
                          stdev = sd,
                          q25 = ~quantile(., 0.25 ),
                          q75 = ~quantile(., 0.75 ),
                          max = max))) %>%
  pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))

# A tibble: 3 x 8
  variable min median mean stdev q25 q75 max
             
1 points 12 21.5 22.8 9.74 14.8 27.2 39
2 assists 6 8 8.38 2.00 7.5 9.25 12
3 rebounds 3 8 6.75 2.92 3.75 9 10

  Dari hasilnya kita dapat melihat:

  • Nilai minimum pada kolom poin adalah 12 .
  • Nilai median pada kolom poin adalah 21.5 .
  • Nilai rata-rata pada kolom poin adalah 22,8 .

Dan seterusnya.

Catatan : Dalam contoh ini, kami menggunakan fungsi dplyrcross() . Anda dapat menemukan dokumentasi lengkap untuk fungsi ini di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara menjalankan fungsi umum lainnya menggunakan dplyr:

Cara meringkas data tetapi tetap menggunakan semua kolom menggunakan dplyr
Cara meringkas beberapa kolom menggunakan dplyr
Cara menghitung simpangan baku menggunakan dplyr

Tambahkan komentar

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