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.