Oleh:
Siti Sarah Sobariah Lestari
NPM: 140720190002
A. PENDAHULUAN
1.1 Latar Belakang
1.2 Tujuan
Tulisan dari tulisan ini adalah sebagai berikut:
1. Menganalisis faktor-faktor yang mempengaruhi kemampuan analitik.
2. Melakukan analisis pada data outlier dalam model regresi linier berganda.
3. Melakukan transfromasi box-cox
4. Melakukan pemilihan variabel dan model terbaik untuk analisis faktor-faktor yang
memengaruhi kemiskinan di Indonesia tahun 2017.
1
B. DATA DAN METODOLOGI
2.1 Data
Data yang digunakan dalam analisis ini adalah data sekunder yang bersumber dari
penelitian terdahulu.
Variabel yang digunakan dalam analisis ini sebagai berikut:
Variabel Keterangan
2
C. HASIL DAN PEMBAHASAN
Berdasarkan hasil dari output diatas, dapat dijelaskan kedalam beberapa poin berikut :
Terdapat 86 orang yang dihitung nilai kongitif pada kemampuan membaca,
menyusun kata, kemampuan metematis, dan kemampuan geomtris.
Nilai rata-rata responden dalam kemampuan membaca sebesar 0.9997, sedangkan
dalam kemampuan menyusun kata nilai rata-rata responden sebesar 1.028, dalam
kemampuan matematis sebesar 1.296 dan kemampuan geometris sebesar 1.160
Hasil perhitungan simpangan baku, menunjukkan variabel-variabel yang diteliti
memiliki nilai simpangan baku yang berbeda. Sehingga dapat disimpulkan data
yang digunakan bervariasi.
Untuk melihat ukuran pusat dengan lebih jelas, maka ditampilkan Boxplot tiap-tiap variabel
sebagai berikut :
Boxplot
3
Dalam box plot di atas, secara ksat mata dapat dilihat terdapat outlier pada variabel
reading, mathematics, dan geometry. Untuk pengamatan lebih jelas, akan dibahas observasi
mana yang meruapakan outlier dalam bagian pendeteksian outlier dengan metode leverage.
3.2 Uji Linieritas
Sebelum dilakukan analissi regresi linier berganda, dilakukan uji linieritas terlabih
dahulu untuk memastikan apakah variabel bebas yang kita miliki membentuk hubungan linier
dengan variabel tak bebasnya. Apabila ditemukan ketidak linieran, maka variabel bebas harus
dilakukan transformasi. Atau pengujian regeresi linier tidak cocok dengan variabel tersebut.
Pengujian linieritas dapat dilakukan dengan melihat plot antara variabel-variabel bebas
dengan variabel tak bebasnya dan melihat korelasi antara variabel bebas dengan tak
bebasnya. Berikut hasil hitung dengan menggunakan R :
Diagram Pencar
Hasil diagram pencar (scatter plot) di atas menggambarkan hubungan antara variabel
𝑦 dan 𝑥. Terlihat bahwa seluruh variabel bebas, mengikuti garis linier dan tidak membentuk
suatu pola. Sehingga secara kasat mata, dapat kita asumsikan bahwa seluruh variabel bebas
linier dengan variabel tak bebasnya. Uji linieritas lebih lanjut dilakukan secara eksak dengan
melihat nilai p-value dari setiap model.
4
Uji Linieritas 𝒚 (Kemampuan Analitik) dan 𝒙𝟏 (Kemampuan Membaca)
Hasil output R menunjukkan bahwa p-value = 0,001662 (nilainya lebih kecil dari α =
0,05), artinya hubungan antara variabel menyusun kata dengan kemampuan analitik adalah
linier.
5
Uji Linieritas 𝒚 (Kemampuan Analitik) dan 𝒙𝟑 (Kemampuan Matematis)
6
Analisis Korelasi
3.3
Analisis korelasi ini bertujuan untuk melihat keeratan hubungan linier di antara semua
variabel yang akan dilakukan pengujian. Output R dari korelasi secara grafik dapat
ditampilkan pada gambar berikut ini.
7
Berdasarkan pemodelan di atas, didapatkan model regresi sebagai berikut:
Uji Simultan
Hipotesis :
H0 : Variabel independen secara simultan tidak berpengaruh terhadap variabel
dependen
H1 : Variabel independen secara simultan berpengaruh terhadap variabel dependen
8
Statistik Uji
P-Value
Nilai Kritis
𝛼 = 0.05
Kriteria Uji
Tolak H0 Jika, P-Value<Nilai kritis
Untuk uji signifikansi model secara simultan, didapat nilai p-value 0.0000000001 <
0,05 sehingga H0 ditolak, artinya variabel-variabel bebas secara simultan berpengaruh secara
signifikan terhadap variabel tak bebas dengan kata lain model layak/diterima.
Uji Parsial
Hipotesis :
H0 : Variabel 𝑥𝑖 secara parsial tidak berpengaruh terhadap variabel Kemampuan
analitik
H1 : Variabel 𝑥𝑖 secara parsial berpengaruh terhadap variabel dependen Kemampuan
analitik
Statistik Uji
P-Value
Nilai Kritis
𝛼 = 0.05
Kriteria Uji
Tolak H0 Jika, P-Value<Nilai kritis
9
Berdasarkan tabel rangkuman di atas, dapat dlihat variabel kemampuan membaca,
matematis, dan geometris masing-masing memiliki pengaruh yang signifikan terhadap
variabel kemampuan analitik. Sedangakan variabel kemampuan menyusun kata, tidak
berpengaruh signifikan.
Uji Asumsi Klasik
Normalitas
Regresi Linier klasik mengasumsikan sisaan model (i) didistribusikan secara normal
dengan Rata-rata : E(i) = 0 dan Varians : V(i2) = 2, untuk melihat apakah sisaan suatu
model berdistribusi normal iiid N (0,2) dapat dilakukan dengan melihat Normal QQ Plot.
Berdasarkan hasil R-Graphic, diperoleh Normal QQ Plot yang berada pada garis normal
sehingga secara kasat mata, dapat dikatakan bahwa data berdistribusi normal. Untuk
meyakinkan hal ini, dilakukan dengan uji Saphiro Wilk.
Uji normalitas dengan Shapiro wilks test diperoleh nilai p-value sebesar 0,5669 lebih
besar dari α = 0,05. Maka, H0 diterima, sehingga dapat disimpulkan berdasarkan nilai eksak,
residual berdistribusi normal. Dengan demikian dapat dilakukan analisis selanjutnya.
10
Homoskedastisitas
Untuk menguji asumsi linieritas dan varians konstan (homoskedastisitas) dapat juga
dilihat dari plot antara residual 𝜀̂ dengan 𝑦̂. Apabila plot menyebar di sekitar titik nol maka
asumsi linieritas dan homoskedastisitas terpenuhi.
Pada plot di atas terlihat plot tidak menyebar di antara titik nol, sehingga dapat
disimpulkan bahwa asumsi homoskedastisitas tidak terpenuhi.
Selain plot, teknik lain untuk melihat terjadi atau tidak heteroskedastisitas dapat
dilakukan dengan Breusch-Pagan test dengan hipotesis:
Uji Hipotesis
H0 : Tidak tejadi heteroskedastisitas (homoskedastisitas)
H1 : Terjadi heteroskedastisitas
Statistik Uji
Dari perhitungan dengan program R didapat hasil sebagai berikut:
Dari output diatas didapat nilai p-value untuk Breusch-Pagan test adalah 0,04393 >
0,05 artinya H0 ditolak dengan kata terjadi heteroskedastisitas atau residual memiliki nilai
varians yang sama.
11
Non Autokorelasi
Ukuran dalam menentukan ada tidaknya masalah autokorelasi dapat dilakukan dengan
uji Durbin-Watson (DW). Uji ini biasa dilakukan untuk data yang bersifat time series atau
terikat dengan waktu tertetu.
Berdasarkan ouput di atas diperoleh nilai p-value uji Durbin-Watson sebesar 0.7091
yang lebih besar dari α = 0,05. Sehingga H0 diterima, artinya residual tidak berkorelasi (non
autokorelasi).
Non Multikolinieritas
Uji tidak adanya multikolinieritas di antara variabel bebas dapat dilakukan dengan
melihat nilai VIF (Variance Inflation Factor) dimana jika nilai VIF lebih dari 10 maka dapat
dikatakan terjadi multikolinieritas pada variabel 𝑥. Dari perhitungan nilai VIF dengan
program R didapat hasil sebagai berikut:
Hasil output diatas menunjukkan bahwa VIF pada semua variabel bebas bernilai
kurang dari 10 sehingga tidak terjadi multikolinearitas.
3.5 Diagnostik
Sebelum dilakukan pemilihan variabel untuk model terbaik, maka akan dilakukan
diagnostik residu dan pencilan. Diagnostik dalam analisis regresi berguna untuk mendeteksi
permasalahan-permasalahan terkait model dan menemukan tindakan apa yang harus
dilakukan sebagai perbaikan kecocokan model. Pada tahap awal diagnostik ini, dilakukan
analisis residual dan lavarage.
12
Residual
Deteksi residual dapat dilihat melalui plot residual
Berdasarkan output tersebut terlihat bahwa observasi ke-69 memiliki nilai residual
tertinggi dan observasi ke-27 memiliki nilai residual terendah.
Leverage
13
Berdasarkan output di atas, dapat dilhat observasi ke-69, 37, dan 41 berada di atas
garis leverage. Akan tetapi titik-titik tersebut belum pasti outlier karena bisa saja titik dengan
residual yang besar namun bukan sesuatu yang luar biasa.
14
Sehingga diperoleh model hasil transformasi sebagai berikut :
Setelah dilakukan transformasi Box Cox terlihat bahwa variabel bebas yang signifikan
secara parsial menjadi berkurang, meski standar error menjadi lebih kecil daripada
pemodelan yang belum ditransformasi.
Berdasarkan variabel yang sudah diseleksi dengan metode Best Subset diperoleh nilai
Adj.R-Square, CP-Melow, dan nilai MSE sebagai berikut
15
Hasil analisis dengan best subset, diperoleh model terbaik adalah :
Model tersebut merupakan model terbaik, hal ini dilihat berdasarkan nilai Adj.R-
Square terbesar, nilai CP-Melow yang mendekati parameter, dan nilai MSE yang paling
kecil. model regresi dengan memasukkan semua variabel bebasnya merupakan model terbaik,
hal ini ditunjukka denga nilai nilai Adj.R-Square terbesar yakni sebesar 0.4124 atau 41.24%,
nilai CP-Melow yang mendekati parameter sebesar 5, dan nilai MSE yang paling kecil yakni
sebesar 0.14836.
D. KESIMPULAN
1. Kemampuan analitik, dapat dipengaruhi oleh berbagai faktor, dalam maklah ini
ditetapkan 5 variabel sebagai faktor yang diasumsikan dapat mempengaruhi kemampuan
anlitik. Hasil pengujian linieritas dengan menggunakan analisis korelasi, terbukti bahwa
kelima variabel yang di tetapka linier terhadap kemampuan analitik. Tahap selanjutnya
melihat linieritas variabel y dan x juga memberikan kesimpulan yang sama.
2. Hasil pemodelan regresi linier berganda, secara simultan seluruh variabel memberikan
pengaruh yang signifikan secara bersamaan serta berpengaruh positif. Sedangkan secara
parsial haya terdapat 4 variabel yang memberikan pengaruh secara signifikan yakni
kemampuan membaca, kemampuan matematis, dan kemampuan geometris. Sedangkan
kemampuan menysusun kata, tidak memberika pengaruh yang signifikan.
3. Berdasarkan hasil analisis residual dan leverage, serta analisis box plot, diperoleh nilai
outlier yang terletak pada observasi ke 69.
4. Hasil transformasi box-cox tidak memberikan model yang begitu baik. Karena hanya ada
dua variabel bebas yang mempengaruhi model serta terjadi penurunan pada nilai R-
Square. Sehingga model transformasi box-cox tidak digunakan.
5. Penentuan model terbaik dilakukan dengan menggunakan metode best subset. Diperoleh
nilai Adj.R-Square tertinggi, nilai cp melow yang mendekati parameter, dan ilia mse
terendah pada model regresi awal. Sehingga model yang akan digunakan untuk analisis
selanjutnya adalah model regresi
16
LAMPIRAN
17
0.63 2.28 0.15 0.16 1.31
0.77 0.8 1 1.99 1.12
2.14 0.97 1.51 1.39 1.62
1.98 1.2 1.41 1.41 1.99
0.63 0.16 1.86 0.69 1.62
0.29 0.96 0 0.26 1.10
0.07 0.03 0.92 0.92 1.05
0.06 1.41 1.56 1.44 1.33
0.84 1.3 1.97 1.31 1.38
0.68 0.12 1.1 0.88 1.19
0.6 0.16 1.38 0.11 1.99
0.2 1.97 1.25 0.62 1.02
1.51 0.22 1.13 0.37 1.88
0.78 1.33 1.02 0.49 1.14
1.26 1.78 1.41 1.04 1.59
1.09 1.82 2.27 2.08 2.38
0.45 1.46 1.05 1.62 1.97
0.86 2.31 0.76 1.58 1.49
1.27 0.43 0.74 0.92 2.00
0.49 0.48 0.55 0.02 1.01
1.06 1.37 2.21 1.7 2.77
0.78 0.85 1.22 0.96 1.91
0.01 0.59 1.45 1.94 1.19
0.32 0.31 1.24 2.29 1.67
2.27 2.17 1.97 0.98 2.39
2.7 2.01 1.95 0.84 1.50
0.23 0.55 0.02 0.48 1.20
0.48 1.03 1.41 2.34 1.38
2.23 2.55 1.38 3.86 3.50
0.23 0.08 1.34 2.01 1.10
1.86 1.85 1.9 0.53 1.71
0.88 0.66 0.99 0.2 1.03
0.77 0.55 2.4 2.07 2.09
2.01 1.58 0.92 1.6 1.04
2.02 0.97 2.21 1.26 1.91
0.58 0.79 0.44 0.88 1.19
1.1 1.49 2.7 1.81 2.49
0.88 1.54 1.17 0.25 1.22
0.02 0.18 0.83 0.42 1.37
0.93 0.99 1.4 1.51 1.88
2.64 1.52 3.06 2.6 2.35
2.24 2.14 1.82 0.31 1.15
1.4 1.03 0.18 0.26 1.14
0.56 0.18 1 2.08 1.07
18
1.88 0.84 1.76 1.82 2.11
0.14 0.63 0.22 0.68 1.65
2. Syntax R
1. library(readxl)
2. library(corrplot)
3. library(lmtest)
4. library(car)
5. library(leaps)
6. library(MASS)
7. library(dvmisc)
8.
9. ##Membangkitkan data
10. data=read_excel("D:/LN/s2/Materi kuliah/Anreg/UTS ARA/Data.xlsx")
11. x=as.matrix(data)
12. df=data.frame((data[,-1]))
13. summary(df)
14.
15. #Simpangan Baku
16. x1=sd(data$reading)
17. x2=sd(data$sentcomp)
18. x3=sd(data$mathmtcs)
19. x4=sd(data$geometry)
20. y=sd(data$analyrea)
21. SD=matrix(c(x1,x2,x3,x4,y),nrow=5,ncol=1,byrow=TRUE,dimnames =
list(c("SD_Reading","SD_Sentcomp","SD_Math","SD_Geometry","Analyrea"),c("Standar_Deviasi")))
22. SD
23.
24. #Box Plot
25. scale_data<-df
26. par(mfrow=c(3,3))
27. boxplot(scale_data$reading,col="grey",main="reading")
28. boxplot(scale_data$sentcomp,col="grey",main="sentcomp")
29. boxplot(scale_data$mathmtcs,col="grey",main="mathmtcs")
30. boxplot(scale_data$geometry,col="grey",main="geometry")
31. boxplot(scale_data$analyrea,col="grey",main="analyrea")
32.
33. #Variabel
34. OBS<-data$OBS
35. y<-data$analyrea
36. x1<-data$reading
37. x2<-data$sentcomp
38. x3<-data$mathmtcs
39. x4<-data$geometry
40.
41. #Uji Linearitas reading dengan analyrea
42. par(mfrow=c(2,3))
43. plot(y~x1,pch=19,col=1,data=data)
44. reg_1<-lm(y~x1,data=data)
45. abline(reg_1,lty=1,col="red")
46. summary(reg_1)
47.
19
48. #Uji Linearitas sentcomp dengan analyrea
49. plot(y~x2,pch=19,col=1,data=data)
50. reg_2<-lm(y~x2,data=data)
51. abline(reg_2,lty=1,col="red")
52. summary(reg_2)
53.
54. #Uji Linearitas math dengan analyrea
55. plot(y~x3,pch=19,col=1,data=data)
56. reg_3<-lm(y~x3,data=data)
57. abline(reg_3,lty=1,col="red")
58. summary(reg_3)
59.
60. #Uji Linearitas geometry dengan analyrea
61. plot(y~x4,pch=19,col=1,data=data)
62. reg_4<-lm(y~x4,data=data)
63. abline(reg_4,lty=1,col="red")
64. summary(reg_4)
65.
66. #-----PLOT KORELASI-----
67. par(mfrow=c(1,1))
68. corrplot(cor(data[,-1]), type="upper", method="ellipse", tl.cex=0.9)
69.
70. #-----PEMODELAN analyrea VS reading sentcomp math geometry------
71. MF=lm(y~x1+x2+x3+x4,data=data)
72. summary(MF)
73. s15=get_mse(MF)
74.
75. #----UJI ASUMSI KLASIK-----
76. #A. Normalitas
77. qqnorm(MF$res,ylab="Raw Residuals",main="Normal Q-Q Plot",pch=19, col=1)
78. qqline(MF$res,col=2,lwd=2)
79. shapiro.test(MF$res)
80.
81. #B. Homoskedastis
82. plot(MF$fit,MF$res,xlab="Fitted",ylab="Residuals",main="Plot Residual dengan Nilai Prediksi",pch=19, col=1)
83. abline(h=0,col=2,lwd=2)
84. plot(MF$fit,abs(MF$res),xlab="Fitted",ylab="|Residuals|",main="Plot ABS_Residual dengan Nilai
Prediksi",pch=19, col=1)
85. abline(h=0,col=2,lwd=2)
86. library(lmtest)
87. bptest(MF,studentize=F,data=data)
88.
89. #C. Multikolinearitas
90. vif(MF)
91.
92. #D. Residual Diagnostik
93. plot(MF$res,ylab="Residuals",main="Indeks Plot of Residuals",pch=19, col=1)
94. names(MF$res)<-data$OBS
95. sort(MF$res)[c(1,86)]
96. identify(1:86,MF$res,names(MF$res))
97.
98. #Leverage Diagnostik
99. x <- model.matrix(MF)
100. lev <- hat(x)
20
101. plot(lev,ylab="Leverages",main="Index plot of Leverages",pch=19, col=1)
102. abline(h=2*5/86,col=2,lwd=2)
103. sum(lev)
104. names(lev) <- data$OBS
105. lev[lev > 0.47]
106. identify(1:86,lev,data$OBS)
107.
108. #Residual Jacknife
109. jack <- rstudent(MF)
110. names(jack) <- data$OBS
111. jack[which.max(abs(jack))]
112. qt(.05/(34*2),26)
113.
114. #Cook Distance
115. cook <- cooks.distance(MF)
116. cook
117. qf(0.05,5,86)
118. plot(cook,ylab="Cooks distances",pch=19, col=1, main="Cook Distance")
119. identify(1:86,cook,data$OBS)
120.
121.
122. #Box-Cox
123. par(mfrow=c(1,2))
124. BC <-boxcox(MF,plotit=T,main="Box-Cox Transformation")
125. bc= boxCox(MF,lambda=seq(-2,2,by=0.01),plotit=T)
126. bc
127.
128. #Transformasi Box-Cox
129. lambda= bc$x[which.max(bc$y)]
130. lambda
131. Z= y^lambda-1/lambda
132. Z
133. Mbc=lm(Z~x1+x2+x3+x4, data=data)
134. summary(Mbc)
135. MSE_Mbc=get_mse(Mbc)
136. MSE_Mbc
137.
138. #-----PEMODELAN analyrea VS reading------
139. M1=lm(y~x1, data=data)
140. summary(M1)
141. s1=get_mse(M1)
142.
143. #-----PEMODELAN analyrea VS sentcomp------
144. M2=lm(y~x2, data=data)
145. summary(M2)
146. s2=get_mse(M2)
147.
148. #-----PEMODELAN analyrea VS mathmtcs------
149. M3=lm(y~x3, data=data)
150. summary(M3)
151. s3=get_mse(M3)
152.
153. #-----PEMODELAN analyrea VS geometry------
154. M4=lm(y~x4, data=data)
21
155. summary(M4)
156. s4=get_mse(M4)
157.
158. #-----PEMODELAN analyrea VS reading sentcomp------
159. M5=lm(y~x1+x2, data=data)
160. summary(M5)
161. s5=get_mse(M5)
162.
163. #-----PEMODELAN analyrea VS reading math------
164. M6=lm(y~x1+x3, data=data)
165. summary(M6)
166. s6=get_mse(M6)
167.
168. #-----PEMODELAN analyrea VS reading geometry------
169. M7=lm(y~x1+x4, data=data)
170. summary(M7)
171. s7=get_mse(M7)
172.
173. #-----PEMODELAN analyrea VS sentcomp math------
174. M8=lm(y~x2+x3, data=data)
175. summary(M8)
176. s8=get_mse(M8)
177.
178. #-----PEMODELAN analyrea VS sentcomp geometry------
179. M9=lm(y~x2+x4, data=data)
180. summary(M9)
181. s9=get_mse(M9)
182.
183. #-----PEMODELAN analyrea VS math geometry------
184. M10=lm(y~x3+x4, data=data)
185. summary(M10)
186. s10=get_mse(M10)
187.
188. #-----PEMODELAN analyrea VS reading sentcomp mathmtcs------
189. M11=lm(y~x2+x3+x4, data=data)
190. summary(M11)
191. s11=get_mse(M11)
192.
193. #-----PEMODELAN analyrea VS reading math geometry------
194. M12=lm(y~x1+x3+x4, data=data)
195. summary(M12)
196. s12=get_mse(M12)
197.
198. #-----PEMODELAN analyrea VS reading sentcomp geometry------
199. M13=lm(y~x1+x2+x4, data=data)
200. summary(M13)
201. s13=get_mse(M13)
202.
203. #-----PEMODELAN analyrea VS reading sentcomp mathmtcs------
204. M14=lm(y~x1+x2+x3, data=data)
205. summary(M14)
206. s14=get_mse(M14)
207.
208. #-----BEST SUBSET-----
22
209. models = regsubsets(y~x1+x2+x3+x4, data,nbest=6, nvmax = 4)
210. sum.models = summary(models)
211. sum.models
212. Model =
c('y~x3','y~x4','y~x1','y~x2','y~x3+x4','y~x1+x3','y~x1+x4','y~x2+x3','y~x2+x4','y~x1+x2','y~x1+x3+x4','y~x2+x
3+x4','y~x1+x2+x3','y~x1+x2+x4','y~x1+x2+x3+x4')
213. Adj.R2 = sum.models$adjr2
214. MSE = c(s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15)
215. CP = sum.models$cp
216. data.frame(Model, Adj.R2, MSE, CP)
23