TUGAS UAS MANDAREL


Alden Nabil Wibowo Effendy - G1401231088

Mengimpor Tidyverse dan Library yang diperlukan

Dataset yang akan kita gunakan adalah mtcars

Dataset mtcars adalah dataset bawaan di R yang berisi data teknis dan performa 32 mobil yang diuji oleh Motor Trend Magazine pada tahun 1974. Berikut adalah penjelasan dari setiap variabel dalam dataset mtcars:

Variabel Tipe Data Penjelasan
mpg Numerik Miles per gallon (mil per galon), mengukur efisiensi bahan bakar.
cyl Numerik Jumlah silinder dalam mesin (4, 6, atau 8).
disp Numerik Displacement (cc), volume silinder mesin (dalam inci kubik).
hp Numerik Horsepower (tenaga kuda), ukuran daya mesin.
drat Numerik Rasio gigi akhir (rear axle ratio).
wt Numerik Berat mobil dalam satuan ribuan pound.
qsec Numerik Waktu yang diperlukan untuk menempuh 1/4 mil (dalam detik), menunjukkan akselerasi.
vs Kategori Tipe mesin: 0 = mesin V-shaped, 1 = mesin straight.
am Kategori Tipe transmisi: 0 = otomatis, 1 = manual.
gear Numerik Jumlah gigi pada transmisi (3, 4, atau 5).
carb Numerik Jumlah karburator.

Impor library tidyverse dan dataset mtcars

library(tidyverse) 
## Warning: package 'tidyverse' was built under R version 4.4.2
## Warning: package 'readr' was built under R version 4.4.2
## Warning: package 'dplyr' was built under R version 4.4.2
## Warning: package 'forcats' was built under R version 4.4.2
## Warning: package 'lubridate' was built under R version 4.4.2
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.1     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(datasets) 
data(mtcars) 
mtcars <- tibble::as_tibble(mtcars)

Impor Library dplyr, melihat kelas, dan melihat table dari dataset

library(dplyr)
class(mtcars) 
## [1] "tbl_df"     "tbl"        "data.frame"
view(mtcars) 
head(mtcars)
## # A tibble: 6 × 11
##     mpg   cyl  disp    hp  drat    wt  qsec    vs    am  gear  carb
##   <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1  21       6   160   110  3.9   2.62  16.5     0     1     4     4
## 2  21       6   160   110  3.9   2.88  17.0     0     1     4     4
## 3  22.8     4   108    93  3.85  2.32  18.6     1     1     4     1
## 4  21.4     6   258   110  3.08  3.22  19.4     1     0     3     1
## 5  18.7     8   360   175  3.15  3.44  17.0     0     0     3     2
## 6  18.1     6   225   105  2.76  3.46  20.2     1     0     3     1

Memilih sebagian kolom dari database

Gunakan select() untuk memilih sebagian kolom yang diperlukan di database

data1 <- mtcars %>% 
  select(mpg, am, disp, cyl) 
view(data1)

Mengambil data (Arrange)

Mengambil data mobil dengan jumlah silinder mesin lebih dari 4, data diurutkan berdasarkan konsumsi BBM paling irit

data_silinder <- data1 %>% 
  filter(cyl>4) %>% 
  arrange(mpg) 
print(data_silinder)
## # A tibble: 21 × 4
##      mpg    am  disp   cyl
##    <dbl> <dbl> <dbl> <dbl>
##  1  10.4     0  472      8
##  2  10.4     0  460      8
##  3  13.3     0  350      8
##  4  14.3     0  360      8
##  5  14.7     0  440      8
##  6  15       1  301      8
##  7  15.2     0  276.     8
##  8  15.2     0  304      8
##  9  15.5     0  318      8
## 10  15.8     1  351      8
## # ℹ 11 more rows

(Data Aggregating) menggunakan summarize()

Mendapatkan data rata-rata dari konsumsi BBM dan dikategorikan berdasarkan jenis transmisi. Lalu membandingkan konsumsi BBM antara transmisi AT dan MT untuk mobil di bawah 120 inci kubik

mtcars %>% summarise(avg_mpg = mean(mpg)) 
## # A tibble: 1 × 1
##   avg_mpg
##     <dbl>
## 1    20.1
mtcars %>% group_by(am) %>% 
  summarise (mean=mean(mpg))
## # A tibble: 2 × 2
##      am  mean
##   <dbl> <dbl>
## 1     0  17.1
## 2     1  24.4

Membuat Variabel Baru

Memilih kolom hp, wt, dan mpg serta membuat kolom baru bernama powerToWeight, yaitu hasil operasi jumlah horsepower (hp) dibagi dengan berat mobil (wt). Setelah itu data diurutkan berdasarkan rasio power to weight terbesar

data2 <- mtcars %>% 
  select(hp,wt,mpg) %>% 
  mutate(powerToWeight=hp/wt) %>% 
  arrange(desc(powerToWeight)) 
print(data2)
## # A tibble: 32 × 4
##       hp    wt   mpg powerToWeight
##    <dbl> <dbl> <dbl>         <dbl>
##  1   335  3.57  15            93.8
##  2   264  3.17  15.8          83.3
##  3   113  1.51  30.4          74.7
##  4   245  3.57  14.3          68.6
##  5   245  3.84  13.3          63.8
##  6   175  2.77  19.7          63.2
##  7   175  3.44  18.7          50.9
##  8   180  3.73  17.3          48.3
##  9   180  3.78  15.2          47.6
## 10   175  3.84  19.2          45.5
## # ℹ 22 more rows