# Cek data awal
head(airquality)
## Ozone Solar.R Wind Temp Month Day
## 1 41 190 7.4 67 5 1
## 2 36 118 8.0 72 5 2
## 3 12 149 12.6 74 5 3
## 4 18 313 11.5 62 5 4
## 5 NA NA 14.3 56 5 5
## 6 28 NA 14.9 66 5 6
# Memulai library dplyr
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.4.2
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
# Meringkas data dengan rata-rata Ozon dan Suhu
ringkasan <- airquality %>%
summarise(
Avg_Ozone = mean(Ozone, na.rm = TRUE), # Rata-rata kadar Ozon, abaikan NA
Avg_Temp = mean(Temp, na.rm = TRUE) # Rata-rata suhu, abaikan NA
)
ringkasan
## Avg_Ozone Avg_Temp
## 1 42.12931 77.88235
# Mengurutkan data berdasarkan Ozone secara descending
data_urut <- airquality %>%
arrange(desc(Ozone)) # Mengurutkan kolom Ozone dari nilai tertinggi ke terendah
head(data_urut)
## Ozone Solar.R Wind Temp Month Day
## 1 168 238 3.4 81 8 25
## 2 135 269 4.1 84 7 1
## 3 122 255 4.0 89 8 7
## 4 118 225 2.3 94 8 29
## 5 115 223 5.7 79 5 30
## 6 110 207 8.0 90 8 9
# Menyaring data hanya untuk bulan Mei
data_bulan_mei <- airquality %>%
filter(Month == 5) # Memfilter data untuk Bulan = 5 (Mei)
head(data_bulan_mei)
## Ozone Solar.R Wind Temp Month Day
## 1 41 190 7.4 67 5 1
## 2 36 118 8.0 72 5 2
## 3 12 149 12.6 74 5 3
## 4 18 313 11.5 62 5 4
## 5 NA NA 14.3 56 5 5
## 6 28 NA 14.9 66 5 6
# Menambah kolom baru dengan Suhu dalam Fahrenheit
airquality_with_fahrenheit <- airquality %>%
mutate(Temp_Fahrenheit = Temp * 9/5 + 32) # Konversi suhu dari Celcius ke Fahrenheit
head(airquality_with_fahrenheit)
## Ozone Solar.R Wind Temp Month Day Temp_Fahrenheit
## 1 41 190 7.4 67 5 1 152.6
## 2 36 118 8.0 72 5 2 161.6
## 3 12 149 12.6 74 5 3 165.2
## 4 18 313 11.5 62 5 4 143.6
## 5 NA NA 14.3 56 5 5 132.8
## 6 28 NA 14.9 66 5 6 150.8
# Memilih kolom Ozone, Temp, dan Month saja
data_terpilih <- airquality %>%
select(Ozone, Temp, Month)
head(data_terpilih)
## Ozone Temp Month
## 1 41 67 5
## 2 36 72 5
## 3 12 74 5
## 4 18 62 5
## 5 NA 56 5
## 6 28 66 5
# Kombinasi: Memilih kolom, menyaring bulan Mei, dan mengurutkan berdasarkan Temp
data_combined <- airquality %>%
select(Ozone, Temp, Month) %>% # Memilih kolom yang diperlukan
filter(Month == 5) %>% # Menyaring data untuk bulan Mei
arrange(Temp) # Mengurutkan berdasarkan Temp secara ascending
head(data_combined)
## Ozone Temp Month
## 1 NA 56 5
## 2 6 57 5
## 3 NA 57 5
## 4 NA 57 5
## 5 18 58 5
## 6 NA 58 5
# Membuat scatterplot antara Suhu dan Ozon
plot(airquality$Temp, airquality$Ozone,
xlab = "Temperature (°C)", # Label sumbu-x
ylab = "Ozone (ppb)", # Label sumbu-y
main = "Scatterplot Ozone vs Temperature", # Judul plot
pch = 19, col = "blue") # besar titik dan warnanya
