1. Import dataset mtcars yang tersedia di R.

# Memasukkan Dataset
data("mtcars")
print(mtcars)
##                      mpg cyl  disp  hp drat    wt  qsec vs am gear carb
## Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
## Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
## Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
## Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
## Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
## Valiant             18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
## Duster 360          14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
## Merc 240D           24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2
## Merc 230            22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2
## Merc 280            19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4
## Merc 280C           17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4
## Merc 450SE          16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3
## Merc 450SL          17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3
## Merc 450SLC         15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3
## Cadillac Fleetwood  10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4
## Lincoln Continental 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4
## Chrysler Imperial   14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4
## Fiat 128            32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1
## Honda Civic         30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2
## Toyota Corolla      33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1
## Toyota Corona       21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1
## Dodge Challenger    15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2
## AMC Javelin         15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2
## Camaro Z28          13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4
## Pontiac Firebird    19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2
## Fiat X1-9           27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1
## Porsche 914-2       26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2
## Lotus Europa        30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2
## Ford Pantera L      15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4
## Ferrari Dino        19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6
## Maserati Bora       15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8
## Volvo 142E          21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2

a. Hitung statistik deskriptif (mean, median, standar deviasi) untuk variabel mpg.

Menghitung statistik deskriptif seperti mean, median, dan standar deviasi untuk variabel mpg.

# Menghitung mean atau rata-rata
mean_mpg = mean(mtcars$mpg)
mean_mpg
## [1] 20.09062
# Menghitung median atau nilai tengah
median_mpg = median(mtcars$mpg)
median_mpg
## [1] 19.2
# Menghitung standar deviasi
sd_mpg = sd(mtcars$mpg)
sd_mpg
## [1] 6.026948

Mean: Rata-rata konsumsi bahan bakar. Median: Nilai tengah konsumsi bahan bakar. Standar deviasi: Mengukur sebaran nilai mpg dari rata-rata.

b. Buat boxplot variabel mpg berdasarkan variabel

Membuat boxplot untuk variabel mpg berdasarkan variabel cyl. Boxplot ini akan membantu kita memahami distribusi mpg pada kelompok-kelompok berbeda berdasarkan jumlah silinder.

# Membuat Boxplot mpg berasarkan cyl
boxplot(mpg~cyl,
        data=mtcars,
        main="Boxplot MPG Berdasarkan JUmlah Silinder",
        xlab="Jumlah Silinder (cyl)",
        ylab="Miles per Gallon (mpg)",
        col=c("darkslateblue","darkred","darkgreen"))

Tiap kotak merepresentasikan distribusi mpg untuk jumlah silinder tertentu (cyl: 4, 6, 8). Disini dapat dilihat median, outliers, dan rentang distribusi data.

2. Buat histogram untuk variabel hp (horsepower) dan tambahkan garis densitas. Jelaskan distribusi data berdasarkan grafik tersebut

# Membuat histogram dengan garis densitas
hist(mtcars$hp, 
     breaks = 10, 
     col = "cornflowerblue", 
     main = "Histogram Horsepower (hp) dengan Garis Densitas", 
     xlab = "Horsepower")

# Menambahkan garis densitas
lines(density(mtcars$hp), col = "red", lwd = 2)

Histogram menampilkan distribusi frekuensi data variabel hp (horsepower) pada dataset mtcars.Sedangkan, garis densitas (warna merah) menunjukkan estimasi distribusi probabilitas untuk data hp. Ini memberikan gambaran tentang bentuk distribusi data.

Interpretasi Grafik: 1. Distribusi data hp terlihat cenderung normal (membentuk bentuk lonceng) dengan sedikit distribusi yang lebih terfokus pada nilai tengah. 2. Distribusi ini tampaknya simetris dan tidak terlalu terdistorsi(menyimpang), meskipun ada kemungkinan ada beberapa outliers pada sisi kanan (titik data dengan nilai horsepower yang sangat tinggi).

3. Lakukan uji ANOVA untuk mengetahui apakah terdapat perbedaan signifikan pada rata-rata panjang sepal (Sepal Length) antar spesies dalam dataset iris.

# Memasukkan data iris
data("iris")

# ANOVA
ANOVA = aov(Sepal.Length ~ Species, data = iris)
summary(ANOVA)
##              Df Sum Sq Mean Sq F value Pr(>F)    
## Species       2  63.21  31.606   119.3 <2e-16 ***
## Residuals   147  38.96   0.265                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Uji ANOVA digunakan untuk menentukan apakah rata-rata panjang sepal (Sepal.Length) berbeda signifikan antar spesies (Species).

Kesimpulan: Dari hasil uji di atas, nilai p-value untuk Species adalah <2e-16. Karena p-value < 0.05, kita menolak hipotesis nol (H₀) yang menyatakan bahwa tidak ada perbedaan rata-rata panjang sepal antara spesies. Artinya, ada perbedaan yang signifikan pada rata-rata panjang sepal antar spesies dalam dataset iris.

4. Lakukan uji t-test dua sampel untuk membandingkan panjang petal (Petal Length) antara spesies setosa dan versicolor. Berikan kesimpulan dari hasil uji tersebut.

# Memasukkan data iris
data("iris")

# Filter data untuk spesies setosa dan versicolor
setosa <- subset(iris, Species == "setosa")$Petal.Length
versicolor <- subset(iris, Species == "versicolor")$Petal.Length

# Uji t-test
t_test <- t.test(setosa, versicolor, var.equal = TRUE)
t_test
## 
##  Two Sample t-test
## 
## data:  setosa and versicolor
## t = -39.493, df = 98, p-value < 2.2e-16
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.938597 -2.657403
## sample estimates:
## mean of x mean of y 
##     1.462     4.260

Uji t-test membandingkan panjang petal (Petal.Length) antara spesies Setosa dan Versicolor.

Kesimpulan: Dari hasil uji di atas, nilai p-value < 2.2e-16, berarti lebih kecil dari tingkat signifikansi 0.05. Ini menunjukkan bahwa kita menolak hipotesis nol (H₀) yang menyatakan bahwa tidak ada perbedaan rata-rata panjang petal antara spesies Setosa dan Versicolor. Artinya perbedaan yang signifikan dalam panjang petal antara spesies Setosa dan Versicolor. Versicolor memiliki panjang petal yang lebih besar daripada Setosa.

5. Bangun model regresi linear sederhana menggunakan dataset mtcars untuk memprediksi mpg berdasarkan wt (berat mobil)

a. Tampilkan ringkasan model menggunakan summary().

# Model regresi
model = lm(mpg ~ wt, data = mtcars)

# Ringkasan model
summary(model)
## 
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.5432 -2.3647 -0.1252  1.4096  6.8727 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  37.2851     1.8776  19.858  < 2e-16 ***
## wt           -5.3445     0.5591  -9.559 1.29e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.046 on 30 degrees of freedom
## Multiple R-squared:  0.7528, Adjusted R-squared:  0.7446 
## F-statistic: 91.38 on 1 and 30 DF,  p-value: 1.294e-10

b Buat scatter plot dengan garis regresi.

# Scatter plot
plot(mtcars$wt, mtcars$mpg, 
     main = "Scatter Plot: MPG vs Berat Mobil", 
     xlab = "Berat Mobil (wt)", 
     ylab = "Miles Per Gallon (mpg)", 
     pch = 19, col = "darkgreen")

# Tambahkan garis regresi
abline(model, col = "darkorange", lwd = 2)

Scatter plot menunjukkan hubungan negatif antara berat mobil dan efisiensi bahan bakar. Garis regresi (orange) menunjukkan tren hubungan linier, yang mengonfirmasi bahwa semakin berat mobil, semakin rendah efisiensi bahan bakar (MPG).

c. Interpretasikan hasil, termasuk koefisien regresi dan nilai R

  1. Koefisien Intercept: 37.2851 menunjukkan nilai dasar dari MPG tanpa mempertimbangkan berat mobil. Namun, ini hanya untuk referensi dan tidak memiliki interpretasi praktis karena berat mobil tidak bisa 0.
  2. Koefisien untuk wt: Setiap penambahan 1 unit berat mobil mengurangi MPG sebesar 5.3445. Ini mengindikasikan hubungan negatif yang kuat antara berat mobil dan efisiensi bahan bakar—semakin berat mobil, semakin rendah nilai MPG-nya.
  3. Nilai R² (0.7528): Model ini menjelaskan sekitar 75% dari variasi MPG berdasarkan berat mobil, yang menunjukkan bahwa berat mobil adalah prediktor yang cukup baik untuk MPG dalam dataset ini.
  4. Dengan demikian, dapat disimpulkan bahwa berat mobil berkorelasi negatif dengan MPG, dan model ini memberikan pemahaman yang kuat tentang hubungan tersebut.