str(alcohol) digunakan untuk melihat struktur dari dataset Alcohol. Ini mencakup informasi tentang jumlah pengamatan, nama-nama variabel, dan jenis data.
head(alcohol) menampilkan enam baris pertama dari dataset Alcohol, memberi Anda gambaran singkat tentang bagaimana data tersebut terlihat.
summary(alcohol)
abuse status unemrate age
Min. :0.00000 Min. :1.000 Min. : 2.800 Min. :25.00
1st Qu.:0.00000 1st Qu.:3.000 1st Qu.: 4.300 1st Qu.:31.00
Median :0.00000 Median :3.000 Median : 5.300 Median :38.00
Mean :0.09917 Mean :2.829 Mean : 5.569 Mean :39.18
3rd Qu.:0.00000 3rd Qu.:3.000 3rd Qu.: 6.700 3rd Qu.:46.00
Max. :1.00000 Max. :3.000 Max. :10.900 Max. :59.00
educ married famsize white
Min. : 0.00 Min. :0.0000 Min. : 1.000 Min. :0.0000
1st Qu.:12.00 1st Qu.:1.0000 1st Qu.: 1.000 1st Qu.:1.0000
Median :13.00 Median :1.0000 Median : 3.000 Median :1.0000
Mean :13.31 Mean :0.8164 Mean : 2.741 Mean :0.8531
3rd Qu.:16.00 3rd Qu.:1.0000 3rd Qu.: 4.000 3rd Qu.:1.0000
Max. :19.00 Max. :1.0000 Max. :13.000 Max. :1.0000
exhealth vghealth goodhealth fairhealth
Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.00000
1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.00000
Median :0.0000 Median :0.0000 Median :0.0000 Median :0.00000
Mean :0.4159 Mean :0.3019 Mean :0.2053 Mean :0.05345
3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:0.0000 3rd Qu.:0.00000
Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :1.00000
northeast midwest south centcity
Min. :0.000 Min. :0.0000 Min. :0.0000 Min. :0.0000
1st Qu.:0.000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
Median :0.000 Median :0.0000 Median :0.0000 Median :0.0000
Mean :0.203 Mean :0.2656 Mean :0.3183 Mean :0.3332
3rd Qu.:0.000 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:1.0000
Max. :1.000 Max. :1.0000 Max. :1.0000 Max. :1.0000
outercity qrt1 qrt2 qrt3
Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.0000
1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
Median :0.0000 Median :0.0000 Median :0.0000 Median :0.0000
Mean :0.4349 Mean :0.2546 Mean :0.2527 Mean :0.2428
3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:0.0000
Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :1.0000
beertax cigtax ethanol mothalc
Min. :0.045 Min. : 2.00 Min. :1.035 Min. :0.00000
1st Qu.:0.145 1st Qu.:13.00 1st Qu.:1.798 1st Qu.:0.00000
Median :0.259 Median :20.00 Median :2.016 Median :0.00000
Mean :0.426 Mean :17.96 Mean :2.036 Mean :0.04042
3rd Qu.:0.446 3rd Qu.:23.00 3rd Qu.:2.390 3rd Qu.:0.00000
Max. :2.370 Max. :38.00 Max. :4.017 Max. :1.00000
fathalc livealc inwf employ
Min. :0.0000 Min. :0.0000 Min. :0.0000 Min. :0.0000
1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:1.0000 1st Qu.:1.0000
Median :0.0000 Median :0.0000 Median :1.0000 Median :1.0000
Mean :0.1543 Mean :0.1881 Mean :0.9304 Mean :0.8982
3rd Qu.:0.0000 3rd Qu.:0.0000 3rd Qu.:1.0000 3rd Qu.:1.0000
Max. :1.0000 Max. :1.0000 Max. :1.0000 Max. :1.0000
agesq beertaxsq cigtaxsq ethanolsq
Min. : 625 Min. :0.002025 Min. : 4.0 Min. : 1.071
1st Qu.: 961 1st Qu.:0.021025 1st Qu.: 169.0 1st Qu.: 3.231
Median :1444 Median :0.067081 Median : 400.0 Median : 4.062
Mean :1628 Mean :0.378427 Mean : 375.3 Mean : 4.286
3rd Qu.:2116 3rd Qu.:0.198916 3rd Qu.: 529.0 3rd Qu.: 5.714
Max. :3481 Max. :5.616899 Max. :1444.0 Max. :16.134
educsq
Min. : 0.0
1st Qu.:144.0
Median :169.0
Mean :185.5
3rd Qu.:256.0
Max. :361.0
Summary(alcohol) memberikan ringkasan statistik deskriptif untuk setiap variabel dalam dataset Alcohol, termasuk mean, median, kuartil, dan lainnya tergantung pada jenis variabelnya.
ggplot(alcohol, aes(x = age, y = abuse)) +geom_point() +labs(x ="Age", y ="Abuse",title ="Scatter Plot of Age and Abuse") +theme_minimal()
Scatter plot digunakan untuk menampilkan hubungan antara dua variabel numerik, dalam hal ini Age dan Abuse. Garis GGPlot mengatur plot, dengan sumbu x dan y yang diberi label, dan tema minimal untuk estetika.
cor(alcohol$age, alcohol$ethanol, use ="complete.obs")
[1] -0.008264124
cor() digunakan untuk menghitung koefisien korelasi antara dua variabel numerik, dalam hal ini antara dan Ethanol. Use = “complete.obs” mengabaikan data yang hilang (NA).
ggplot(alcohol, aes(x = age)) +geom_histogram(binwidth =1, fill ="purple", color ="black") +labs(x ="Age", y ="Frequency",title ="Histogram of Age") +theme_minimal()
Histogram digunakan untuk menampilkan distribusi frekuensi dari satu variabel numerik (Age dalam kasus ini) dengan lebar bin tertentu, diplot menggunakan GGPlot.
Boxplot menunjukkan distribusi variabel numerik (ethanol) berdasarkan kuartilnya. GGPlot digunakan untuk membuat plot ini dengan tema minimal.
ggplot(alcohol, aes(x =factor(status), y = ethanol)) +geom_boxplot() +labs(x ="Status", y ="Ethanol",title ="Boxplot of Ethanol by Status") +theme_minimal()
Boxplot diplot untuk menunjukkan perbandingan distribusi Ethanol di antara kelompok yang berbeda dalam variabel faktor (status).
anova_result <-aov(ethanol ~ status, data = alcohol)summary(anova_result)
Df Sum Sq Mean Sq F value Pr(>F)
status 1 0.5 0.4923 3.471 0.0625 .
Residuals 9820 1392.9 0.1418
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Analisis varians (ANOVA) digunakan untuk menguji apakah terdapat perbedaan signifikan dalam rata-rata Ethanol di antara kelompok yang berbeda dalam variabel status.
reg_model <-lm(ethanol ~ age + educ + unemrate, data = alcohol)summary(reg_model)
Call:
lm(formula = ethanol ~ age + educ + unemrate, data = alcohol)
Residuals:
Min 1Q Median 3Q Max
-1.07722 -0.26551 0.00997 0.24009 1.98782
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.3529074 0.0276563 85.077 < 2e-16 ***
age -0.0001219 0.0003798 -0.321 0.748
educ 0.0060111 0.0012634 4.758 1.98e-06 ***
unemrate -0.0704597 0.0024209 -29.104 < 2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.3609 on 9818 degrees of freedom
Multiple R-squared: 0.0823, Adjusted R-squared: 0.08202
F-statistic: 293.5 on 3 and 9818 DF, p-value: < 2.2e-16
Regresi linear dilakukan untuk memodelkan hubungan antara Ethanol dengan variabel prediktor lainnya (Age, Educ, dan Unemrate). lm() digunakan untuk membuat model regresi. Karena p-value < 2.2e-16, maka hipotesis 0 ditolak.
ggplot(alcohol, aes(x = age, y = ethanol)) +geom_point() +geom_smooth(method ="lm", col ="pink") +labs(x ="Age", y ="Ethanol",title ="Scatter Plot of Age and Ethanol with Regression Line") +theme_minimal()
`geom_smooth()` using formula = 'y ~ x'
Scatter plot digunakan untuk menampilkan hubungan antara age dan ethanol, dengan tambahan garis regresi linear (geom_smooth(method = "lm")).
ggplot(alcohol, aes(x = ethanol)) +geom_histogram(aes(y =after_stat(density)), binwidth =0.1, fill ="blue", color ="black") +geom_density(color ="red", linewidth =1) +labs(x ="Ethanol", y ="Density", title ="Histogram and Density Plot of Ethanol") +theme_minimal()
Histogram ditambah dengan plot kepadatan untuk menunjukkan distribusi ethanol. ggplot digunakan untuk menggabungkan kedua jenis plot ini dalam satu gambar.
ggplot(alcohol, aes(sample = ethanol)) +stat_qq() +stat_qq_line() +labs(x ="Theoretical Quantiles", y ="Sample Quantiles", title ="Q-Q Plot of Ethanol") +theme_minimal()
Q-Q plot digunakan untuk membandingkan distribusi dari data ethanol dengan distribusi normal. ggplot digunakan untuk membuat plot ini.
Mean, varians, dan deviasi standar dari variabel ethanol dihitung menggunakan fungsi mean(), var(), dan sd().
library(caret)
Loading required package: lattice
set.seed(123)train_index <-createDataPartition(alcohol$ethanol, p =0.7, list =FALSE)train_data <- alcohol[train_index, ]test_data <- alcohol[-train_index, ]reg_model <-lm(ethanol ~ age + educ + unemrate, data = train_data)predictions <-predict(reg_model, newdata = test_data)library(Metrics)
Attaching package: 'Metrics'
The following objects are masked from 'package:caret':
precision, recall
mae <-mae(predictions, test_data$ethanol)rmse <-rmse(predictions, test_data$ethanol)mae
[1] 0.2687811
Dataset alcohol dibagi menjadi data latih dan uji menggunakan fungsi createDataPartition dari paket caret, dengan data latih (70%) dan data uji (30%). Model regresi linear dibangun menggunakan variabel prediktor age, educ, dan unemrate dari data latih untuk memprediksi nilai ethanol. Setelah model dibuat, dilakukan prediksi terhadap nilai ethanol pada data uji, dan performa model dievaluasi menggunakan Mean Absolute Error (MAE) dan Root Mean Squared Error (RMSE) untuk mengukur kesalahan prediksi terhadap nilai aktual ethanol.