library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.3     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ ggplot2   3.4.4     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.0
## ✔ 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)

#Memanggil Data Titanic
data(Titanic)
Titanic <-tibble::as_tibble(Titanic)

#Mendapatkan atau menetapkan kelas objek
class(Titanic)
## [1] "tbl_df"     "tbl"        "data.frame"
#Memberikan ringkasan atau tampilan yang lebih lengkap tentang struktur suatu dataset
glimpse(Titanic)
## Rows: 32
## Columns: 5
## $ Class    <chr> "1st", "2nd", "3rd", "Crew", "1st", "2nd", "3rd", "Crew", "1s…
## $ Sex      <chr> "Male", "Male", "Male", "Male", "Female", "Female", "Female",…
## $ Age      <chr> "Child", "Child", "Child", "Child", "Child", "Child", "Child"…
## $ Survived <chr> "No", "No", "No", "No", "No", "No", "No", "No", "No", "No", "…
## $ n        <dbl> 0, 0, 35, 0, 0, 0, 17, 0, 118, 154, 387, 670, 4, 13, 89, 3, 5…
#Menampilkan beberapa baris pertama dari suatu objek
head(Titanic)
## # A tibble: 6 × 5
##   Class Sex    Age   Survived     n
##   <chr> <chr>  <chr> <chr>    <dbl>
## 1 1st   Male   Child No           0
## 2 2nd   Male   Child No           0
## 3 3rd   Male   Child No          35
## 4 Crew  Male   Child No           0
## 5 1st   Female Child No           0
## 6 2nd   Female Child No           0
#Menghitung berapa yang Selamat dan Tidak Selamat
SurviveOrNo <- Titanic %>% group_by(Survived) %>% summarize (NumOfSurvived=sum(n))
head(SurviveOrNo)
## # A tibble: 2 × 2
##   Survived NumOfSurvived
##   <chr>            <dbl>
## 1 No                1490
## 2 Yes                711
#Arrange
#mengurutkan berdasarkan yang paling dikit selamat
Titanic%>%arrange(n)%>%print(n=32)
## # A tibble: 32 × 5
##    Class Sex    Age   Survived     n
##    <chr> <chr>  <chr> <chr>    <dbl>
##  1 1st   Male   Child No           0
##  2 2nd   Male   Child No           0
##  3 Crew  Male   Child No           0
##  4 1st   Female Child No           0
##  5 2nd   Female Child No           0
##  6 Crew  Female Child No           0
##  7 Crew  Male   Child Yes          0
##  8 Crew  Female Child Yes          0
##  9 1st   Female Child Yes          1
## 10 Crew  Female Adult No           3
## 11 1st   Female Adult No           4
## 12 1st   Male   Child Yes          5
## 13 2nd   Male   Child Yes         11
## 14 2nd   Female Adult No          13
## 15 3rd   Male   Child Yes         13
## 16 2nd   Female Child Yes         13
## 17 3rd   Female Child Yes         14
## 18 2nd   Male   Adult Yes         14
## 19 3rd   Female Child No          17
## 20 Crew  Female Adult Yes         20
## 21 3rd   Male   Child No          35
## 22 1st   Male   Adult Yes         57
## 23 3rd   Male   Adult Yes         75
## 24 3rd   Female Adult Yes         76
## 25 2nd   Female Adult Yes         80
## 26 3rd   Female Adult No          89
## 27 1st   Male   Adult No         118
## 28 1st   Female Adult Yes        140
## 29 2nd   Male   Adult No         154
## 30 Crew  Male   Adult Yes        192
## 31 3rd   Male   Adult No         387
## 32 Crew  Male   Adult No         670
#Menghitung berapa yang Selamat berdasarkan usia
SurvivedByAge <- Titanic %>% filter(Survived=="Yes") %>% group_by(Age) %>% summarize (Survive=sum(n))
head(SurvivedByAge)
## # A tibble: 2 × 2
##   Age   Survive
##   <chr>   <dbl>
## 1 Adult     654
## 2 Child      57