library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.2.2
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.3.6 ✔ purrr 0.3.5
## ✔ tibble 3.1.8 ✔ dplyr 1.0.10
## ✔ tidyr 1.2.1 ✔ stringr 1.4.1
## ✔ readr 2.1.4 ✔ forcats 0.5.2
## Warning: package 'readr' was built under R version 4.2.3
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
library(nycflights13)
## Warning: package 'nycflights13' was built under R version 4.2.3
library(Lahman)
## Warning: package 'Lahman' was built under R version 4.2.3
Misalkan kita ingin membuat tabel data yang memeringkat
pabrikan mpgmenurut jarak tempuh bahan bakar rata-rata
untuk setiap pabrikan. Ini akan memerlukan pengelompokan mobil
berdasarkan manufacturernilai dan kemudian menghitung nilai
rata-rata hwyuntuk setiap kelompok. Ini adalah
contoh ringkasan yang dikelompokkan dan dilakukan dengan
kombinasi fungsi group_bydan summarize. Begini
cara melakukannya:
mpg %>%
group_by(manufacturer) %>%
summarize(average_highway_mileage = mean(hwy)) %>%
arrange(desc(average_highway_mileage))
## # A tibble: 15 × 2
## manufacturer average_highway_mileage
## <chr> <dbl>
## 1 honda 32.6
## 2 volkswagen 29.2
## 3 hyundai 26.9
## 4 audi 26.4
## 5 pontiac 26.4
## 6 subaru 25.6
## 7 toyota 24.9
## 8 nissan 24.6
## 9 chevrolet 21.9
## 10 ford 19.4
## 11 mercury 18
## 12 dodge 17.9
## 13 jeep 17.6
## 14 lincoln 17
## 15 land rover 16.5
Beberapa catatan:
group_bydan summarizeselalu digunakan
bersama.
summarizebekerja mirip dengan
mutatemembuat kolom baru dengan nama yang diberikan
pengguna ( average_highway_mileagedi atas).
meanadalah fungsi bawaan yang menghitung
hwynilai rata-rata di setiap grup.
Tabel data yang ditampilkan hanya akan menampilkan kolom yang dikelompokkan dan kolom ringkasan yang dihitung.
Anda juga dapat mengelompokkan berdasarkan lebih dari satu variabel. Misalkan kita ingin memberi peringkat jarak tempuh bahan bakar jalan raya berdasarkan pabrikan dan model:
mpg %>%
group_by(manufacturer, model) %>%
summarize(average_highway_mileage = mean(hwy)) %>%
arrange(desc(average_highway_mileage))
## `summarise()` has grouped output by 'manufacturer'. You can override using the
## `.groups` argument.
## # A tibble: 38 × 3
## # Groups: manufacturer [15]
## manufacturer model average_highway_mileage
## <chr> <chr> <dbl>
## 1 toyota corolla 34
## 2 volkswagen new beetle 32.8
## 3 honda civic 32.6
## 4 volkswagen jetta 29.1
## 5 nissan altima 28.7
## 6 audi a4 28.3
## 7 toyota camry 28.3
## 8 toyota camry solara 28.1
## 9 hyundai sonata 27.7
## 10 chevrolet malibu 27.6
## # … with 28 more rows
meanhanyalah salah satu contoh ringkasan statistik yang
dapat digunakan di dalam summarize. Berikut adalah beberapa
yang lebih umum:
Ada banyak orang lain juga. Sangat mungkin untuk menghitung lebih
dari satu statistik ringkasan dalam
satu summarizepanggilan. Nyatanya, setiap kali Anda
menghitung nilai rata-rata, sebaiknya hitung juga hitungannya. Ini
karena membandingkan rata-rata benar-benar hanya sesuai ketika kelompok
memiliki jumlah pengamatan yang kira-kira sama. Jika kita melakukan ini
untuk contoh jarak tempuh jalan raya rata-rata di atas, kita
mendapatkan:
mpg %>%
group_by(manufacturer) %>%
summarize(average_highway_mileage = mean(hwy),
count = n()) %>%
arrange(desc(average_highway_mileage))
## # A tibble: 15 × 3
## manufacturer average_highway_mileage count
## <chr> <dbl> <int>
## 1 honda 32.6 9
## 2 volkswagen 29.2 27
## 3 hyundai 26.9 14
## 4 audi 26.4 18
## 5 pontiac 26.4 5
## 6 subaru 25.6 14
## 7 toyota 24.9 34
## 8 nissan 24.6 13
## 9 chevrolet 21.9 19
## 10 ford 19.4 25
## 11 mercury 18 4
## 12 dodge 17.9 37
## 13 jeep 17.6 8
## 14 lincoln 17 3
## 15 land rover 16.5 4
Oleh karena itu kami ingin menahan diri untuk tidak menyatakan bahwa Pontiac memiliki efisiensi bahan bakar yang lebih baik daripada Toyota karena Pontiac relatif kurang terwakili dalam kumpulan data.