Membangkitkan Data

Skenario

Y :Keputusan menolak/menerima pelamar kerja pada PT W posisi A X1:Lama pengalaman kerja sebelumnya (bulan) X2:Status pekerjaan saat ini (0: bekerja, 1: Tidak bekerja) X3:Tingkat pendididkan (0: lulusan Sekolah Menengah, 1:Lulusan Perguruan Tinggi) X4:IPK (Skala 4)

Membangkitkan data X1

X1 : Lama Pengalaman Kerja Sebelumnya Membangkitkan variabel X1 dengan lama pekerjaan 0-60 bulan dengan nilai tengah 12 dan banyak pelamar adalah 100

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

X1 <- round (60*(-(log(1-u)/12)))
X1 
##   [1]  2  1  4  0  3  3  8  2  4  1  5 11  2  3  7  6  1  2  2  6  4  6  4  7  3
##  [26]  1  7 11  4  2  3 13  2 15  6 11  1  5 23  1  2 10  8  9  5  3  8 11  1  2
##  [51]  2  1  1  2  4  1  1  1  5  1  3  5 16  6  3  2  3  3  1  6  3  2  4 17  5
##  [76]  5 10  7  9  0  3  5 13 20  0  4  7  1  2  7 12  1  2  3 12  2  4  1  0  7

Membangkitkan data X2

X2 : Status pekerjaan keterangan yang digunakan (0=Tidak Bekerja) dam (1=Bekerja)

set.seed(12345)
X2 <- round(runif(n))
X2
##   [1] 1 1 1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 0 0 1 0 0 1 1 1 0 1 1 0 0 1 0 0 1 0 0 1
##  [38] 1 1 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 1 0 1 0 0 0 1 0 1 1 1 0 1 0 1 1 1 1 0 0
##  [75] 0 1 1 1 1 0 1 1 0 0 0 0 1 1 1 0 1 1 0 1 1 1 1 1 0 0

Membangkitkan data X3

X3 : Data tingkat pendidikan Keterangan yang digunakan (0=lulus SMA/Tidak Kuliah) dan (1=Lulus Kuliah)

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
##  [38] 0 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
##  [75] 0 0 0 1 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 0 0 1 0 0 1

Membangkitkan data X4

X4 adalah data IPK pelamar dengan skala 4

set.seed(12)
X4 <- round(rnorm(n,3,0.5),2)
X4
##   [1] 2.26 3.79 2.52 2.54 2.00 2.86 2.84 2.69 2.95 3.21 2.61 2.35 2.61 3.01 2.92
##  [16] 2.65 3.59 3.17 3.25 2.85 3.11 4.00 3.51 2.85 2.49 2.87 2.90 3.07 3.07 3.18
##  [31] 3.34 4.04 2.73 2.46 2.81 2.76 3.14 2.76 3.40 2.50 3.05 2.42 3.29 2.20 2.85
##  [46] 3.22 2.51 3.09 3.37 2.75 2.98 2.94 3.23 4.01 2.47 3.37 3.27 2.34 2.87 3.16
##  [61] 3.20 3.50 3.43 3.10 3.42 3.42 3.98 1.93 3.49 3.57 2.74 3.13 2.79 2.91 2.95
##  [76] 2.68 2.36 2.81 3.26 2.91 3.00 2.36 2.90 3.58 2.99 3.45 2.91 3.56 2.73 2.52
##  [91] 3.19 2.51 3.45 3.06 3.52 2.83 3.23 2.65 2.88 2.50

Membangkitkan data Y

Menentukan koefisien

b0 <- -12
b1 <- 3.5
b2 <- 0.5
b3 <- 2.7
b4 <- 3.2
set.seed(1)
datapendukung <- b0+(b1*X1)+(b2*X2)+(b3*X3)+(b4*X4)
datapendukung
##   [1]  2.732  6.828 10.564 -0.672  7.600  7.652 27.788  6.808 14.640  2.272
##  [11] 16.552 34.020  6.552 10.832 21.844 20.180  2.988  5.144  5.400 21.320
##  [21] 14.652 24.500 16.432 24.820  9.668  3.384 24.980 39.524 11.824  5.176
##  [31] 12.388 49.128  6.436 51.572 17.992 35.332  4.748 14.832 79.880 -0.500
##  [41]  5.260 30.744 27.028 27.040 14.620  8.804 24.032 36.388  2.284  7.000
##  [51]  5.036  1.408  4.536  7.832 13.104  2.284  2.464  1.688 17.384  1.612
##  [61] 11.940 16.700 55.476 19.420 12.644  5.944 14.436  7.376  5.868 20.924
##  [71] 10.468  8.216 13.628 56.812 14.940 14.576 31.052 24.692 30.432 -2.688
##  [81]  8.600 16.252 42.780 72.156 -2.432 13.040 25.012  6.092  6.936 20.564
##  [91] 40.708  2.732  6.040 11.492 41.764  4.556 15.536  0.480 -2.784 23.200
p <- exp(datapendukung)/(1+exp(datapendukung))
p
##   [1] 0.93888869 0.99891815 0.99997417 0.33804915 0.99949980 0.99952513
##   [7] 1.00000000 0.99889632 0.99999956 0.90653139 0.99999994 1.00000000
##  [13] 0.99857478 0.99998024 1.00000000 1.00000000 0.95202905 0.99419954
##  [19] 0.99550373 1.00000000 0.99999957 1.00000000 0.99999993 1.00000000
##  [25] 0.99993673 0.96720074 1.00000000 1.00000000 0.99999267 0.99438119
##  [31] 0.99999583 1.00000000 0.99839976 1.00000000 0.99999998 1.00000000
##  [37] 0.99140549 0.99999964 1.00000000 0.37754067 0.99483155 1.00000000
##  [43] 1.00000000 1.00000000 0.99999955 0.99984989 1.00000000 1.00000000
##  [49] 0.90754323 0.99908895 0.99354228 0.80345030 0.98939743 0.99960333
##  [55] 0.99999796 0.90754323 0.92157923 0.84396096 0.99999997 0.83368887
##  [61] 0.99999348 0.99999994 1.00000000 1.00000000 0.99999677 0.99738533
##  [67] 0.99999946 0.99937429 0.99717945 1.00000000 0.99997157 0.99972978
##  [73] 0.99999879 1.00000000 0.99999968 0.99999953 1.00000000 1.00000000
##  [79] 1.00000000 0.06368517 0.99981593 0.99999991 1.00000000 1.00000000
##  [85] 0.08076486 0.99999783 1.00000000 0.99774422 0.99902879 1.00000000
##  [91] 1.00000000 0.93888869 0.99762410 0.99998979 1.00000000 0.98960520
##  [97] 0.99999982 0.61774787 0.05819493 1.00000000
set.seed(2)
y <- rbinom(n,1,p)
y
##   [1] 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
##  [38] 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
##  [75] 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
datagab <- data.frame(y,X1,X2,X3,X4)
datagab
##     y X1 X2 X3   X4
## 1   1  2  1  0 2.26
## 2   1  1  1  1 3.79
## 3   1  4  1  0 2.52
## 4   0  0  1  1 2.54
## 5   1  3  0  1 2.00
## 6   1  3  0  0 2.86
## 7   1  8  0  1 2.84
## 8   1  2  1  1 2.69
## 9   1  4  1  1 2.95
## 10  1  1  1  0 3.21
## 11  1  5  0  1 2.61
## 12  1 11  0  0 2.35
## 13  1  2  1  1 2.61
## 14  1  3  0  1 3.01
## 15  1  7  0  0 2.92
## 16  1  6  0  1 2.65
## 17  0  1  0  0 3.59
## 18  1  2  0  0 3.17
## 19  1  2  0  0 3.25
## 20  1  6  1  1 2.85
## 21  1  4  0  1 3.11
## 22  1  6  0  1 4.00
## 23  1  4  1  1 3.51
## 24  1  7  1  1 2.85
## 25  1  3  1  1 2.49
## 26  1  1  0  1 2.87
## 27  1  7  1  1 2.90
## 28  1 11  1  1 3.07
## 29  1  4  0  0 3.07
## 30  1  2  0  0 3.18
## 31  1  3  1  1 3.34
## 32  1 13  0  1 4.04
## 33  1  2  0  1 2.73
## 34  1 15  1  1 2.46
## 35  1  6  0  0 2.81
## 36  1 11  0  0 2.76
## 37  1  1  1  1 3.14
## 38  1  5  1  0 2.76
## 39  1 23  1  0 3.40
## 40  1  1  0  0 2.50
## 41  1  2  1  0 3.05
## 42  1 10  0  0 2.42
## 43  1  8  1  0 3.29
## 44  1  9  1  0 2.20
## 45  1  5  0  0 2.85
## 46  1  3  0  0 3.22
## 47  1  8  0  0 2.51
## 48  1 11  0  0 3.09
## 49  0  1  0  0 3.37
## 50  1  2  1  1 2.75
## 51  1  2  1  0 2.98
## 52  1  1  1  0 2.94
## 53  1  1  0  1 3.23
## 54  1  2  0  0 4.01
## 55  1  4  1  1 2.47
## 56  1  1  0  0 3.37
## 57  1  1  1  0 3.27
## 58  0  1  0  1 2.34
## 59  1  5  0  1 2.87
## 60  1  1  0  0 3.16
## 61  1  3  1  1 3.20
## 62  1  5  0  0 3.50
## 63  1 16  1  0 3.43
## 64  1  6  1  0 3.10
## 65  1  3  1  1 3.42
## 66  1  2  0  0 3.42
## 67  1  3  1  1 3.98
## 68  1  3  0  1 1.93
## 69  1  1  1  1 3.49
## 70  1  6  1  0 3.57
## 71  1  3  1  1 2.74
## 72  1  2  1  1 3.13
## 73  1  4  0  1 2.79
## 74  1 17  0  0 2.91
## 75  1  5  0  0 2.95
## 76  1  5  1  0 2.68
## 77  1 10  1  0 2.36
## 78  1  7  1  1 2.81
## 79  1  9  1  0 3.26
## 80  0  0  0  0 2.91
## 81  1  3  1  0 3.00
## 82  1  5  1  1 2.36
## 83  1 13  0  0 2.90
## 84  1 20  0  1 3.58
## 85  0  0  0  0 2.99
## 86  1  4  0  0 3.45
## 87  1  7  1  1 2.91
## 88  1  1  1  1 3.56
## 89  1  2  1  1 2.73
## 90  1  7  0  0 2.52
## 91  1 12  1  0 3.19
## 92  1  1  1  1 2.51
## 93  1  2  0  0 3.45
## 94  1  3  1  1 3.06
## 95  1 12  1  0 3.52
## 96  1  2  1  0 2.83
## 97  1  4  1  1 3.23
## 98  1  1  1  0 2.65
## 99  0  0  0  0 2.88
## 100 1  7  0  1 2.50

Analisis Regresi Logistik

modelreglog <- glm(y~X1+X2+X3+X4, family = binomial(link = "logit"), data=datagab)
## Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
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)   -38.7377 10914.2809  -0.004    0.997
## X1             40.2874 10914.2796   0.004    0.997
## X2             20.4693  7200.1210   0.003    0.998
## X3              0.1512     1.7092   0.088    0.930
## X4             -0.3572     2.0024  -0.178    0.858
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 50.728  on 99  degrees of freedom
## Residual deviance: 10.517  on 95  degrees of freedom
## AIC: 20.517
## 
## Number of Fisher Scoring iterations: 25