Analisis Regresi Linear Berganda: Pengaruh Tingkat Kehadiran dan IQ terhadap Nilai UAS

I. Pendahuluan

Regresi linear berganda merupakan metode analisis statistik yang digunakan untuk mengetahui hubungan antara satu variabel terikat (dependent variable) dengan dua atau lebih variabel bebas (independent variable). Metode ini memungkinkan peneliti untuk melihat pengaruh beberapa variabel prediktor terhadap suatu variabel respon secara simultan maupun parsial serta membentuk model persamaan yang dapat menjelaskan hubungan antar variabel tersebut (Sugiyono, 2012; Yuliara, 2016). Melalui analisis regresi berganda, dapat diketahui arah dan besar pengaruh masing-masing variabel bebas terhadap variabel terikat.

II. Deskripsi Kerja

2.1 Studi Kasus

Penelitian ini menggunakan data hasil pengamatan terhadap sepuluh siswa yang meliputi skor IQ, tingkat kehadiran (dalam persentase), serta nilai Ujian Akhir Semester (UAS). Data tersebut digunakan untuk menganalisis faktor-faktor yang diduga memengaruhi hasil belajar siswa.

Permasalahan yang dikaji dalam penelitian ini adalah apakah tingkat kehadiran dan skor IQ berpengaruh terhadap nilai UAS, baik secara simultan maupun parsial. Selain itu, analisis ini juga bertujuan untuk mengetahui variabel mana yang memiliki pengaruh lebih dominan terhadap nilai UAS.

Variabel yang digunakan dalam penelitian ini didefinisikan sebagai berikut:

  • Variabel Terikat (Y) Nilai UAS, yaitu nilai yang diperoleh siswa pada Ujian Akhir Semester.

  • Variabel Bebas (X₁) Tingkat Kehadiran (%), yaitu persentase kehadiran siswa selama proses pembelajaran.

  • Variabel Bebas (X₂) Skor IQ, yaitu nilai yang menggambarkan tingkat kecerdasan intelektual siswa.

2.2 Persiapan Data

  1. Import Library

    Pada tahap ini dilakukan pemanggilan library yang diperlukan dalam proses analisis data menggunakan perangkat lunak R. Library yang digunakan antara lain readxl untuk membaca data dari file Excel, DT untuk menampilkan data dalam bentuk tabel interaktif, serta beberapa library pendukung lainnya yang digunakan dalam proses analisis.

    # Load library
    library(readxl)
  1. Memuat Dataset

    Dataset yang digunakan dalam penelitian ini dimuat dari file Excel menggunakan library readxl. Data yang telah dimuat kemudian ditampilkan untuk memastikan bahwa proses import data telah berhasil dilakukan serta untuk melihat isi awal dataset.

    data_iq <- read_excel("D:/OneDrive - untirta.ac.id/SEMESTER 4/PML/Data Latihan Soal.xlsx")
    
    DT::datatable(data_iq)
    # Definisi Variabel
    Y <- as.matrix(data_iq$`Nilai UAS (Y)`)
    X1 <- data_iq$`Tingkat Kehadiran (%) (x1)`
    X2 <- data_iq$`IQ (X2)`
    
    n <- length(Y)
  1. Struktur dan Ringkasan Data

    Setelah data dimuat, dilakukan pemeriksaan struktur dan ringkasan data untuk memahami karakteristik variabel yang digunakan. Pemeriksaan ini meliputi tipe data, jumlah observasi, serta ringkasan statistik seperti nilai minimum, maksimum, dan rata-rata. Tahap ini bertujuan untuk memastikan bahwa data siap digunakan dalam proses analisis lebih lanjut.

    # Struktur dan Ringkasan Data
    str(data_iq)
    ## tibble [10 × 4] (S3: tbl_df/tbl/data.frame)
    ##  $ Siswa                     : num [1:10] 1 2 3 4 5 6 7 8 9 10
    ##  $ IQ (X2)                   : num [1:10] 110 120 115 130 110 120 120 125 110 120
    ##  $ Tingkat Kehadiran (%) (x1): num [1:10] 60 70 75 80 80 90 95 95 100 100
    ##  $ Nilai UAS (Y)             : num [1:10] 65 70 75 75 80 80 85 95 90 98
    summary(data_iq)
    ##      Siswa          IQ (X2)      Tingkat Kehadiran (%) (x1) Nilai UAS (Y)  
    ##  Min.   : 1.00   Min.   :110.0   Min.   : 60.00             Min.   :65.00  
    ##  1st Qu.: 3.25   1st Qu.:111.2   1st Qu.: 76.25             1st Qu.:75.00  
    ##  Median : 5.50   Median :120.0   Median : 85.00             Median :80.00  
    ##  Mean   : 5.50   Mean   :118.0   Mean   : 84.50             Mean   :81.30  
    ##  3rd Qu.: 7.75   3rd Qu.:120.0   3rd Qu.: 95.00             3rd Qu.:88.75  
    ##  Max.   :10.00   Max.   :130.0   Max.   :100.00             Max.   :98.00

    Berdasarkan hasil pemeriksaan struktur data menggunakan fungsi str(), diketahui bahwa dataset terdiri dari 10 observasi dengan 4 variabel, yaitu Siswa, IQ (X2), Tingkat Kehadiran (%) (X1), dan Nilai UAS (Y). Seluruh variabel bertipe numerik sehingga dapat langsung digunakan dalam analisis regresi tanpa perlu dilakukan transformasi data.

    Berdasarkan hasil ringkasan statistik menggunakan fungsi summary(), nilai IQ siswa berada pada rentang 110 hingga 130 dengan rata-rata sebesar 118, yang menunjukkan bahwa tingkat kecerdasan siswa relatif homogen. Tingkat kehadiran memiliki rentang yang lebih bervariasi, yaitu antara 60% hingga 100% dengan rata-rata sebesar 84,5%, sehingga terdapat perbedaan kehadiran yang cukup terlihat antar siswa. Sementara itu, nilai UAS berada pada kisaran 65 hingga 98 dengan rata-rata sebesar 81,3, yang menunjukkan bahwa performa akademik siswa cenderung baik dan tidak memiliki perbedaan yang terlalu ekstrem.

    Secara umum, data menunjukkan bahwa variasi tingkat kehadiran lebih terlihat dibandingkan dengan IQ, sehingga diduga variabel kehadiran memiliki pengaruh yang lebih kuat terhadap nilai UAS. Hal ini akan dianalisis lebih lanjut pada tahap pemodelan regresi.

  2. Eksplorasi Data

    Pada tahap ini dilakukan visualisasi data untuk melihat pola hubungan antara variabel bebas dengan variabel terikat. Visualisasi yang digunakan berupa scatter plot dan matriks plot untuk mengetahui kecenderungan hubungan antar variabel.

    # Scatter plot Kehadiran vs Nilai UAS
    plot(data_iq$`Tingkat Kehadiran (%) (x1)`, data_iq$`Nilai UAS (Y)`,
         main = "Kehadiran vs Nilai UAS",
         xlab = "Kehadiran (%)",
         ylab = "Nilai UAS",
         pch = 16)
    
    # Tambah garis regresi
    abline(lm(`Nilai UAS (Y)` ~ `Tingkat Kehadiran (%) (x1)`, data = data_iq),
           lwd = 2, col = "red" )

    # Scatter plot IQ vs Nilai UAS
    plot(data_iq$`IQ (X2)`, data_iq$`Nilai UAS (Y)`,
         main = "IQ vs Nilai UAS",
         xlab = "IQ",
         ylab = "Nilai UAS",
         pch = 16)
    
    # Tambah garis regresi
    abline(lm(`Nilai UAS (Y)` ~ `IQ (X2)`, data = data_iq),
           lwd = 2, col = "blue")# matriks hubungan antar variabel

    Berdasarkan scatter plot yang dilengkapi dengan garis regresi, terlihat bahwa hubungan antara tingkat kehadiran dengan nilai UAS cenderung membentuk pola linear positif. Hal ini menunjukkan bahwa semakin tinggi tingkat kehadiran, maka nilai UAS juga cenderung meningkat.

    Sementara itu, pada hubungan antara IQ dan nilai UAS, garis regresi terlihat lebih datar, yang menunjukkan bahwa pengaruh IQ terhadap nilai UAS tidak sekuat tingkat kehadiran.

2.3 Tahapan Pengolahan Data

Regresi linear berganda dapat dituliskan dalam bentuk persamaan matriks sebagai berikut:

\[ \hat{\beta} = (X^T X)^{-1} X^T Y \]

di mana:

  • \(X\) adalah matriks variabel bebas (termasuk intercept)

  • \(Y\) adalah vektor variabel terikat

  • \(\hat{\beta}\) adalah vektor koefisien regresi

Metode ini digunakan untuk memperoleh estimasi parameter secara manual menggunakan operasi matriks.

  1. Membentuk Matriks Desain

    Pada tahap ini dilakukan pembentukan matriks desain dan perhitungan parameter regresi secara manual menggunakan operasi matriks di R.

    # Matriks desain
    X <- cbind(1, X1, X2)
    X
  2. Perhitungan Manual Regresi

    # hitung beta manual
    XtX <- t(X) %*% X
    XtX_inv <- solve(XtX)
    XtY <- t(X) %*% Y
    
    beta_manual <- XtX_inv %*% XtY
    beta_manual

    Berdasarkan hasil perhitungan manual, diperoleh nilai koefisien regresi sebagai berikut:

    • \(\beta_0\) = intercept

    • \(\beta_1\) = koefisien tingkat kehadiran

    • \(\beta_2\) = koefisien IQ

    Sehingga model regresi yang terbentuk adalah:

    \[Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2\]Nilai koefisien ini menunjukkan bahwa setiap perubahan pada variabel bebas akan memengaruhi nilai UAS sesuai dengan besar koefisiennya.

  3. Menghitung Prediksi & Residual

    Nilai prediksi (\(\hat{Y}\))dihitung dengan: \[\hat{Y} = X \hat{\beta}\] Residual dihitung dengan: \[e = Y - \hat{Y}\]

    # prediksi dan residual
    Y_hat <- X %*% beta_manual
    residual <- Y - Y_hat
  4. Uji Signifikansi (ANOVA/Uji F)

    Menghitung SST, SSR, SSE, lalu F-value dan p-value.

    # Uji F (simultan)
    mean_y <- mean(Y)
    
    SST <- sum((Y - mean_y)^2)
    SSR <- sum((Y_hat - mean_y)^2)
    SSE <- sum((Y - Y_hat)^2)
    
    df_reg <- ncol(X) - 1
    df_er <- n - ncol(X)
    
    MSR <- SSR / df_reg
    MSE <- SSE / df_er
    
    F_value <- MSR / MSE
    pvalue_F <- pf(F_value, df_reg, df_er, lower.tail = FALSE)
    
    F_value
    pvalue_F
  5. Perhitungan Otomatis dengan lm()

    Menggunakan fungsi lm() untuk regresi berganda

    # perhitungan otomatis (lm)
    model <- lm(`Nilai UAS (Y)` ~ `Tingkat Kehadiran (%) (x1)` + `IQ (X2)`, data = data_iq)
    
    summary(model)
    anova(model)
  6. Uji Parsial

    # uji t (parsial)
    summary(model)
  1. Koefisien Determinasi (\(R^2\))

    # koefisien determinasi
    R2_manual <- SSR / SST
    R2_manual
  1. Uji Asumsi Regresi Berganda

    Sebelum melakukan interpretasi hasil regresi, perlu dilakukan uji asumsi klasik untuk memastikan model memenuhi asumsi normalitas, homoskedastisitas, independensi, dan non-multikolinearitas.

    Langkah pertama adalah memeriksa normalitas residual secara visual dengan QQ-plot dan histogram. Hal ini memberikan dugaan awal apakah distribusi residual mendekati normal.

    # Residual dan fitted values dari perhitungan manual
    residual <- residual
    Y_hat <- Y_hat
    
    # QQ-Plot
    qqnorm(residual, main = "QQ Plot Residual")
    qqline(residual, col = "red", lwd = 2)

    # Histogram residual
    hist(residual, main = "Histogram Residual", col = "lightblue")

    Uji normalitas dengan Shapiro-wilk

    # Uji Shapiro-Wilk
    shapiro.test(residual)

    Heteroskedastisitas menggunakan BP-Test

    library(lmtest)
    bptest(model)  # uji heteroskedastisitas

    Autokorelasi menggunakan Durbin-Watson test

    dwtest(model, alternative = "two.sided")

    Multikolinearitas menggunakan VIF dan tolerance

    library(car)
    vif_values <- vif(model)
    vif_values
    
    tolerance <- 1 / vif_values
    tolerance

III. Hasil dan Pembahasan

Sebelum membahas persamaan regresi dan interpretasinya, penting untuk meninjau kesesuaian hasil perhitungan manual dengan hasil otomatis menggunakan fungsi lm(). Hal ini bertujuan untuk memastikan bahwa perhitungan manual yang dilakukan melalui operasi matriks (transpos, perkalian, invers, dll.) telah memberikan estimasi koefisien yang konsisten dengan metode standar di R.

# --- Perhitungan beta manual ---
XtX <- t(X) %*% X
XtX_inv <- solve(XtX)
XtY <- t(X) %*% Y
beta_manual <- XtX_inv %*% XtY

# --- Perhitungan otomatis menggunakan lm() ---
model <- lm(`Nilai UAS (Y)` ~ `Tingkat Kehadiran (%) (x1)` + `IQ (X2)`, data = data_iq)
beta_lm <- coef(model)

# --- Tabel perbandingan koefisien ---
comparison <- data.frame(
  Koefisien = c("Intercept", "X1 (Kehadiran)", "X2 (IQ)"),
  Manual = round(beta_manual, 4),
  LM = round(beta_lm, 4)
)
comparison
##         Koefisien  Manual      LM
##         Intercept 23.0545 23.0545
## X1 X1 (Kehadiran)  0.7372  0.7372
## X2        X2 (IQ) -0.0343 -0.0343

Selain koefisien, kita juga bisa membandingkan nilai F, p-value, dan R², yang akan memperkuat kesimpulan tentang kesesuaian kedua metode:

# --- Uji F & Koefisien Determinasi Manual ---
mean_y <- mean(Y)
Y_hat <- X %*% beta_manual
SST <- sum((Y - mean_y)^2)
SSR <- sum((Y_hat - mean_y)^2)
SSE <- sum((Y - Y_hat)^2)
df_reg <- ncol(X) - 1
df_er <- n - ncol(X)
MSR <- SSR / df_reg
MSE <- SSE / df_er
F_value <- MSR / MSE
pvalue_F <- pf(F_value, df_reg, df_er, lower.tail = FALSE)
R2_manual <- SSR / SST

# --- Nilai F dan R² dari lm() ---
fstat_lm <- summary(model)$fstatistic
F_lm <- fstat_lm[1]
pvalue_lm <- pf(fstat_lm[1], fstat_lm[2], fstat_lm[3], lower.tail = FALSE)
R2_lm <- summary(model)$r.squared

# --- Tabel Perbandingan Statistik ---
anova_comparison <- data.frame(
  Statistik = c("F-value", "P-value", "R²"),
  Manual = c(round(F_value, 4), round(pvalue_F, 6), round(R2_manual, 4)),
  LM = c(round(F_lm, 4), round(pvalue_lm, 6), round(R2_lm, 4))
)
anova_comparison
##   Statistik    Manual        LM
## 1   F-value 23.823000 23.823000
## 2   P-value  0.000752  0.000752
## 3        R²  0.871900  0.871900

Berdasarkan perbandingan antara perhitungan manual dan hasil regresi menggunakan fungsi lm(), dapat disimpulkan bahwa kedua metode menghasilkan nilai koefisien, F-value, p-value, dan R² yang sangat konsisten. Hal ini menunjukkan bahwa prosedur perhitungan manual yang dilakukan melalui operasi matriks dapat dipercaya dan valid, serta memberikan hasil yang sebanding dengan metode standar di R.

Kesamaan hasil ini memberikan dasar yang kuat untuk melanjutkan ke pembahasan persamaan regresi berganda. Dengan mengetahui bahwa model manual dan otomatis saling mendukung, interpretasi terhadap koefisien, pengaruh masing-masing variabel bebas, dan kemampuan model dalam menjelaskan variasi Nilai UAS dapat dilakukan dengan lebih meyakinkan.

3.1 Persamaan Regresi Berganda

Berdasarkan hasil pengolahan data menggunakan metode regresi linear berganda, diperoleh model regresi sebagai berikut:

# persamaan regresi
coef_model <- coef(model)

beta0 <- coef_model[1]
beta1 <- coef_model[2]
beta2 <- coef_model[3]

cat("Persamaan regresi: Y = ", round(beta0,4),
    "+", round(beta1,4), "X1 +",
    round(beta2,4), "X2\n")
## Persamaan regresi: Y =  23.0545 + 0.7372 X1 + -0.0343 X2

\[Y = 23.0545 + 0.7372 X_1 - 0.0343 X_2\] Pada persamaan regresi yang diperoleh, terdapat tiga parameter utama yaitu intercept \((\beta_0)\) serta dua koefisien slope \((\beta_1)\) dan \((\beta_2)\). Nilai intercept \((\beta_0) = 23.0545\) menunjukkan nilai prediksi Nilai UAS (Y) ketika variabel tingkat kehadiran \((X_1)\) dan IQ \((X_2)\) bernilai nol. Secara matematis, nilai ini merupakan titik potong garis regresi dengan sumbu Y. Meskipun dalam konteks nyata kondisi tersebut tidak terjadi, nilai intercept tetap penting sebagai dasar pembentukan model regresi.

Selanjutnya, nilai koefisien slope \(\beta_1 = 0.7372\) menunjukkan bahwa setiap peningkatan sebesar 1% pada tingkat kehadiran \((X_1)\) akan meningkatkan Nilai UAS sebesar 0.7372 poin, dengan asumsi variabel IQ \((X_2)\) konstan. Tanda positif pada koefisien ini menunjukkan bahwa hubungan antara tingkat kehadiran dan Nilai UAS bersifat searah, artinya semakin tinggi tingkat kehadiran siswa, maka semakin tinggi pula nilai UAS yang diperoleh.

Sementara itu, nilai koefisien slope \(\beta_2 = -0.0343\) menunjukkan bahwa setiap peningkatan satu satuan pada IQ \((X_2)\) justru diikuti dengan penurunan Nilai UAS sebesar 0.0343 poin, dengan asumsi tingkat kehadiran tetap. Namun, karena nilai koefisien ini sangat kecil dan berdasarkan hasil pengujian tidak signifikan, maka pengaruh IQ terhadap Nilai UAS dalam model ini dapat dikatakan lemah dan tidak berarti secara statistik.

Secara keseluruhan, model regresi ini menunjukkan bahwa variabel tingkat kehadiran memiliki pengaruh yang lebih dominan terhadap Nilai UAS dibandingkan dengan variabel IQ. Dengan demikian, model ini dapat digunakan untuk menjelaskan bahwa kehadiran siswa merupakan faktor penting dalam menentukan hasil belajar, sementara IQ dalam data ini tidak memberikan kontribusi yang signifikan.

3.2 Pengujian Hipotesis

Pengujian hipotesis dilakukan untuk mengetahui apakah variabel bebas, yaitu tingkat kehadiran \((X_1)\) dan IQ \((X_2)\), berpengaruh signifikan terhadap variabel terikat, yaitu Nilai UAS \((Y)\), baik secara simultan maupun parsial. Pengujian ini bertujuan untuk memastikan apakah model regresi yang terbentuk memiliki kemampuan yang signifikan dalam menjelaskan hubungan antar variabel.

  1. Uji Simultan

    Uji simultan (Uji F) dilakukan untuk mengetahui apakah variabel tingkat kehadiran \((X_1)\) dan IQ \((X_2)\) secara bersama-sama berpengaruh signifikan terhadap Nilai UAS \((Y)\).

    # anova manual
    anova_manual <- data.frame(
      Sumber = c("Regresi", "Residual", "Total"),
      DF = c(df_reg, df_er, df_reg + df_er),
      SS = c(SSR, SSE, SST),
      MS = c(MSR, MSE, NA),
      F = c(F_value, NA, NA),
      `P-value` = c(pvalue_F, NA, NA)
    )
    
    anova_manual
    ##     Sumber DF       SS       MS        F      P.value
    ## 1  Regresi  2  899.891 449.9455 23.82303 0.0007522929
    ## 2 Residual  7  132.209  18.8870       NA           NA
    ## 3    Total  9 1032.100       NA       NA           NA

    Hipotesis: \[ H_0: \beta_1 = \beta_2 = 0 \] \[ H_1: \beta_1 \ne 0 \ \text{atau} \ \beta_2 \ne 0 \] Taraf Signifikansi: \[ \alpha = 0.05 \]Statistik Uji: \[ F_{hitung} = 23.82303 \]

    Kriteria Keputusan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha \]

    Keputusan:

    Karena \(p\text{-value} = 0.0007523 < 0.05\), maka \(H_0\) ditolak.

    Kesimpulan:

    Pada taraf signifikansi 5%, dapat disimpulkan bahwa variabel tingkat kehadiran \((X_1)\) dan IQ \((X_2)\) secara simultan berpengaruh signifikan terhadap Nilai UAS \((Y)\). Hal ini menunjukkan bahwa model regresi yang digunakan sudah layak untuk menjelaskan hubungan antara variabel bebas dan variabel terikat.

  2. Uji Parsial (Uji t)

    Uji parsial (Uji t) dilakukan untuk mengetahui pengaruh masing-masing variabel bebas, yaitu tingkat kehadiran \((X_1)\) dan IQ \((X_2)\), terhadap variabel terikat Nilai UAS \((Y)\).

    # uji t (parsial)
    summary(model)
    ## 
    ## Call:
    ## lm(formula = `Nilai UAS (Y)` ~ `Tingkat Kehadiran (%) (x1)` + 
    ##     `IQ (X2)`, data = data_iq)
    ## 
    ## Residuals:
    ##     Min      1Q  Median      3Q     Max 
    ## -5.2861 -2.8939  0.0296  1.6791  6.1993 
    ## 
    ## Coefficients:
    ##                              Estimate Std. Error t value Pr(>|t|)    
    ## (Intercept)                  23.05445   25.57161   0.902 0.397247    
    ## `Tingkat Kehadiran (%) (x1)`  0.73723    0.10918   6.752 0.000264 ***
    ## `IQ (X2)`                    -0.03433    0.22051  -0.156 0.880686    
    ## ---
    ## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
    ## 
    ## Residual standard error: 4.346 on 7 degrees of freedom
    ## Multiple R-squared:  0.8719, Adjusted R-squared:  0.8353 
    ## F-statistic: 23.82 on 2 and 7 DF,  p-value: 0.0007523
Variabel Koefisien \((\beta)\) Std.Error t-hitung p-value Keterangan
intercept 23.05445 25.57161 0.902 0.397247 Gagal Tolak \(H_0\)
Tingkat Kehadiran (x1) 0.73723 0.10918 6.752 0.000264 Tolak \(H_0\)
IQ (x2) -0.03433 0.22051 -0.156 0.880686 Gagal Tolak \(H_0\)

Dari hasil diatas di dapatkan hasil berikut::

  • Variabel Tingkat Kehadiran

    Hipotesis:

    \[ \begin{aligned} H_0 &: \beta_1 = 0 \\ H_1 &: \beta_1 \ne 0 \end{aligned} \]Taraf Signifikansi:

    \[ \alpha = 0.05 \]Statistik Uji

    \[ t_{hitung} = 6.752 \] \[ p\text{-value} = 0.000264 \]Kriteria Keputusan:

    \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha \]Keputusan: Karena \(p\text{-value} = 0.000264 < 0.05\), maka \(H_0\) ditolak.

    Kesimpulan:

    pada taraf signifikansi 5% variabel tingkat kehadiran \((X_1)\) terbukti berpengaruh signifikan terhadap Nilai UAS \((Y)\) . Hal ini menunjukkan bahwa semakin tinggi tingkat kehadiran siswa, maka nilai UAS cenderung meningkat secara signifikan.

  • Variabel IQ \((X_2)\)

    Hipotesis:

    \[ \begin{aligned} H_0 &: \beta_2 = 0 \\ H_1 &: \beta_2 \ne 0 \end{aligned} \]Taraf Signifikansi:

    \[ \alpha = 0.05 \]Statistik Uji:

    \[ t_{hitung} = -0.156 \] \[ p\text{-value} = 0.880686 \]Krtiteria Keputusan:

    \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha \]Keputusan: Karena \(p\text{-value} = 0.880686 > 0.05\) , maka \(H_0\) gagal ditolak.

    Kesimpulan:

    Pada taraf signifikansi 5% variabel IQ \((X_2)\) tidak berpengaruh signifikan terhadap Nilai UAS \((Y)\) . Hal ini menunjukkan bahwa dalam model ini, IQ bukan merupakan faktor yang menentukan secara signifikan terhadap hasil nilai UAS.

3.3 Koefisien Determinasi

Koefisien determinasi \((R^2)\) digunakan untuk mengetahui sejauh mana model regresi mampu menjelaskan variasi data.

# koefisien determinasi
R2_manual <- SSR / SST
R2_manual
## [1] 0.8719029

Berdasarkan hasil perhitungan manual pada praktikum ini, diperoleh nilai \(R^2\) sebesar 0.8719 artinya, sekitar 87.19% variasi Nilai UAS (Y) dapat dijelaskan oleh variabel Tingkat Kehadiran (%) (X₁) dan IQ (X₂) yang dimasukkan ke dalam model regresi. Sementara sisanya sebesar 12,81% dijelaskan oleh faktor-faktor lain di luar model, seperti motivasi belajar siswa, kualitas pengajaran, kondisi lingkungan, atau faktor personal lainnya.

Nilai \(R^2\) yang tinggi ini menunjukkan bahwa model regresi berganda yang dibentuk memiliki tingkat kecocokan (goodness of fit) yang baik, artinya model mampu merepresentasikan hubungan antara Nilai UAS dengan kedua variabel independennya secara cukup akurat. Meskipun tidak sempurna, model ini sudah cukup dapat digunakan untuk memprediksi Nilai UAS berdasarkan tingkat kehadiran dan IQ siswa.

3.4 Uji Asumsi

Setelah model regresi berganda terbentuk dan koefisien dihitung, langkah berikutnya adalah memeriksa asumsi klasik regresi untuk memastikan model dapat diinterpretasikan dengan valid. Uji ini meliputi normalitas residual, homoskedastisitas, independensi residual, dan multikolinearitas.

Uji normalitas dilakukan untuk memastikan residual model berdistribusi normal sebagai syarat awal analisis regresi berganda. Berdasarkan grafik histogram, sebaran data terlihat menyebar di sekitar nilai nol tanpa adanya kemencengan yang ekstrem. Hal ini diperkuat oleh tampilan Normal Q-Q Plot, di mana titik-titik data pengamatan mengenai tingkat kehadiran, skor IQ, dan nilai UAS terlihat merapat dan mengikuti arah garis diagonal. Karena pola titik tidak menyimpang jauh dari garis teoretis, maka asumsi normalitas terpenuhi dan model layak digunakan untuk pengujian hipotesis lebih lanjut.

## 
##  Shapiro-Wilk normality test
## 
## data:  residual
## W = 0.95125, p-value = 0.6833

Berdasarkan uji Shapiro-Wilk, diperoleh p-value sebesar 0,6833, yang lebih besar dari 0.05, sehingga residual berdistribusi normal. Dugaan awal melalui QQ-plot dan histogram residual juga menunjukkan pola distribusi yang mendekati normal.

## 
##  studentized Breusch-Pagan test
## 
## data:  model
## BP = 5.905, df = 2, p-value = 0.05221

Pemeriksaan heteroskedastisitas menggunakan Breusch-Pagan test menghasilkan p-value 0.05221, menandakan variansi residual relatif konstan (homoskedastisitas terpenuhi).

## 
##  Durbin-Watson test
## 
## data:  model
## DW = 2.594, p-value = 0.3974
## alternative hypothesis: true autocorrelation is not 0

Uji Durbin-Watson menunjukkan nilai 2.594 dengan p-value 0.3974, sehingga residual bersifat independen dan tidak terjadi autokorelasi.

## `Tingkat Kehadiran (%) (x1)`                    `IQ (X2)` 
##                     1.055571                     1.055571
## `Tingkat Kehadiran (%) (x1)`                    `IQ (X2)` 
##                     0.947355                     0.947355

Selain itu, uji multikolinearitas dengan VIF dan tolerance menunjukkan nilai VIF 1.056 dan tolerance 0.947 untuk kedua variabel bebas, yang berada dalam batas aman. Hal ini menunjukkan bahwa variabel bebas tidak saling berkorelasi kuat dan masing-masing memberikan informasi unik terhadap Nilai UAS.

Secara keseluruhan, model regresi berganda memenuhi semua asumsi klasik, sehingga hasil analisis koefisien, uji hipotesis, dan prediksi dapat dianggap valid dan dapat dipercaya.

IV. Kesimpulan

Berdasarkan hasil analisis regresi linear berganda terhadap faktor-faktor yang memengaruhi hasil belajar siswa, dapat disimpulkan bahwa prosedur perhitungan manual menggunakan operasi matriks menghasilkan nilai koefisien, statistik F, p-value, dan \(R^2\) yang identik dan konsisten dengan hasil otomatis fungsi lm() di R. Validitas perhitungan ini menghasilkan persamaan regresi \(Y = 23.0545 + 0.7372 X_1 - 0.0343 X_2\), yang menunjukkan bahwa tingkat kehadiran (\(X_1\)) memiliki hubungan positif terhadap nilai UAS, sedangkan IQ (\(X_2\)) memiliki hubungan negatif yang sangat kecil dan tidak signifikan dalam model ini.

Hasil pengujian hipotesis secara simultan (Uji F) menunjukkan bahwa tingkat kehadiran dan IQ secara bersama-sama berpengaruh signifikan terhadap nilai UAS (\(p\text{-value} = 0.00075 < 0.05\)). Namun, melalui pengujian secara parsial (Uji t), ditemukan bahwa hanya variabel tingkat kehadiran yang memberikan pengaruh signifikan secara statistik (\(p\text{-value} = 0.00026\)), sementara variabel IQ tidak terbukti berpengaruh nyata terhadap hasil ujian siswa dalam penelitian ini. Kekuatan model ini tergolong sangat baik, di mana nilai koefisien determinasi (\(R^2\)) sebesar 0.8719 menunjukkan bahwa 87.19% variasi nilai UAS dapat dijelaskan oleh kedua variabel bebas tersebut.

Terakhir, seluruh uji asumsi klasik telah terpenuhi, meliputi residual yang berdistribusi normal (Shapiro-Wilk \(p > 0.05\)), terpenuhinya aspek homoskedastisitas, tidak adanya autokorelasi, serta bebas dari masalah multikolinearitas (VIF < 10). Dengan demikian, model regresi yang terbentuk bersifat valid, unbiased, dan dapat diandalkan untuk menjelaskan bahwa kehadiran di kelas merupakan faktor yang jauh lebih dominan dan menentukan keberhasilan akademik siswa dibandingkan dengan faktor IQ dalam lingkup data ini.