Você está na página 1de 7

Tugas Praktikum Analisis Regresi

Nama : Sepfira Reztika Sabrina


NPM : 140610140011
Kelas : A

Berikut adalah informasi mengenai hasil penelitian yang bertujuanuntuk menentukan standard lama
bekerja bagi sumberdaya manusia (SDM) pada instalasi rumah sakit pelabuhan laut.Data diperoleh
dari tujuh belas rumah sakit pelabuhan laut di Amerika Serikat.

Peubah-peubah yang digunakan adalah :


Y = Lama Bekerja (orang-jam/bulan)
X1= Rata-rata kunjungan pasien dalam sehari (orang)
X2= Pajanan Sinar X/bulan
X3= Jumlahtempat tidur yang ditempati perhari dalam sebulan
X4=Banyaknya penduduk disekitarnya yang mungkin memerlukan fasilitas/1000
X5= Rata-rata kunjuingan pasien (hari)
Pertanyaan :
a. Deteksi ada tidaknya multikolenieritas dalam variable bebas
b. Jika ada lakukan penanggulangan dengan metode Regresi Komponen Utama dan Ridge
Regression. Interpretasikan hasilnya.

No x1 x2 x3 x4 x5 Y
1 15.57 2463 47.29 18 4.45 566.5
2 44.02 2048 1339.8 9.5 6.92 696.8
3 20.42 3940 620.3 12.8 4.28 1033.2
4 18.74 6505 568.3 36.7 3.9 1603.6
5 49.2 5732 1497.6 35.7 5.5 1611.4
6 44.92 11520 1365.8 24 4.6 1613.3
7 55.48 5779 1687 43.3 5.62 1854.2
8 59.28 5969 1639.9 46.7 5.15 2160.6
9 94.39 8461 2872.3 78.7 6.18 2305.6
10 128.02 20106 3655.1 180.5 6.15 3503.9
11 96 13313 2912 60.9 5.88 3571.9
12 131.42 10771 2921 103.7 4.88 3741.4
13 127.21 15543 3865.7 126.8 5.5 4026.5
14 252.9 36194 7684.1 157.7 7 10343.8
15 409.2 34703 12446.3 169.4 10.78 11732.2
16 463.7 39204 14098.4 331.4 7.05 12414.9
17 510.22 86533 15524 371.6 6.35 18854.5

Dengan menggunakan software R berikut adalah analisisnya :

a. Mendeteksi ada tidaknya multikolineritas dalam variabel bebas

Mencari tahu nilai koefisien regresi taksiran dengan metode regresi multiple

>data=read.csv("D:/kelompok.csv", header=TRUE)

> data

No x1 x2 x3 x4 x5 Y
1 15.57 2463 47.29 18 4.45 566.5
2 44.02 2048 1339.8 9.5 6.92 696.8
3 20.42 3940 620.3 12.8 4.28 1033.2
4 18.74 6505 568.3 36.7 3.9 1603.6
5 49.2 5732 1497.6 35.7 5.5 1611.4
6 44.92 11520 1365.8 24 4.6 1613.3
7 55.48 5779 1687 43.3 5.62 1854.2
8 59.28 5969 1639.9 46.7 5.15 2160.6
9 94.39 8461 2872.3 78.7 6.18 2305.6
10 128.02 20106 3655.1 180.5 6.15 3503.9
11 96 13313 2912 60.9 5.88 3571.9
12 131.42 10771 2921 103.7 4.88 3741.4
13 127.21 15543 3865.7 126.8 5.5 4026.5
14 252.9 36194 7684.1 157.7 7 10343.8
15 409.2 34703 12446.3 169.4 10.78 11732.2
16 463.7 39204 14098.4 331.4 7.05 12414.9

> g <- lm(Y~., data)

> summary(g)

Call:
lm(formula = Y ~ ., data = data)

Residuals:
Min 1Q Median 3Q Max
-602.17 -290.21 -8.95 193.55 1606.57
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2460.36354 981.24590 2.507 0.0291 *
X1 10.63581 18.86801 0.564 0.5843
X2 0.04905 0.02099 2.337 0.0394 *
X3 0.79401 0.61679 1.287 0.2244
X4 -5.60899 5.21440 -1.076 0.3051
X5 -486.42351 184.53396 -2.636 0.0232 *
---
Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1

Residual standard error: 608.3 on 11 degrees of freedom


Multiple R-squared: 0.9918, Adjusted R-squared: 0.988
F-statistic: 265.2 on 5 and 11 DF, p-value: 4.458e-11

Didapatkan model regresi multiple nya sebagai berikut:

= . + . + . + . . . +

Untuk mendeteksi ada tidaknya multikolinearitas dalam variabel bebas dilakukan langkah-
langkah sebagai berikut :

1. Lakukan standarisasi pada data.


> S=function(data){
+ a=sqrt(sum((data-mean(data))^2))
+a
+}
> ZX1=(X1-mean(X1))/S(X1)
> ZX2=(X2-mean(X2))/S(X2)
> ZX3=(X3-mean(X3))/S(X3)
> ZX4=(X4-mean(X4))/S(X4)
> ZX5=(X5-mean(X5))/S(X5)
> data1=data.frame(ZX1,ZX2,ZX3,ZX4,ZX5,Y)
> data1
ZX1 ZX2 ZX3 ZX4 ZX5 Y
1 -0.20601567 -0.18447370 -0.20066562 -0.204525822 -0.229302881 566.5
2 -0.16184923 -0.18934968 -0.15661353 -0.224210104 0.164336856 696.8
3 -0.19848642 -0.16711992 -0.19317539 -0.216567971 -0.256395494 1033.2
4 -0.20109449 -0.13698285 -0.19581781 -0.161220401 -0.316955454 1603.6
5 -0.15380768 -0.14606509 -0.14859482 -0.163536199 -0.061966151 1611.4
6 -0.16045205 -0.07805988 -0.15529233 -0.190631034 -0.205397634 1613.3
7 -0.14405846 -0.14551287 -0.13897034 -0.145936135 -0.042841953 1854.2
8 -0.13815926 -0.14328050 -0.14136376 -0.138062422 -0.117745061 2160.6
9 -0.08365368 -0.11400113 -0.07873855 -0.063956889 0.046404303 2305.6
10 -0.03144570 0.02281999 -0.03896006 0.171791337 0.041623254 3503.9
11 -0.08115428 -0.05699331 -0.07672117 -0.105178092 -0.001406191 3571.9
12 -0.02616746 -0.08686014 -0.07626383 -0.006061942 -0.160774505 3741.4
13 -0.03270316 -0.03079227 -0.02825828 0.047432990 -0.061966151 4026.5
14 0.16242089 0.21184346 0.16577619 0.118991145 0.177086321 10343.8
15 0.40506461 0.19432518 0.40777048 0.146085981 0.766749085 11732.2
16 0.48967166 0.24720898 0.49172301 0.521245241 0.185054737 15414.9
17 0.56189038 0.80329374 0.56416580 0.614340317 0.073496917 18854.5

2. Menghitung korelasi antar variabel X.


> cor(data1[,-6])
ZX1 ZX2 ZX3 ZX4 ZX5
ZX1 1.0000000 0.9073773 0.9985702 0.9356913 0.6726135
ZX2 0.9073773 1.0000000 0.9091448 0.9104656 0.4485514
ZX3 0.9985702 0.9091448 1.0000000 0.9309908 0.6788930
ZX4 0.9356913 0.9104656 0.9309908 1.0000000 0.4655363
ZX5 0.6726135 0.4485514 0.6788930 0.4655363 1.0000000

Dapat dilihat bahwa antar variabel X1, X2, X3, dan X4 memiliki nilai korelasi yang kuat.
Sehingga ada dugaan terjadinya multikolinearitas.

3. Hitung nilai VIF


> vif(data1[,-6])
ZX1 ZX2 ZX3 ZX4 ZX5
399.189254 8.624285 398.134909 13.701067 3.623228

Indikasi adanya multikolinieritas adalah apabila nilai VIF > 10, dapat dililihat bahwa
variabel bebasnya memiliki nilai VIF > 10 yang artinya terdapat multikolinieritas pada
data tersebut.

b. Untuk menanggulangi multikolinearitas, maka dilakukan dengan metode Ridge Regression

Mencari nilai Konstanta Ridge


> library(MASS)
> gr=lm.ridge(Y~.,data1,lambda=seq(0,0.1,0.001))
>matplot(gr$lambda,t(gr$coef),type="l",xlab=expression(lambda),ylab=expression(hat(beta)
))
>select(gr)
modified HKB estimator is 0.05830151
modified L-W estimator is 0.03846435
smallest value of GCV at 0.1

Untuk melihat nilai Konstanta Ridge mana yang paling sesuai maka kita coba tarik garis pada
grafik pada titik 0.0583, 0.0385, dan 0.1.
> abline(v=0.0583)
> abline(v=0.0385)
> abline(v=0.1)

Dari gambar terlihat bahwa pada titik 0.0583 dan 0.0385 nilai belum konstan.
Mencari nilai ridge :

> b=gr$coef[,gr$lam==0.064]

>b

xx1 xx2 xx3 xx4 xx5

0.41693001 0.19428721 0.51963758 -0.08345026 -0.11827359

> bb=as.matrix(b)

Mencari nilai dengan transformasi ke bentuk awal :


= ( ) ; i = 1,2,3,4,5

: =1( )2 /(n 1)

: =1( )2 /(n 1)

> sy=sqrt((sum(Z[,6]-matrix(c(mean(Z[,6])),17,1))^2)/16)
> sx1=sqrt((sum(Z[,1]-matrix(c(mean(Z[,1])),17,1))^2)/16)
> sx2=sqrt((sum(Z[,2]-matrix(c(mean(Z[,2])),17,1))^2)/16)
> sx3=sqrt((sum(Z[,3]-matrix(c(mean(Z[,3])),17,1))^2)/16)
> sx4=sqrt((sum(Z[,4]-matrix(c(mean(Z[,4])),17,1))^2)/16)
> sx5=sqrt((sum(Z[,5]-matrix(c(mean(Z[,5])),17,1))^2)/16)
> b1=sy/sx1*bb[1]
> b2=sy/sx2*bb[2]
> b3=sy/sx3*bb[3]
> b4=sy/sx4*bb[4]
> b5=sy/sx5*bb[5]
> bi=matrix(c(b1,b2,b3,b4,b5))

> bi
[,1]
[1,] 0.22741637
[2,] 0.15542977
[3,] 0.51963758
[4,] -0.02989263
[5,] -0.06839918

Mencari :

0 = 1 1 2 2 3 3 - 4 4 5 5

>b0=mean(yy)-(b1*mean(xx1))-(b2*mean(xx2))-(b3*mean(xx3))-(b4*mean(xx4))-(b5*mean(xx5))

> b0

[1] -3.69543e-17

Sehingga didapat persamaan regresi sebagai berikut :

Y = -3.69543e-17 + 0.22741637 X1+ 0.15542977 X2 +0.51963758 X3 -0.02989263 X4


0.06839918 X5

Interpretasi :
1. kenaikan rata-rata kunjungan pasien akan mengakibatkan rata-rata perubahan standar lama
bekerja pada instansi rumah sakit pelabuhan laut di amerika serikat sebesar 0.22741637
2. pajanan sinar X akan mengakibatkan rata-rata perubahan standar lama bekerja pada instansi
rumah sakit pelabuhan laut di amerika serikat mengalami kenaikan sebesar 0.15542977
3. setiap penambahan jumlah tempat tidur yang ditempati akan mengakibatkan rata-rata
perubahan standar lama bekerja pada instansi rumah sakit pelabuhan laut di amerika serikat
sebesar 0.51963758
4. banyak penduduk di sekitar yang mungin memerlukan fasilitas -0.02989263
5. setiap kenaikan rata-rata lama kunjungan pasien akan mengakibatkan rata-rata perubahan
standar lama bekerja pada instansi rumah sakit pelabuhan laut di amerika serikat sebesar -
0.06839918