Notes Theme: - Kelas A: cayman
- Kelas B: tactile
- Kelas C: architect
- Kelas D: hpstr
Library:
> # install.packages("knitr")
> # install.packages("rmarkdown")
> # install.packages("prettydoc")
> # install.packages("equatiomatic")
> # install.packages("tseries")
> # install.packages("lmtest")
> # install.packages("car")Regresi linear adalah salah satu teknik analisis statistik yang paling umum digunakan untuk memahami hubungan antara satu atau lebih variabel independen dan variabel dependen. Tujuan utamanya adalah untuk memodelkan hubungan antara variabel independen dan dependen sehingga dapat digunakan untuk prediksi nilai dependen berdasarkan nilai-nilai independen yang diketahui.
Namun, untuk mendapatkan hasil yang valid dan dapat diandalkan dari analisis regresi linear, perlu dipastikan bahwa asumsi-asumsi dasar dari metode tersebut terpenuhi. Asumsi-asumsi tersebut termasuk asumsi linearitas (hubungan antara variabel independen dan dependen adalah linear), asumsi independensi (pengamatan dalam dataset saling independen), asumsi homoskedastisitas (varians dari kesalahan prediksi konstan), dan asumsi normalitas residual (residual terdistribusi secara normal), dan lainnya.
Dalam mini project ini, akan digunakan software R-Studio untuk menerapkan analisis regresi linear pada dataset yang relevan. Selain itu, kami juga akan memeriksa apakah asumsi-asumsi dasar dari regresi linear terpenuhi dalam dataset yang digunakan. Langkah-langkah ini akan membantu dalam pemahaman lebih lanjut tentang hubungan antara variabel independen dan dependen, serta kecocokan model yang dibuat.
Analisi Regresi menyelidiki dan memodelkan hubungan antar variabel. Hubungan linier diasumsikan antara variabel dependen atau respon (Y) dan satu atau beberapa variabel independen, prediktor, regressor (X). Regresi linear dibagi menjadi regresi linear sederhana dan regresi linear berganda. Pada kasus ini, akan digunakan regresi linear berganda yakni regresi linear yang lebih dari satu variabel prediktor. Model dari regresi linear berganda dengan parameter \(\beta\) adalah sebagai berikut.
\[ Y=\beta_{0}+\beta_{1}X_{1}+\beta_{2}X_{2}+...+\beta_{p}X_{p} \]
Sama halnya seperti regresi linear sederhana, untuk menganalisis jika prediktor individu memiliki pengaruh pada respon Y dilakukan pengujian parameter apakah berbeda dari nol atau tidak.
Parameter dalam regresi adalah \(\beta\). Untuk mencari nilai \(\beta\) dalam regresi linear berganda menggunakan rumus berikut.
\[ \beta=\left( X^{t}X \right)^{-1}\left( X^{t}Y \right) \]
dengan \(X\) adalah matriks dari variabel prediktor dan \(Y\) adalah matriks dari variabel respon.
Pengujian ini dilakukan sebagai upaya untuk memeriksa pengaruh koefisien regresi peubah prediktor secara bersaman. Pengujian secara simultan menggunakan uji F dengan penjelasan sebagai berikut.
Hipotesis
\(H_{0}:\beta_{1}=\beta_{2}=0\)
\(H_{1}: \text{Minimal terdapat salah satu }\beta_{i}\neq 0,\text{di mana }i=1,2\)
Statistik Uji
\[ JKR=\beta^{t}(X^{t}Y)-n\bar{Y}^{2} \]
\[ JKT=Y^{t}Y-n\bar{Y}^{2} \]
\[ JKG=JKT-JKR \]
Lebih lengkapnya dapat dilihat pada tabel dibawah ini
| SK | DB | JK | KT | Fhitung |
|---|---|---|---|---|
| Regresi | k-1 | JKR | JKR/(k-1) | KTR/KTG |
| Galat | n-k | JKG | JKG/(n-k) | |
| Total | n-1 | JKT |
Keputusan Apabila \(Fhitung>Ftabel\) tolak \(H_{0}\), dan sebaliknya apabila \(Fhitung<Ftabel\) terima \(H_{0}\).
Pengujian parameter yang digunakan adalah uji t. Pengujian ini dilakukan untuk melihat apakah masing-masing variabel prediktor memberikan pengaruh secara signifikan kepada variabel respon atau tidak. Penjelasannya sebagai berikut.
Hipotesis
\[ H_{0}:\beta_{i}=0 (\text{Tidak ada pengaruh dari variabel prediktor ke-i pada variabel respon}) \]
\[ H_{1}:\beta_{i}\neq 0 (\text{Terdapat pengaruh dari variabel prediktor ke-i pada variabel respon}) \]
Statistik Uji
\[ t_{hitung}=\frac{\hat{\beta_{i}}-\beta_{0}}{\sqrt{KTG*(X^{t}X)^{-1}_{[i.i]}}} \]
Keputusan Apabila \(thitung>ttabel\) maka tolak \(H_{0}\), dan sebaliknya apabila \(thitung<ttabel\) terima \(H_{0}\).
Uji Koefisien Determinasi (R-Square) digunakan untuk melihat seberapa besar kontribusi variabel prediktor terhadap variabel responnya. Rumusnya adalah sebagai berikut.
\[ R^{2}=\frac{JKR}{JKT} \]
Uji Saphiro Wilk digunakan untuk menguji apakah galat dari model regresi yang terbentuk berdistribusi normal atau tidak. Uji ini lebih tepat digunakan untuk sampel kecil, kurang dari 50 sampel. Apabila menggunakan R syntax-nya sebagai berikut.
Homoskedastisitas digunakan untuk melihat adanya kesamaan ragam dari residual antar pengamatan. Uji yang dapat digunakan adalah uji Breusch Pagan. Apabila menggunakan R syntax-nya sebagai berikut.
Nonautokorelasi digunakan untuk melihat apakah terdapat hubungan di antara periode satu ke periode sebelumnya. Karena analisis regresi ingin melihat adanya hubungan antara variabel prediktor dan variabel respon. Uji yang digunakan adalah uji Durbin-Watson. Apabila menggunakan R syntax-nya sebagai berikut.
Nonmultikolinearitas digunakan untuk melihat adanya hubungan di antara variabel-variabel bebas dalam regresi berganda. Alat statistik yang sering digunakan untuk mendeteksi adanya multikolinearitas adalah Variance Inflation Factor (VIF).
\[ VIF_{j}=\frac{1}{1-R_{j}^{2}} \]
Multikolinearitas antar variabel prediktor terjadi apabila keeratan hubungan antar variabel sangat besar. Asumsi nonmultikolinearitas terpenuhi jika nilai VIF < 10. Apabila menggunakan R, syntax-nya adalah sebagai berikut.
Berikut ini adalah beberapa packages yang digunakan dalam analisis regresi linear berganda.
> # Import File Dari CSV
> Dataku=read.csv("C:/Users/user/Downloads/Komstat_Data.csv",header=TRUE)
> Dataku
No X1 X2 Y
1 1 110 60 65
2 2 120 70 70
3 3 115 75 75
4 4 130 80 75
5 5 110 80 80
6 6 120 90 80
7 7 120 95 85
8 8 125 95 95
9 9 110 100 90
10 10 120 100 98
> # Input Data Manual
> Nilai_UAS=c(65,70,75,75,80,80,85,95,90,98)
> IQ=c(110,120,115,130,110,120,120,125,110,120)
> Kehadiran=c(60,70,75,80,80,90,95,95,100,100)
> Data=data.frame(Nilai_UAS,IQ,Kehadiran);Data
Nilai_UAS IQ Kehadiran
1 65 110 60
2 70 120 70
3 75 115 75
4 75 130 80
5 80 110 80
6 80 120 90
7 85 120 95
8 95 125 95
9 90 110 100
10 98 120 100Dalam syntax di atas, pendefinisian data dapat menggunakan 2 cara yakni import file cs menggunakan syntax read.csv() maupun input secara manual menggunakan data frame.
> ## Pembentukan Matriks
> # Y=as.matrix(Data$Nilai_UAS,ncol=1);Y
> # MatX=data.frame(rep(1,times=10),Data$IQ,Data$Kehadiran);MatX
> # X=as.matrix(MatX);X
> # XtX=t(X)%*%X;XtX
> # XtY=t(X)%*%Y;XtY
> # n=dim(Y)[1];n
> ## Perhitungan nilai Beta
> # beta=(solve(XtX))%*%(XtY);beta
> ## Function Regresi Linear menggunakan syntax R
> # model=lm(Nilai_UAS~IQ+Kehadiran);model
> Variabel respon Y didefinisikan sebagai matriks dengan syntax as.matrix(), sementara variabel prediktor X didefinisikan sebagai matriks dengan tambahan syntax rep(1,times=10) sebagai intercept. Selain itu, syntax di atas menampilkan banyak operasi matriks seperti %*% untuk perkalian matriks, “t()” untuk transpose matriks, dan “solve()” untuk invers matriks. Adapula function di R yang digunakan untuk analisis regresi linear sederhana maupun berganda yakni pada syntax “lm()”.
> ## Uji Simultan (F)
> # Yduga=X%*%beta;Yduga
> # Uduga=Y-Yduga;Uduga
> # Ybar=rep(mean(Y),n);Ybar
> ## Jumlah Kuadrat
> # JKT=t(Y-Ybar)%*%(Y-Ybar);JKT
> # JKR=t(Yduga-Ybar)%*%(Yduga-Ybar);JKR
> # JKG=JKT-JKR;JKG
> # JK=c(JKR,JKG,JKT);JK
> ## Derajat Bebas
> # dbR=2
> # dbT=n-1;dbT
> # dbG=dbT-dbR;dbG
> # db=c(dbR,dbG,dbT);db
> ## Kuadrat Tengah
> # KTR=JKR/dbR;KTR
> # KTG=JKG/dbG;KTG
> # KT=c(KTR,KTG,"NA");KT
> ## Menghitung uji F
> # Fhit=KTR/KTG;Fhit
> # Fhitung=c(Fhit,"NA","NA")
> ## Menghitung P-value
> # Pval=pf(Fhit,2,7,lower.tail=FALSE);Pval
> # Pvalue=c(Pval,"NA","NA")
> ## Membentuk Tabel Anova
> # SK=c("Regresi","Galat","Total")
> # Anova=data.frame(SK,JK,db,KT,Fhitung,Pvalue)
> # Anova
> ## Function Uji Simultan menggunakan syntax R
> # model=lm(Nilai_UAS~IQ+Kehadiran);model
> # summary(model)Pengujian dilakukan secara manual menggunakan R dengan menghitung setiap sub-bagian dari tabel anova dan membentuknya kembali menggunakan data frame dengan syntax data.frame()
> ## Uji Parsial (t)
> # k=3;sd=rep(0,k)
> # for(i in 1:k){sd[i]=sqrt(KTG*(solve(t(X)%*%X))[i,i])};sd
> # thit=beta/sd;thit
> # pvalue_t=2*pt(abs(thit),dbG,lower.tail=FALSE);pvalue_t
> ## Function Uji Parsial menggunakan syntax R
> # model=lm(Nilai_UAS~IQ+Kehadiran);model
> # summary(model)Dalam pengujian ini, nilai k yang digunakan adalah 3. Untuk memudahkan perhitungan maka akan digunakan looping dengan syntax for (i in 1:k) dengan rumus sesuai dengan tinjauan pustaka pada bab sebelumnya. Dan untuk mencari p-value sendiri menggunakan function pt() yang berarti menghitung fungsi kumulatif dari sebaran t.
> ## Uji Koefisien Determinasi
> # Rsquare=JKR/JKT;Rsquare
> ## Function Uji Koefisien Determinasi menggunakan syntax R
> # model=lm(Nilai_UAS~IQ+Kehadiran);model
> # summary(model)Menggunakan syntax lm() untuk mencari tahu apakah nilai R-Square yang dihitung sama atau berbeda dengan perhitungan manual.
> ## Asumsi Normalitas
> # sisa=residuals(Model)
> # shapiro.test(sisa)
> ## Asumsi Homoskedastisitas
> # bptest(Model)
> ## Asumsi Nonautokorelasi
> # dwtest(Model)
> ## Asumsi Nonmultikolinearitas
> # vif(Model)Uji-uji di atas dapat dilakukan apabila telah membuka semua packages yang ada di library.
Dari data yang telah diinputkan, akan dibentuk matriks sebagai berikut.
\[ Y=\left[ \begin{matrix} 65\\ 70\\ 75\\ 80\\ 80\\ 85\\ 95\\ 90\\ 98\\ \end{matrix} \right] \]
\[ X=\left[ \begin{matrix} 1 &110 &60 \\ 1 &120 &70 \\ 1 &115 &75 \\ 1 &130 &75 \\ 1 &110 &80 \\ 1 &120 &80 \\ 1 &120 &85 \\ 1 &125 &95 \\ 1 &110 &90 \\ 1 &120 &98 \end{matrix} \right] \]
Apabila menggunakan R-Studio pembentukan matriksnya yakni sebagai berikut.
> # Pembentukan Matriks
> Y=as.matrix(Data$Nilai_UAS,ncol=1);Y
[,1]
[1,] 65
[2,] 70
[3,] 75
[4,] 75
[5,] 80
[6,] 80
[7,] 85
[8,] 95
[9,] 90
[10,] 98
> MatX=data.frame(rep(1,times=10),Data$IQ,Data$Kehadiran);MatX
rep.1..times...10. Data.IQ Data.Kehadiran
1 1 110 60
2 1 120 70
3 1 115 75
4 1 130 80
5 1 110 80
6 1 120 90
7 1 120 95
8 1 125 95
9 1 110 100
10 1 120 100
> X=as.matrix(MatX);X
rep.1..times...10. Data.IQ Data.Kehadiran
[1,] 1 110 60
[2,] 1 120 70
[3,] 1 115 75
[4,] 1 130 80
[5,] 1 110 80
[6,] 1 120 90
[7,] 1 120 95
[8,] 1 125 95
[9,] 1 110 100
[10,] 1 120 100
> XtX=t(X)%*%X;XtX
rep.1..times...10. Data.IQ Data.Kehadiran
rep.1..times...10. 10 1180 845
Data.IQ 1180 139650 99900
Data.Kehadiran 845 99900 73075
> XtY=t(X)%*%Y;XtY
[,1]
rep.1..times...10. 813
Data.IQ 96060
Data.Kehadiran 69925
> n=dim(Y)[1];n
[1] 10Setelah dibentuk matriks seperti syntax di atas, maka digunakan rumus sebagai berikut untuk menghitung nilai \(\beta\).
\[ \hat{\beta}=\left( X^{t}X \right)^{-1}(X^{t}Y) \]
Sehingga didapat hasil \(\beta\) -nya adalah sebagai berikut
> # Perhitungan nilai Beta
> beta=(solve(XtX))%*%(XtY);beta
[,1]
rep.1..times...10. 23.0544545
Data.IQ -0.0343275
Data.Kehadiran 0.7372330> # Function Regresi Linear menggunakan syntax R
> model=lm(Nilai_UAS~IQ+Kehadiran);model
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
Coefficients:
(Intercept) IQ Kehadiran
23.05445 -0.03433 0.73723 Dari syntax di atas, dapat disimpulkan bahwa apabila perhitungan dilakukan secara manual dengan R menunjukkan hasil yang sama dengan function yang ada pada R “lm()”
Hipotesis
\(H_{0}:\beta_{1}=\beta_{2}=0\)
\(H_{1}: \text{Minimal terdapat salah satu }\beta_{i}\neq 0,\text{di mana }i=1,2\)
Statistik Uji
Statistik uji yang digunakan adalah uji F, apabila menggunakan R syntax-nya sebagai berikut.
> Yduga=X%*%beta;Yduga
[,1]
[1,] 63.51241
[2,] 70.54147
[3,] 74.39927
[4,] 77.57052
[5,] 78.25707
[6,] 85.28613
[7,] 88.97229
[8,] 88.80065
[9,] 93.00173
[10,] 92.65846
> Uduga=Y-Yduga;Uduga
[,1]
[1,] 1.4875890
[2,] -0.5414662
[3,] 0.6007312
[4,] -2.5705215
[5,] 1.7429286
[6,] -5.2861266
[7,] -3.9722917
[8,] 6.1993458
[9,] -3.0017318
[10,] 5.3415432
> Ybar=rep(mean(Y),n);Ybar
[1] 81.3 81.3 81.3 81.3 81.3 81.3 81.3 81.3 81.3 81.3
> # Jumlah Kuadrat
> JKT=t(Y-Ybar)%*%(Y-Ybar);JKT
[,1]
[1,] 1032.1
> JKR=t(Yduga-Ybar)%*%(Yduga-Ybar);JKR
[,1]
[1,] 899.891
> JKG=JKT-JKR;JKG
[,1]
[1,] 132.209
> JK=c(JKR,JKG,JKT);JK
[1] 899.891 132.209 1032.100
> # Derajat Bebas
> dbR=2
> dbT=n-1;dbT
[1] 9
> dbG=dbT-dbR;dbG
[1] 7
> db=c(dbR,dbG,dbT);db
[1] 2 7 9
> # Kuadrat Tengah
> KTR=JKR/dbR;KTR
[,1]
[1,] 449.9455
> KTG=JKG/dbG;KTG
[,1]
[1,] 18.887
> KT=c(KTR,KTG,"NA");KT
[1] "449.945516644229" "18.886995244506" "NA"
> # Menghitung uji F
> Fhit=KTR/KTG;Fhit
[,1]
[1,] 23.82303
> Fhitung=c(Fhit,"NA","NA")
> # Menghitung P-value
> Pval=pf(Fhit,2,7,lower.tail=FALSE);Pval
[,1]
[1,] 0.0007522929
> Pvalue=c(Pval,"NA","NA")
> # Membentuk Tabel Anova
> SK=c("Regresi","Galat","Total")
> Anova=data.frame(SK,JK,db,KT,Fhitung,Pvalue)
> Anova
SK JK db KT Fhitung Pvalue
1 Regresi 899.891 2 449.945516644229 23.8230332998634 0.000752292903839419
2 Galat 132.209 7 18.886995244506 NA NA
3 Total 1032.100 9 NA NA NADari di atas di dapatkan \(P-Value=0.00075\). Perhitungan manual di atas menunjukkan hasil yang sama dengan menggunakan function “lm()” pada syntax R di bawah ini.
> # Function Uji Simultan menggunakan syntax R
> model=lm(Nilai_UAS~IQ+Kehadiran);model
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
Coefficients:
(Intercept) IQ Kehadiran
23.05445 -0.03433 0.73723
> summary(model)
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
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
IQ -0.03433 0.22051 -0.156 0.880686
Kehadiran 0.73723 0.10918 6.752 0.000264 ***
---
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.0007523Keputusan
\(P-Value(0.00075) < \alpha(0.05)\) maka Tolak \(H_{0}\)
Kesimpulan
Dengan taraf nyata 5%, dapat disimpulkan bahwa minimal ada salah satu variabel prediktor (IQ dan Kehadiran) yang memberikan pengaruh signifikan terhadap Nilai UAS.
Hipotesis
\(H_{0}:\beta_{i}=0 (\text{Tidak ada pengaruh dari variabel prediktor ke-i pada variabel respon})\)
\(H_{1}:\beta_{i}\neq 0 (\text{Terdapat pengaruh dari variabel prediktor ke-i pada variabel respon})\)
Statistik Uji
Statistik uji yang digunakan adalah uji t. k yang digunakan sama dengan 3 (Karena Apabila menggunakan R statistik ujinya sebagai berikut.
> # Uji Parsial (t)
> k=3;sd=rep(0,k)
> for(i in 1:k){sd[i]=sqrt(KTG*(solve(t(X)%*%X))[i,i])};sd
[1] 25.5716101 0.2205125 0.1091797
> thit=beta/sd;thit
[,1]
rep.1..times...10. 0.9015644
Data.IQ -0.1556715
Data.Kehadiran 6.7524718
> pvalue_t=2*pt(abs(thit),dbG,lower.tail=FALSE);pvalue_t
[,1]
rep.1..times...10. 0.3972467061
Data.IQ 0.8806860631
Data.Kehadiran 0.0002644133
> # Function Uji Parsial menggunakan syntax R
> model=lm(Nilai_UAS~IQ+Kehadiran);model
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
Coefficients:
(Intercept) IQ Kehadiran
23.05445 -0.03433 0.73723
> summary(model)
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
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
IQ -0.03433 0.22051 -0.156 0.880686
Kehadiran 0.73723 0.10918 6.752 0.000264 ***
---
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.0007523Sehingga dari uji t di atas didapatkan hasil sebagai berikut.
| Prediktor | P-Value |
|---|---|
| Intercept | 0.39724 |
| IQ | 0.88068 |
| Kehadiran | 0.00026 |
Keputusan
| Prediktor | P-Value | Keputusan |
|---|---|---|
| Intercept | 0.39724 | Terima \(H_{0}\) |
| IQ | 0.88068 | Terima \(H_{0}\) |
| Kehadiran | 0.00026 | Tolak \(H_{0}\) |
Kesimpulan
| Prediktor | Kesimpulan |
|---|---|
| Intercept | Tidak terdapat pengaruh yang signifikan antara intercept dengan nilai UAS |
| IQ | Tidak terdapat pengaruh yang signifikan antara IQ dengan nilai UAS |
| Kehadiran | Terdapat pengaruh yang signifikan antara Kehadiran dengan dengan nilai UAS |
Pengujian Koefisien Determinasi digunakan untuk melihat seberapa besar kontribusi varibel prediktor terhadap variabel respon. Dalam kasus ini, cara menghitungnya adalah sebagai berikut.
Sehingga didapat R-Square sebesar 0.8719 dan pengujian manual ini menunjukkan hasil yang sama dengan pengujian secara syntax function di R yakni “lm()” sebagai berikut.
> # Function Uji Koefisien Determinasi menggunakan syntax R
> model=lm(Nilai_UAS~IQ+Kehadiran);model
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
Coefficients:
(Intercept) IQ Kehadiran
23.05445 -0.03433 0.73723
> summary(model)
Call:
lm(formula = Nilai_UAS ~ IQ + Kehadiran)
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
IQ -0.03433 0.22051 -0.156 0.880686
Kehadiran 0.73723 0.10918 6.752 0.000264 ***
---
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.0007523Dari pengujian di atas, dapat disimpulkan bahwa IQ dan Kehadiran mampu menjelaskan pengaruhnya sebesar 87.19% dalam menentukan nilai UAS, sisanya dipengaruhi oleh faktor lain.
Hipotesis
\(H_{0}:\text{Galat populasi berdistribusi normal}\)
\(H_{1}:\text{Galat populasi tidak berdistribusi normal}\)
Statistik Uji
> model = lm(Nilai_UAS ~ IQ + Kehadiran)
> sisaan = residuals (model)
> shapiro.test(sisaan)
Shapiro-Wilk normality test
data: sisaan
W = 0.95125, p-value = 0.6833Dari di atas di dapatkan \(P-Value=0.6833\).
Keputusan
\(P-Value(0.6833) > \alpha(0.05)\) maka Terima \(H_{0}\)
Kesimpulan
Dengan taraf nyata 5%, dapat disimpulkan bahwa galat populasi menyebar secara normal
Hipotesis
\(H_{0}:\text{Ragam populasi bersifat konstan}\)
\(H_{1}:\text{Ragam populasi tidak bersifat konstan}\)
Statistik Uji
> model = lm(Nilai_UAS ~ IQ + Kehadiran)
> bptest(model)
studentized Breusch-Pagan test
data: model
BP = 5.905, df = 2, p-value = 0.05221Dari di atas di dapatkan \(P-Value=0.05221\).
Keputusan
\(P-Value(0.05221) > \alpha(0.05)\) maka Terima \(H_{0}\)
Kesimpulan
Dengan taraf nyata 5%, dapat disimpulkan bahwa ragam populasi bersifat konstan
Hipotesis
\(H_{0}:\text{Tidak terjadi autokorelasi}\)
\(H_{1}:\text{Terjadi autokorelasi}\)
Statistik Uji
model = lm(Nilai_UAS ~ IQ + Kehadiran)
> model = lm(Nilai_UAS ~ IQ + Kehadiran)
> dwtest(model)
Durbin-Watson test
data: model
DW = 2.594, p-value = 0.8013
alternative hypothesis: true autocorrelation is greater than 0Dari di atas di dapatkan \(P-Value=0.8013\).
Keputusan
\(P-Value(0.8013) > \alpha(0.05)\) maka Terima \(H_{0}\)
Kesimpulan
Dengan taraf nyata 5%, dapat disimpulkan bahwa model regresi memenuhi asumsi nonautokorelasi (tidak terjadi autokorelasi)
Model yang terbentuk dari analisis regresi pengaruh IQ dan Kehadiran terhadap nilai UAS adalah sebagai berikut.
\[ Y=23.05445-0.03433X_{1}+0.73723X_{2} \]
dengan, - \(Y\) = Nilai_UAS - \(X_{1}\) = IQ - \(X_{2}\) = Kehadiran
Setelah melakukan analisis regresi dan pengujian asumsinya, dapat disimpulkan bahwa model yang terbentuk adalah \(Y=23.05445-0.03433X_{1}+0.73723X_{2}\). Dalam hal ini, koefisien variabel \(X_{1}\) bernilai negatif yang artinya IQ memberikan pengaruh negatif (Tidak memberikan pengaruh yang signifikan) terhadap nilai_UAS. Model regresi yang terbentuk merupakan model regresi terbaik karena telah memenuhi asumsi normalitas, homoskedastisitas, nonautokorelasi, dan nonmultikolinearitas.