Latar Belakang

Suhu udara merupakan salah satu indikator penting dalam menggambarkan kondisi cuaca dan iklim suatu wilayah. Salah satu faktor yang diduga memengaruhi suhu adalah kecepatan angin. Untuk mengetahui hubungan tersebut secara kuantitatif, digunakan metode regresi linear sederhana dengan variabel kecepatan angin (Wind) sebagai variabel independen (X) dan suhu udara (Temp) sebagai variabel dependen (Y).

Memuat Data

data("airquality")
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

Menghapus data hilang

data_bersih <- na.omit(airquality)

Statistika Deskriptif

summary(data_bersih)
##      Ozone          Solar.R           Wind            Temp      
##  Min.   :  1.0   Min.   :  7.0   Min.   : 2.30   Min.   :57.00  
##  1st Qu.: 18.0   1st Qu.:113.5   1st Qu.: 7.40   1st Qu.:71.00  
##  Median : 31.0   Median :207.0   Median : 9.70   Median :79.00  
##  Mean   : 42.1   Mean   :184.8   Mean   : 9.94   Mean   :77.79  
##  3rd Qu.: 62.0   3rd Qu.:255.5   3rd Qu.:11.50   3rd Qu.:84.50  
##  Max.   :168.0   Max.   :334.0   Max.   :20.70   Max.   :97.00  
##      Month            Day       
##  Min.   :5.000   Min.   : 1.00  
##  1st Qu.:6.000   1st Qu.: 9.00  
##  Median :7.000   Median :16.00  
##  Mean   :7.216   Mean   :15.95  
##  3rd Qu.:9.000   3rd Qu.:22.50  
##  Max.   :9.000   Max.   :31.00
nrow(data_bersih)
## [1] 111

Model Regresi Linear Sederhana

model_regresi <- lm( Temp ~ Wind , data = data_bersih)
summary(model_regresi)
## 
## Call:
## lm(formula = Temp ~ Wind, data = data_bersih)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -19.112  -5.646   1.014   6.254  18.888 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  91.0305     2.3489  38.754  < 2e-16 ***
## Wind         -1.3318     0.2226  -5.983 2.84e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.306 on 109 degrees of freedom
## Multiple R-squared:  0.2472, Adjusted R-squared:  0.2403 
## F-statistic: 35.79 on 1 and 109 DF,  p-value: 2.842e-08

Dari Output diperoleh : \[\beta_0 = 91.0305 \] \[\beta_1 = -1.3318 \] Artinya setiap kenaikan kecepatan angin sebesar 1 satuan maka suhu udara diperkirakan menurun sebesar 1.33 satuan

Persamaan Regresi

Bentuk umum persamaan regresi linier: \[ y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \epsilon \]

b0 <- coef(model_regresi)[1]
b1 <- coef(model_regresi)[2]

cat("Persamaan regresi:\n")
## Persamaan regresi:
cat("Temp =", round(b0,2), "+", round(b1,2), "Wind")
## Temp = 91.03 + -1.33 Wind

Uji Signifikansi (Uji t)

Uji T berguna untuk menguji kebenaran atau kepalsuan hipotesis nol. Jika nilai signifikansi < 0.05 maka artinya variabel independent (X) secara parsial berpengaruh terhadap variabel dependent (Y). Dapat pula dibuktikan berdasarkan nilai hitung dan tabel. variabel independen (X) berpengaruh terhadap variabel dependen (Y) ketika \[t_{hit} > t_{tabel}\] Variabel independen (X) tidak berpengaruh terhadap variabel dependen (Y) ketika \[t_{hit}< t_{tabel}\] Statistik Uji : \[t_0=\ \frac{r\sqrt{n-2}}{\sqrt{1-r^2}}\] ## Kecocokan Model (Uji F)

Uji F ini bertujuan untuk mencari apakah variabel independen secara bersama–sama (simultan) mempengaruhi variabel dependen. Uji F dilakukan untuk melihat pengaruh dari seluruh variabel bebas secara bersama-sama terhadap variabel terikat. Jika nilai signifikansi \[F < 0.05\] atau ketika \[F_hit > F_tab\] maka semua variabel independen memiliki pengaruh secara signifikan terhadap variabel dependen. Namun jika nilai signifikansi \[F > 0.05\] atau ketika \[F_hit < F_tab\] maka semua variabel independen tidak memiliki pengaruh secara signifikan terhadap variabel dependen. Statistik Uji : \[F_o=\ \frac{{SS}_R/(1)}{{SS}_E/(n-2)}=\ \frac{\sum{\left({\hat{y}}_i-\bar{y}\right)^2/(1)}}{\sum{\left({\hat{y}}_i-\bar{y}\right)^2/(n-2)}}\] dimana \[F_{\alpha,1,n-2}.\]

f_tabel <- qf(0.05, 1, 109, lower.tail = FALSE)
f_tabel
## [1] 3.928195

Dari output diatas diperoleh nilai \[F_hit (35,79) > F_tabel (3,928)\] Maka disimpulkan bahwa model regresi cocok atau semua variabel independen memiliki pengaruh secara signifikan terhadap variabel dependen

Plot Regresi

plot(women$height, women$weight,
     main = "Garis linear",
     xlab = "Wind",
     ylab = "Temp",
     pch = 19,
     col = "blue")

Terlihat bahwa titik-titik data membentuk pola yang cenderung meningkat dari kiri ke kanan atau mengikuti garis linear. Hal ini menunjukkan adanya hubungan linear positif antara variabel X dan Y.

Scatter Plot

model <- lm(Temp ~ Wind, data = data_bersih)

# Plot residual vs fitted
plot(model$fitted.values, resid(model),
     xlab = "Fitted Values",
     ylab = "Residuals",
     main = "Uji Homoskedastisitas (Residual vs Fitted)",
     pch = 19)

abline(h = 0, col = "red")

Berdasarkan grafik Residual vs Fitted, terlihat bahwa titik-titik residual menyebar secara acak di sekitar garis nol tanpa membentuk pola tertentu. Penyebaran residual juga relatif merata pada seluruh nilai fitted. Hal ini menunjukkan bahwa varians residual bersifat konstan sehingga model regresi tidak mengalami masalah heteroskedastisitas. Dengan demikian, asumsi homoskedastisitas dalam model regresi dapat dinyatakan terpenuhi.

Uji Normalitas Residual

Uji Normalitas bertujuan untuk mengetahui apakah nilai residual berdistribusi normal atau tidak. Model regresi yang baik adalah memiliki nilai residual yang berdistribusi normal. Dalam uji normalitas probability plot, model regresi dikatakan berdistribusi normal jika data plotting (titik-titik) yang menggambarkan data sesungguhnya mengikuti garis diagonal. Dapat juga dibuktikan menggunakan Uji Shapiro Wilk. Uji Shapiro Wilk berkhusus menguji normalitas pada sampel jumlahnya sedikit (<50). Dasar pengambilan keputusan adalah sebagai berikut : a. Jika nilai p-value > 0.05 maka nilai residual berdistribusi normal. b. Jika nilai p-value < 0.05 maka nilai residual tidak berdistribusi normal.

residual_model <- resid(model_regresi)
shapiro.test(residual_model)
## 
##  Shapiro-Wilk normality test
## 
## data:  residual_model
## W = 0.98133, p-value = 0.1229

Dari output diperoleh hasil nilai p-value sebesar 0.1229 atau \[p-value (0.1229) > sig. alpha (0.05)\] sehingga dapat disimpulkan bahwa nilai residual berdistribusi normal

Kesimpulan

Berdasarkan hasil analisis data Airquality dimana variabel Temp menjadi variabel independen dan variabel Wind sebagai variabel dependen, diperoleh model regresi yaitu : \[Temp = 91.03 + -1.33 Wind\] Juga didapatkan bahwa model cocok dan data Wind (X) memiliki pengaruh yang kurang signifikan sebesar (24.72%) atau sebesar (75.28%) dijelaskan oleh faktor lain.