Seorang peneliti ingin mengetahui apakah terdapat perbedaan nilai statistika antara mahasiswa yang mengikuti bimbingan belajar dan yang tidak mengikuti bimbingan belajar.

Karena variabel ‘ikut bimbel’ bukan angka melainkan kategori Ya dan Tidak, maka digunakan variabel dummy dalam model regresi

Load Data

data <- read.csv("D:/Youtube/Regresi/Dummy.csv")
head(data)
##   X jam_belajar bimbel    nilai
## 1 1    3.588198     Ya 73.87332
## 2 2    8.094746  Tidak 86.04061
## 3 3    4.680792     Ya 76.05678
## 4 4    8.947157  Tidak 79.21195
## 5 5    9.464206     Ya 94.87221
## 6 6    1.410008     Ya 57.66267

Membuat Variabel Dummy

data$d1 <- ifelse(
  data$bimbel=="Ya",
  1,
  0
)

Model

model <- lm(
  nilai ~ jam_belajar +
    d1,
  data=data
)

summary(model)
## 
## Call:
## lm(formula = nilai ~ jam_belajar + d1, data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -12.1323  -3.6707  -0.7581   3.1955  19.7470 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  44.3799     1.2426   35.72   <2e-16 ***
## jam_belajar   4.5519     0.1795   25.36   <2e-16 ***
## d1            9.7159     0.9252   10.50   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.621 on 147 degrees of freedom
## Multiple R-squared:  0.8264, Adjusted R-squared:  0.8241 
## F-statistic:   350 on 2 and 147 DF,  p-value: < 2.2e-16

Prediksi

data$Ydummy <- predict(model)

Visualisasi Garis Regresi

library(ggplot2)
ggplot(data,
       aes(jam_belajar,
           nilai,
           color=bimbel))+

  geom_point(size=2)+

  geom_smooth(
    method="lm",
    se=F
  )+

  theme_minimal()+

  labs(
    title="Regresi Dummy Variable",
    x="Jam Belajar",
    y="Nilai"
  )
## `geom_smooth()` using formula = 'y ~ x'