Skenario

Y : Keputusan menerima/menolak tugas mahasiswa X1 : Lama pengerjaan tugas sebelumnya X2 : Status nilai saat ini (100: Mengerjakan, 1: Tidak mengerjakan) X3 : Tingkat nilai (0: Lulus rata-rata, 1: Lulusan diatas rata-rata) X4 : Nilai (skala 100)

Membangkitkan data X1

X1 : Lama pengerjaan tugas sebelumnya (hari)

set.seed(123)
xcontoh <- rnorm(100,80,60)
xcontoh
##   [1]  46.371461  66.189351 173.522499  84.230503  87.757264 182.903899
##   [7] 107.654972   4.096326  38.788829  53.260282 153.444908 101.588830
##  [13] 104.046287  86.640963  46.649532 187.214788 109.871029 -37.997029
##  [19] 122.081354  51.632516  15.930578  66.921505  18.439733  36.266526
##  [25]  42.497644 -21.201599 130.267223  89.202387  11.711784 155.228895
##  [31] 105.587853  62.295711 133.707540 132.688009 129.294865 121.318415
##  [37] 113.235059  76.285297  61.642240  57.171740  38.317581  67.524963
##  [43]   4.076219 210.137358 152.477720  12.613485  55.826910  52.000679
##  [49] 126.797907  74.997856  95.199111  78.287195  77.427773 162.116137
##  [55]  66.453741 170.988236 -12.925168 115.076825  87.431255  92.956494
##  [61] 102.778369  49.860593  60.007557  18.885477  15.692526  98.211718
##  [67] 106.892587  83.180254 135.336048 203.005081  50.538130 -58.550133
##  [73] 140.344311  37.447954  38.719483 141.534282  62.913620   6.756937
##  [79]  90.878209  71.666518  80.345851 103.116824  57.760398 118.662593
##  [85]  66.770806  99.906918 145.810341 106.110889  60.444105 148.928457
##  [91] 139.610231 112.903818  94.323904  42.325635 161.639147  43.984425
##  [97] 211.239980 171.956638  65.857978  18.414746

Membangkitkan data X1

X1 : Lama pengalaman kerja sebelumnya (hari) Membangkitkan variabel X1 dengan lama pengerjaan tugas 0-7 hari dengan nilai tengah 70 dan banyak nilai mahasiswa adalah 90

set.seed(90)
n <- 90
u <- runif(n)

x1 <- round(7*(-(log(1-u)/70)))
x1
##  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## [39] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## [77] 0 0 0 0 0 0 0 0 0 0 1 0 0 0

Membangkitkan data X2

X2 : Status nilai Keterengan yang digunakan(100: Mengerjakan, 1: Tidak mengerjakan)

set.seed(56789)
x2 <- round(runif(n))
x2
##  [1] 1 1 1 1 0 0 1 1 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 0 1 1 0 1 0 1 0 0 0 1
## [39] 1 1 1 0 1 0 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 0
## [77] 0 0 0 1 0 0 0 1 0 0 1 1 0 0

Membangkitkan data x3

X3 : Tingkat Nilai Keterengan yang digunakan (0: Lulus rata-rata, 1: Lulusan diatas rata-rata)

set.seed(123)
x3 <- round(runif(n))
x3
##  [1] 0 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 1 0
## [39] 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 1 0 1 0 0 0 1 0 1 1 1 0 1 1 1 0 0 0
## [77] 0 1 0 0 0 1 0 1 0 0 1 1 1 0

Membangkitkan data x4

X4 adalah data nilai dengan skala 100

set.seed(156)
x4 <- round(rnorm(n,80,0.5),3)
x4
##  [1] 79.287 79.404 80.110 79.993 80.699 79.658 80.056 79.978 80.480 80.295
## [11] 79.956 80.378 79.721 79.216 80.306 80.174 79.749 80.358 80.343 79.688
## [21] 80.647 80.010 80.369 80.375 79.583 79.839 80.081 80.553 80.031 80.661
## [31] 78.921 80.187 79.826 79.846 80.108 79.719 79.679 79.558 80.660 80.002
## [41] 80.913 79.820 80.545 80.115 80.260 80.530 80.924 79.626 79.794 79.806
## [51] 79.670 79.516 79.700 79.452 80.005 79.810 79.664 79.641 79.988 79.218
## [61] 79.920 79.711 80.322 80.227 79.612 80.507 79.885 78.558 80.504 79.664
## [71] 80.229 80.136 79.526 80.727 80.976 80.581 79.760 80.501 79.545 80.692
## [81] 80.575 79.488 79.753 80.181 80.101 79.879 79.455 79.059 79.425 79.563

Membangkitkan data Y

b0 <- -8
b1 <- 1.5
b2 <- 0.5
b3 <- 1.0
b4 <- 0.1
set.seed(1)
datapendukung <- b0+(b1*x1)+(b2*x2)+(b3*x3)+(b4*x4)
datapendukung
##  [1]  0.4287  1.4404  0.5110  1.4993  1.0699 -0.0342  1.5056  1.4978  1.0480
## [10]  0.5295  0.9956  0.0378  1.4721  0.9216  0.0306  1.5174 -0.0251  0.0358
## [19]  0.0343  1.4688  1.5647  1.0010  1.5369  1.5375  1.4583  1.4839  1.5081
## [28]  1.0553  0.5031  0.5661  0.8921  1.5187  0.9826  1.4846  0.0108 -0.0281
## [37]  0.9679  0.4558  0.5660  0.5002  0.5913 -0.0180  0.5545  0.0115  0.0260
## [46]  0.0530  0.5924 -0.0374 -0.0206  0.9806 -0.0330 -0.0484  1.4700  0.4452
## [55]  1.5005  0.4810  0.4664  0.9641  0.9988 -0.0782  0.9920  0.4711  0.5322
## [64]  0.5227  1.4612  0.5507  0.9885  1.3558  1.0504  0.4664  1.5229  1.5136
## [73]  1.4526  0.5727  0.5976  0.0581 -0.0240  1.0501 -0.0455  0.5692  0.0575
## [82]  0.9488 -0.0247  1.5181  0.0101 -0.0121  2.9455  1.4059  0.9425 -0.0437
p <- exp(datapendukung)/(1+exp(datapendukung))
p
##  [1] 0.6055632 0.8085166 0.6250409 0.8174701 0.7445779 0.4914508 0.8184082
##  [8] 0.8172461 0.7403907 0.6293665 0.7301926 0.5094489 0.8133764 0.7153680
## [15] 0.5076494 0.8201553 0.4937253 0.5089490 0.5085742 0.8128749 0.8270267
## [22] 0.7312551 0.8230136 0.8231010 0.8112725 0.8151609 0.8187795 0.7417913
## [29] 0.6231876 0.6378628 0.7093233 0.8203470 0.7276238 0.8152664 0.5027000
## [36] 0.4929755 0.7247007 0.6120173 0.6378397 0.6225063 0.6436634 0.4955001
## [43] 0.6351790 0.5028750 0.5064996 0.5132469 0.6439156 0.4906511 0.4948502
## [50] 0.7272273 0.4917507 0.4879024 0.8130574 0.6094974 0.8176490 0.6179840
## [57] 0.6145313 0.7239419 0.7308226 0.4804600 0.7294828 0.6156441 0.6299961
## [64] 0.6277789 0.8117161 0.6342980 0.7287915 0.7950762 0.7408517 0.6145313
## [71] 0.8209651 0.8195941 0.8103983 0.6393860 0.6451070 0.5145209 0.4940003
## [78] 0.7407941 0.4886270 0.6385786 0.5143710 0.7208738 0.4938253 0.8202585
## [85] 0.5025250 0.4969750 0.9500504 0.8031185 0.7196044 0.4890767
set.seed(2)
y <- rbinom(n,1,p)
y
##  [1] 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 0 0 1 0 1
## [39] 0 1 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0
## [77] 0 0 0 1 1 1 0 1 1 1 0 1 0 0
datagab <- data.frame(y,x1,x2,x3,x4)
datagab
##    y x1 x2 x3     x4
## 1  1  0  1  0 79.287
## 2  1  0  1  1 79.404
## 3  1  0  1  0 80.110
## 4  1  0  1  1 79.993
## 5  0  0  0  1 80.699
## 6  1  0  0  0 79.658
## 7  1  0  1  1 80.056
## 8  0  0  1  1 79.978
## 9  1  0  0  1 80.480
## 10 1  0  1  0 80.295
## 11 1  0  0  1 79.956
## 12 1  0  0  0 80.378
## 13 1  0  1  1 79.721
## 14 1  0  0  1 79.216
## 15 1  0  0  0 80.306
## 16 0  0  1  1 80.174
## 17 1  0  0  0 79.749
## 18 1  0  0  0 80.358
## 19 1  0  0  0 80.343
## 20 1  0  1  1 79.688
## 21 1  0  1  1 80.647
## 22 1  0  0  1 80.010
## 23 0  0  1  1 80.369
## 24 1  0  1  1 80.375
## 25 1  0  1  1 79.583
## 26 1  0  1  1 79.839
## 27 1  0  1  1 80.081
## 28 1  0  0  1 80.553
## 29 0  0  1  0 80.031
## 30 1  0  1  0 80.661
## 31 1  0  0  1 78.921
## 32 1  0  1  1 80.187
## 33 0  0  0  1 79.826
## 34 0  0  1  1 79.846
## 35 0  0  0  0 80.108
## 36 1  0  0  0 79.719
## 37 0  0  0  1 79.679
## 38 1  0  1  0 79.558
## 39 0  0  1  0 80.660
## 40 1  0  1  0 80.002
## 41 0  0  1  0 80.913
## 42 0  0  0  0 79.820
## 43 1  0  1  0 80.545
## 44 1  0  0  0 80.115
## 45 0  0  0  0 80.260
## 46 0  0  0  0 80.530
## 47 0  0  1  0 80.924
## 48 0  0  0  0 79.626
## 49 0  0  0  0 79.794
## 50 0  0  0  1 79.806
## 51 0  0  0  0 79.670
## 52 0  0  0  0 79.516
## 53 1  0  1  1 79.700
## 54 0  0  1  0 79.452
## 55 1  0  1  1 80.005
## 56 0  0  1  0 79.810
## 57 0  0  1  0 79.664
## 58 0  0  0  1 79.641
## 59 1  0  0  1 79.988
## 60 1  0  0  0 79.218
## 61 0  0  0  1 79.920
## 62 0  0  1  0 79.711
## 63 1  0  1  0 80.322
## 64 1  0  1  0 80.227
## 65 0  0  1  1 79.612
## 66 1  0  1  0 80.507
## 67 1  0  0  1 79.885
## 68 1  0  1  1 78.558
## 69 1  0  0  1 80.504
## 70 1  0  1  0 79.664
## 71 1  0  1  1 80.229
## 72 1  0  1  1 80.136
## 73 1  0  1  1 79.526
## 74 1  0  1  0 80.727
## 75 1  0  1  0 80.976
## 76 0  0  0  0 80.581
## 77 0  0  0  0 79.760
## 78 0  0  0  1 80.501
## 79 0  0  0  0 79.545
## 80 1  0  1  0 80.692
## 81 1  0  0  0 80.575
## 82 1  0  0  1 79.488
## 83 0  0  0  0 79.753
## 84 1  0  1  1 80.181
## 85 1  0  0  0 80.101
## 86 1  0  0  0 79.879
## 87 0  1  1  1 79.455
## 88 1  0  1  1 79.059
## 89 0  0  0  1 79.425
## 90 0  0  0  0 79.563

Analisis Regresi Logistik

modelreglog <- glm(y ~ x1 + x2 + x3 + x4, family = binomial(link="logit"),data = datagab)
summary(modelreglog)
## 
## Call:
## glm(formula = y ~ x1 + x2 + x3 + x4, family = binomial(link = "logit"), 
##     data = datagab)
## 
## Coefficients:
##              Estimate Std. Error z value Pr(>|z|)  
## (Intercept)  -10.4270    39.6287  -0.263   0.7925  
## x1           -16.6994  1455.3976  -0.011   0.9908  
## x2             0.8293     0.4553   1.821   0.0686 .
## x3             0.5474     0.4637   1.181   0.2378  
## x4             0.1282     0.4952   0.259   0.7958  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 120.28  on 89  degrees of freedom
## Residual deviance: 112.95  on 85  degrees of freedom
## AIC: 122.95
## 
## Number of Fisher Scoring iterations: 14