1.impor dataset mtcars

# impor dataset mtcars
data<- mtcars

#a. hitung satistik deskripsif

# hitung satistik deskripsif
mean_mpg <- mean(data$mpg)
median_mpg <- median(data$mpg)
sd_mpg <- sd(data$mpg)

cat("Mean:", mean_mpg,"\nMedian:",median_mpg,"\nStandar Deviasi:",sd_mpg)
## Mean: 20.09062 
## Median: 19.2 
## Standar Deviasi: 6.026948

#b.buat boxplot variabel mpg berdasarkan variabel cyl

boxplot(mpg ~ cyl, data = data, 
        main = "Boxplot MPG Berdasarkan Cyl",
        xlab = "Jumlah Silinder",
        ylab = "Miles Per Gallon (MPG)",
        col = c("lightgrey", "lightblue", "pink"))

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

# Histogram dengan garis densitas
hist(data$hp, probability = TRUE, 
     main = "Distribusi Horsepower",
     xlab = "Horsepower",
     col = "lightblue", border = "orange")
lines(density(data$hp), col = "red", lwd = 2)

Interpretasi Distribusi Data: Puncak Distribusi (Modus): Histogram menunjukkan puncak distribusi (frekuensi tertinggi) berada di sekitar nilai 100-150 horsepower, yang berarti sebagian besar kendaraan memiliki horsepower dalam rentang ini.

Asimetri: Distribusi ini tampak miring ke kanan (right-skewed). Hal ini terlihat dari ekor distribusi yang lebih panjang di sisi kanan, menunjukkan adanya sejumlah kecil kendaraan dengan horsepower yang sangat tinggi (>250).

Kebanyakan Data Berada di Rentang Rendah: Sebagian besar kendaraan memiliki horsepower di bawah 200, yang sesuai dengan pola distribusi kendaraan umum.

Tidak Normal: Berdasarkan bentuknya, distribusi ini tidak simetris sehingga tidak mengikuti distribusi normal.

Kesimpulan: Distribusi horsepower pada dataset ini tidak normal, dengan sebagian besar kendaraan memiliki horsepower dalam rentang rendah hingga menengah. Distribusi ini mencerminkan pola umum di mana kendaraan dengan tenaga mesin yang sangat tinggi jarang ditemukan. # 3. Lakukan uji ANOVA untuk mengetahui apakah terdapat perbedaan signifikan pada rata-rata panjang sepal (Sepal Length) antar spesies dalam dataset iris

# Uji ANOVA
result_anova <- aov(Sepal.Length ~ Species, data = iris)
summary(result_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

nilai p-value 0.01 < 0.05,jadi terdapat perbedaan signifikan pada rata-rata panjang sepal antar spesies # 4. Lakukan uji t-test daa sampel untuk membandingkan panjang petal (Petal Length) antara spesies setosa dan versicolor. Berikan kesimpulan dari hasil uji tersebut

# Filter data untuk dua spesies
setosa <- subset(iris, Species == "setosa")
versicolor <- subset(iris, Species == "versicolor")

# Uji t-test
t_test_result <- t.test(setosa$Petal.Length, versicolor$Petal.Length)
print(t_test_result)
## 
##  Welch Two Sample t-test
## 
## data:  setosa$Petal.Length and versicolor$Petal.Length
## t = -39.493, df = 62.14, p-value < 2.2e-16
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.939618 -2.656382
## sample estimates:
## mean of x mean of y 
##     1.462     4.260

Hasil uji Welch Two Sample t-test menunjukkan bahwa terdapat perbedaan yang sangat signifikan antara rata-rata panjang petal dari spesies setosa dan versicolor. Rata-rata panjang petal versicolor lebih panjang dibandingkan dengan setosa, dan p-value yang sangat kecil (< 2.2e-16) mendukung kesimpulan ini.

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

a. Tampilkan ringkasan model menggunakan summary().

# Model regresi linear
model <- lm(mpg ~ wt, data = mtcars)
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.

library(ggplot2)
ggplot(data, aes(x = wt, y = mpg)) +
  geom_point(color = "purple") +
  geom_smooth(method = "lm", color = "black") +
  labs(title = "Hubungan Berat Kendaraan dengan MPG",
       x = "Berat Kendaraan (wt)",
       y = "Miles Per Gallon (mpg)")
## `geom_smooth()` using formula = 'y ~ x'

c. Berdasarkan hasil regresi linear ini, kita dapat menyimpulkan bahwa ada hubungan negatif yang signifikan antara berat kendaraan dan mpg. Artinya, semakin berat kendaraan, semakin rendah konsumsi bahan bakarnya (mpg). Model ini juga memiliki nilai R-squared yang cukup tinggi (0.7528), yang menunjukkan bahwa model ini dapat menjelaskan sebagian besar variasi dalam data mpg berdasarkan berat kendaraan.

Visualisasi dalam Grafik Scatter Plot: Grafik ini menunjukkan hubungan negatif yang jelas antara berat kendaraan (wt) dan mpg. Titik data berwarna ungu mencerminkan nilai mpg yang semakin rendah seiring dengan peningkatan wt. Garis regresi hitam menunjukkan model terbaik yang menggambarkan hubungan antara kedua variabel, sementara area bayangan abu-abu adalah interval kepercayaan yang menggambarkan ketidakpastian model dalam memprediksi nilai mpg.