SOAL NO 1 A. Hitung statistik deskriptif (mean, median, standar deviasi) untuk variabel Ozone Memuat Data
data("airquality")
Menampilkan Data
head(data)
##
## 1 function (..., list = character(), package = NULL, lib.loc = NULL,
## 2 verbose = getOption("verbose"), envir = .GlobalEnv, overwrite = TRUE)
## 3 {
## 4 fileExt <- function(x) {
## 5 db <- grepl("\\\\.[^.]+\\\\.(gz|bz2|xz)$", x)
## 6 ans <- sub(".*\\\\.", "", x)
Menghitung statistik deskriptif untuk variabel Ozone
mean_ozone <- mean(airquality$Ozone, na.rm = TRUE)
median_ozone <- median(airquality$Ozone, na.rm = TRUE)
sd_ozone <- sd(airquality$Ozone, na.rm = TRUE)
Menampilkan Hasil
cat("Statistik Deskriptif untuk Ozone:\n")
## Statistik Deskriptif untuk Ozone:
cat("Mean:", mean_ozone, "\n")
## Mean: 42.12931
cat("Median:", median_ozone, "\n")
## Median: 31.5
cat("Standar Deviasi:", sd_ozone, "\n")
## Standar Deviasi: 32.98788
B.Buat diagram pencar (scatter plot) antara variabel Wind dan Temp
Scatter plot antara Wind dan Temp
plot(airquality$Wind, airquality$Temp,
main = "Scatter Plot antara Wind dan Temp",
xlab = "Wind (Kecepatan Angin)",
ylab = "Temp (Temperatur)",
col = "blue",
pch = 16)
SOAL NO 2 Buat bar chart untuk variabel cyl dan tambahkan label jumlah setiap kategori pada grafik
Menghitung frekuensi variabel cyl
cyl_count <- table(mtcars$cyl)
Membuat bar chart dan Menambahkan label jumlah pada setiap bar
barplot(cyl_count,
main = "Bar Chart Jumlah Mobil Berdasarkan cyl",
xlab = "Jumlah Silinder",
ylab = "Frekuensi",
col = "lightblue")
text(x = barplot(cyl_count, plot = FALSE),
y = cyl_count,
label = cyl_count,
pos = 3, cex = 0.8, col = "red")
SOAL NO 3 A. Buat boxplot untuk membandingkan Petal.Width berdasarkan variabel Species
Membuat boxplot
boxplot(Petal.Width ~ Species, data = iris,
main = "Boxplot Petal.Width berdasarkan Species",
xlab = "Species",
ylab = "Petal.Width",
col = c("lightblue", "lightgreen", "lightpink"))
B.Hitung korelasi antara Sepal.Length dan Petal.Length
Menghitung korelasi dan Menampilkan hasil
correlation <- cor(iris$Sepal.Length, iris$Petal.Length)
cat("Korelasi antara Sepal.Length dan Petal.Length:", correlation, "\n")
## Korelasi antara Sepal.Length dan Petal.Length: 0.8717538
C. Buat scatter plot antara Sepal.Length dan Sepal.Width berdasarkan spesies, dengan garis regresi
Scatter plot dengan garis regresi
library(ggplot2)
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE) +
ggtitle("Scatter Plot Sepal.Length vs Sepal.Width dengan Garis Regresi") +
xlab("Sepal.Length") +
ylab("Sepal.Width")
## `geom_smooth()` using formula = 'y ~ x'
SOAL NO 4 Uji Chi-Square untuk variabel vs dan am pada dataset mtcars
Membuat tabel kontingensi dan Uji Chi-Square
vs_am_table <- table(mtcars$vs, mtcars$am)
chi_result <- chisq.test(vs_am_table)
print(chi_result)
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: vs_am_table
## X-squared = 0.34754, df = 1, p-value = 0.5555
SOAL NO 5Regresi Linear Sederhana pada dataset airquality
A.Tampilkan ringkasan model menggunakan summary()
Model regresi linear
model <- lm(Temp ~ Solar.R, data = airquality, na.action = na.omit)
summary(model)
##
## Call:
## lm(formula = Temp ~ Solar.R, data = airquality, na.action = na.omit)
##
## Residuals:
## Min 1Q Median 3Q Max
## -22.3787 -4.9572 0.8932 5.9111 18.4013
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 72.863012 1.693951 43.014 < 2e-16 ***
## Solar.R 0.028255 0.008205 3.444 0.000752 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 8.898 on 144 degrees of freedom
## (7 observations deleted due to missingness)
## Multiple R-squared: 0.07609, Adjusted R-squared: 0.06967
## F-statistic: 11.86 on 1 and 144 DF, p-value: 0.0007518
B.Buat scatter plot dengan garis regresi
Scatter plot dengan garis regresi
plot(airquality$Solar.R, airquality$Temp,
main = "Scatter Plot Temp vs Solar.R",
xlab = "Solar.R",
ylab = "Temp",
col = "blue", pch = 16)
abline(model, col = "red", lwd = 2)
C.Interpretasikan hasil regresi
Interpretasi Hasil: Koefisien Regresi:
Koefisien regresi untuk Solar.R menunjukkan perubahan rata-rata pada Temp untuk setiap unit perubahan pada Solar.R. Misalnya, jika koefisiennya 0.1, artinya setiap kenaikan 1 unit pada Solar.R akan menyebabkan kenaikan 0.1 unit pada Temp.
Jika ada intercept (titik potong dengan sumbu y), itu menunjukkan prediksi nilai Temp ketika Solar.R adalah 0.
Nilai R-squared (R²):
Nilai R² menggambarkan seberapa baik model menjelaskan variasi dalam data. Nilai R² yang lebih tinggi (mendekati 1) menunjukkan bahwa model dapat menjelaskan sebagian besar variasi dalam Temp. Sebaliknya, nilai R² yang rendah menunjukkan model kurang baik dalam menjelaskan variasi pada Temp berdasarkan Solar.R. Nilai P (p-value):
Nilai p untuk koefisien regresi menunjukkan apakah variabel Solar.R secara signifikan mempengaruhi Temp. Jika nilai p kurang dari 0.05, kita dapat menyimpulkan bahwa hubungan antara Solar.R dan Temp adalah signifikan secara statistik. Scatter Plot dan Garis Regresi:
Plot scatter menunjukkan distribusi titik data untuk Solar.R dan Temp, sementara garis regresi menunjukkan hubungan linear yang diprediksi antara kedua variabel. Semakin dekat titik data ke garis regresi, semakin baik model dalam memprediksi Temp. Kesimpulan: Model regresi linear ini memberikan gambaran tentang hubungan antara Solar.R dan Temp. Jika koefisien dan nilai p menunjukkan signifikansi, serta R² cukup tinggi, maka model ini dapat digunakan untuk memprediksi Temp berdasarkan Solar.R. Sebaliknya, jika R² rendah dan nilai p tidak signifikan, model mungkin tidak efektif untuk memprediksi Temp berdasarkan Solar.R.