suhu <- c(32, 33, 31, 34, 35, 30, 29, 33, 32, 34)
mean(suhu)
## [1] 32.3
median(suhu)
## [1] 32.5
sd(suhu)
## [1] 1.888562
which.max(suhu)
## [1] 5
mean_suhu <- mean(suhu)
sum(suhu > mean_suhu)
## [1] 5
penumpang <- c(45, 52, 49, 60, 55, 70, 65)
hari <- c("Senin", "Selasa", "Rabu", "Kamis",
"Jumat", "Sabtu", "Minggu")
df_transport <- data.frame(
Hari = hari,
Penumpang = penumpang
)
df_transport
## Hari Penumpang
## 1 Senin 45
## 2 Selasa 52
## 3 Rabu 49
## 4 Kamis 60
## 5 Jumat 55
## 6 Sabtu 70
## 7 Minggu 65
mean(df_transport$Penumpang[1:5])
## [1] 52.2
df_transport$Hari[which.max(df_transport$Penumpang)]
## [1] "Sabtu"
peningkatan <- (penumpang[6] - penumpang[1]) /
penumpang[1] * 100
peningkatan
## [1] 55.55556
harga_beras <- c(12000, 12200, 12150, 12300,
12400, 12500, 12600, 12750)
minggu <- 1:8
df_beras <- data.frame(
Minggu = minggu,
Harga = harga_beras
)
df_beras
## Minggu Harga
## 1 1 12000
## 2 2 12200
## 3 3 12150
## 4 4 12300
## 5 5 12400
## 6 6 12500
## 7 7 12600
## 8 8 12750
kenaikan <- diff(harga_beras)
mean(kenaikan)
## [1] 107.1429
diff(harga_beras)
## [1] 200 -50 150 100 100 100 150
selisih <- diff(harga_beras)
which.max(selisih)
## [1] 1
populasi <- matrix(c(
50, 55, 60, 65, # Kecamatan A
40, 42, 45, 47, # Kecamatan B
70, 72, 74, 76 # Kecamatan C
), nrow = 3, byrow = TRUE)
rownames(populasi) <- c("Kec_A", "Kec_B", "Kec_C")
colnames(populasi) <- c("2019", "2020", "2021", "2022")
populasi
## 2019 2020 2021 2022
## Kec_A 50 55 60 65
## Kec_B 40 42 45 47
## Kec_C 70 72 74 76
pertumbuhan_rata <- apply(populasi, 1, function(x) {
mean(diff(x))
})
pertumbuhan_rata
## Kec_A Kec_B Kec_C
## 5.000000 2.333333 2.000000
populasi_2022 <- populasi[, "2022"]
rownames(populasi)[which.max(populasi_2022)]
## [1] "Kec_C"
total_tahun <- apply(populasi, 2, sum)
total_tahun
## 2019 2020 2021 2022
## 160 169 179 188
Bagian E : Fungsi Custom
deteksi_kenaikan <- function(harga) {
kenaikan <- diff(harga)
which(kenaikan > 200) + 1
}
Uji coba
deteksi_kenaikan(harga_beras)
## numeric(0)
Artinya tidak ada minggu yang mengalami kenaikan lebih dari Rp200.