Kesehatan masyarakat adalah salah satu aspek penting dalam pembangunan suatu negara, khususnya wilayah Asia di mana pemahaman terhadap faktor-faktor yang mempengaruhi tingkat kematian sangatlah krusial. Tingkat kematian orang dewasa (Adult_mortality) per 1000 populasi adalah indikator kunci yang menggambarkan kondisi kesehatan masyarakat dan efektivitas sistem kesehatan suatu negara. Untuk menganalisis faktor-faktor yang berkontribusi terhadap tingkat kematian orang dewasa, dilakukanlah analisis regresi linear berganda dengan mempertimbangkan beberapa variabel independen yang relevan.
Regresi adalah metode statistik yang digunakan untuk memperkirakan hubungan antara variabel dependen dengan satu atau lebih variabel independen.Variabel dependen merupakan variabel yang dipengaruhi atau yang menjadi akibat, karena adanya variabel bebas, sedangkan variabel independen adalah variabel-variabel yang mempengaruhi atau yang menjadi sebab perubahannya atau timbulnya variabel dependen. Metode ini juga dapat digunakan untuk menilai kekuatan hubungan antar variabel untuk prediksi masa depan.
Salah satu jenis analisis regresi yaitu analisis regresi linear berganda. Regresi linear berganda merupakan model regresi yang melibatkan lebih dari satu variabel independen. Analisis regresi linear berganda dilakukan untuk mengetahui arah dan seberapa besar pengaruh variabel independen terhadap variabel dependennya. Model regresi linier berganda diekspresikan dalam persamaan matematis :
\[\hat{Y} = \beta_0 + \beta_1X_1 + \beta_2X_2 +...+\beta_nX_n + \epsilon\]
dengan
\(\hat{Y}\) : variabel dependen
\(\beta_0\) : konstanta
\(\beta_1X_1 + \beta_2X_2 +...+\beta_nX_n\) : koefisien regresi
\(\epsilon\) : error
Sebelum melakukan analisis regresi berganda, langkah awal yang dilakukan yaitu menyiapkan library yang akan digunakan.
# Memuat paket yang diperlukan
library(readxl)
library(dplyr)
library(lmtest)
library(car)
library(ggplot2)
# Membaca data dari file Excel
data <- read_excel("D:/Data Case Method.xlsx")
# Mengambil data di Asia pada tahun 2015
data_filtered <- filter(data, Region == "Asia" & Year == 2015) %>%
select(Life_expectancy, Adult_mortality, Alcohol_consumption, Hepatitis_B, GDP_per_capita)
# Menampilkan data hasil filter
data_filtered
## # A tibble: 27 × 5
## Life_expectancy Adult_mortality Alcohol_consumption Hepatitis_B
## <dbl> <dbl> <dbl> <dbl>
## 1 75.1 125. 2.98 97
## 2 69.5 155. 0.24 91
## 3 70.8 176. 0.08 78
## 4 75.9 82.3 5.66 99
## 5 68.6 178. 3 87
## 6 67.7 190. 3.36 99
## 7 65.8 196. 1.47 89
## 8 72.3 125. 0.51 96
## 9 76.1 149. 6.95 99
## 10 69.1 213. 8.35 99
## # ℹ 17 more rows
## # ℹ 1 more variable: GDP_per_capita <dbl>
Keterangan :
# Statistik deskriptif untuk semua variabel
summary(data_filtered)
## Life_expectancy Adult_mortality Alcohol_consumption Hepatitis_B
## Min. :63.40 Min. : 50.96 Min. :0.000 Min. :65.00
## 1st Qu.:68.85 1st Qu.:123.14 1st Qu.:0.530 1st Qu.:89.00
## Median :70.80 Median :154.60 Median :2.590 Median :97.00
## Mean :71.98 Mean :148.13 Mean :2.793 Mean :92.04
## 3rd Qu.:75.40 3rd Qu.:186.02 3rd Qu.:3.940 3rd Qu.:99.00
## Max. :83.80 Max. :227.74 Max. :8.550 Max. :99.00
## GDP_per_capita
## Min. : 556
## 1st Qu.: 1302
## Median : 3001
## Mean : 7832
## 3rd Qu.: 7224
## Max. :55647
Berdasarkan statistik deskriptif tersebut, didapatkan nilai minimum, kuartil bawah, median, mean, kuartil atas, dan nilai maksimum dari keempat variabel. Pada variabel Life_Expectancy, didapatkan nilai minimum 63.40 tahun, kuartil bawah 68.85 tahun, median 70.80 tahun, kuartil atas 75.40 tahun, dan nilai maksimum 83.30 tahun.
Hubungan dari masing-masing variabel, dapat dilihat dari nilai korelasinya dengan cara :
# Menghitung matriks korelasi
cor_matrix <- cor(data_filtered)
cor_matrix <- round(cor_matrix, 2)
cor_matrix
## Life_expectancy Adult_mortality Alcohol_consumption
## Life_expectancy 1.00 -0.88 0.23
## Adult_mortality -0.88 1.00 0.00
## Alcohol_consumption 0.23 0.00 1.00
## Hepatitis_B 0.40 -0.37 0.14
## GDP_per_capita 0.74 -0.67 0.11
## Hepatitis_B GDP_per_capita
## Life_expectancy 0.40 0.74
## Adult_mortality -0.37 -0.67
## Alcohol_consumption 0.14 0.11
## Hepatitis_B 1.00 0.14
## GDP_per_capita 0.14 1.00
Melalui output diatas, terlihat bahwa :
# Persamaan Model Regresi
model <- lm(Life_expectancy~ + Adult_mortality +Alcohol_consumption +Hepatitis_B +GDP_per_capita, data = data_filtered)
Berdasarkan output di atas, diperoleh persamaan model regresi linear berganda yaitu: \[\hat{Y} = 75.55 - 0.0654X_1 + 0.337X_2 + 0.0478X_3 + 0,000099X_4 + \epsilon\]
Interpretasi :
Hipotesis
H0 : β0 = β1 = β2 = β3 = β4 = 0 (X1, X2, X3, X4 secara simultan tidak berpengaruh signifikan terhadap Y).
H1 : 𝛽0 ≠ 0 atau 𝛽1 ≠ 0 atau 𝛽2 ≠ 0 atau 𝛽3 ≠ 0 atau 𝛽4 ≠ 0 (Paling tidak ada satu 𝛽𝑖 yang tidak sama dengan nol, i = 0, 1, 2, 3, 4).
Tingkat Signifikansi :
α = 0,05
Daerah Kritis :
H0 ditolak jika p-value < α = 0,05 atau F-value > F-tabel (α; k; n-k-1) = F-tabel (0,05; 4; 22) = 2,82
Statistik Uji
summary(model)
##
## Call:
## lm(formula = Life_expectancy ~ +Adult_mortality + Alcohol_consumption +
## Hepatitis_B + GDP_per_capita, data = data_filtered)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.1112 -1.4774 -0.4156 1.6533 3.4355
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.555e+01 5.093e+00 14.834 6.14e-13 ***
## Adult_mortality -6.542e-02 1.144e-02 -5.718 9.45e-06 ***
## Alcohol_consumption 3.371e-01 1.482e-01 2.274 0.0331 *
## Hepatitis_B 4.783e-02 4.455e-02 1.074 0.2946
## GDP_per_capita 9.948e-05 4.202e-05 2.367 0.0271 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.973 on 22 degrees of freedom
## Multiple R-squared: 0.8596, Adjusted R-squared: 0.8341
## F-statistic: 33.68 on 4 and 22 DF, p-value: 4.362e-09
Kesimpulan :
Berdasarkan output tersebut, didapatkan nilai F-value = 33.68 > 2,82 (F tabel) maka H0 ditolak, yang berarti bahwa paling tidak ada satu βi (variabel Xi) yang tidak sama dengan nol.
Uji parsial atau yang lebih dikenal dengan uji statistik T merupakan proses analisis data secara parsial. Uji T ini nantinya akan menunjukkan berapa banyak pengaruh variabel independen secara parsial, terhadap variabel dependen. Uji T tujuannya untuk melihat sejauh mana pengaruh secara parsial dari variabel bebas terhadap variabel terikat.
Hipotesis
H0 : βi = 0 untuk i = 1, 2, 3,4 (Xi tidak berpengaruh signifikan terhadap Y). H1 : βi ≠ 0 (Xi berpengaruh signifikan terhadap Y).
Tingkat Signifikansi :
α = 0,05
Daerah Kritis :
H0 ditolak jika p-value < α = 0,05
Statistik Uji
summary(model)
##
## Call:
## lm(formula = Life_expectancy ~ +Adult_mortality + Alcohol_consumption +
## Hepatitis_B + GDP_per_capita, data = data_filtered)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.1112 -1.4774 -0.4156 1.6533 3.4355
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 7.555e+01 5.093e+00 14.834 6.14e-13 ***
## Adult_mortality -6.542e-02 1.144e-02 -5.718 9.45e-06 ***
## Alcohol_consumption 3.371e-01 1.482e-01 2.274 0.0331 *
## Hepatitis_B 4.783e-02 4.455e-02 1.074 0.2946
## GDP_per_capita 9.948e-05 4.202e-05 2.367 0.0271 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.973 on 22 degrees of freedom
## Multiple R-squared: 0.8596, Adjusted R-squared: 0.8341
## F-statistic: 33.68 on 4 and 22 DF, p-value: 4.362e-09
# Uji Asumsi Linearitas menggunkan Ramsey RESET
ramsey_test <- resettest(model, power = 2)
ramsey_test
##
## RESET test
##
## data: model
## RESET = 0.24467, df1 = 1, df2 = 21, p-value = 0.626
Berdasarkan output tersebut, didapatkan nilai p-value = 0.626 > 0.05, maka tidak ada cukup bukti untuk menolak asumsi linearitas, sehingga dapat disimpulkan bahwa model regresi linear berganda tersebut memenuhi asumsi linearitas.
# Histogram dari residu
ggplot(data.frame(Residual=resid(model)), aes(x=Residual)) +
geom_histogram(binwidth=0.5, fill="#293b4d", color="#7C8475") +
labs(x = "Residual", y = "Count", title = "Histogram of Residual")
# Grafik QQ Plot untuk normalitas residu
qqnorm(resid(model))
qqline(resid(model))
# Uji Normalitas residu model
shapiro.test(resid(model))
##
## Shapiro-Wilk normality test
##
## data: resid(model)
## W = 0.94566, p-value = 0.1679
# Grafik Residual Plot untuk non-heteroskedastisitas
plot(model, which = 1)
# Uji non-Heteroskedastisitas
bptest(model)
##
## studentized Breusch-Pagan test
##
## data: model
## BP = 2.3082, df = 4, p-value = 0.6793
# Uji Multikolinearitas
vif(model)
## Adult_mortality Alcohol_consumption Hepatitis_B GDP_per_capita
## 2.140509 1.051936 1.221334 1.896964
vif_values <- vif(model)
# Membuat plot VIF
plot(vif_values, type = "bar", main = "VIF Plot")
Berdasarkan output tersebut, didapatkan nilai VIF ketiga
variabel independen < 10 sehingga tidak terjadi multikolinearitas
yang berarti bahwa asumsi non-multikolinearitas terpenuhi.
# Uji Autokorelasi Residual
durbinWatsonTest(model)
## lag Autocorrelation D-W Statistic p-value
## 1 -0.2492191 2.413897 0.33
## Alternative hypothesis: rho != 0
Berdasarkan output tersebut, dipdapatkan nilai p-value = 0.266 > 0.05 yang berarti bahwa asumsi non-autokorelasi terpenuhi.
Berdasarkan analisis yang telah dilakukan, dapat disimpulkan bahwa variabel X1 (Adult_mortality), X2 (Alcohol_consumption), dan X4 (GDP_per_capita). Selain itu, pengujian memenuhi uji asumsi regresi, yaitu asumsi normalitas residu, homoskedastisitas, nonmultikolinearitas, dan nonautokorelasi, sehingga dapat disimpulkan bahwa model regresi layak digunakan.