SKENARIO Y : Keputusan menolak/menerima pelamar kerja pada PT A posisi B X1 : Lama pengalaman kerja sebelumnya (bulan) X2 : Status pekerjaan saat ini (0: Bekerja, 1: Tidak bekerja) X3 : Tingkat pendidikan (0: Lulusan Sekolah Menengah, 1: Lulusan Perguruan Tinggi) X4 : IPK (skala 4)
#Membangkitkan data X1
#X1 : Lama pengalaman kerja sebelumnya (bulan) Membangkitkan variabel X1 dengan lama pekerjaan 0-60 bulan dengan nilai tengah 12 dan banyak pelamar adalah 100
set.seed(1234)
n <- 100
u <- runif(n)
x1 <- round(60*(-(log(1-u)/12)))
x1
## [1] 1 5 5 5 10 5 0 1 5 4 6 4 2 13 2 9 2 2 1 1 2 2 1 0 1
## [26] 8 4 12 9 0 3 2 2 4 1 7 1 1 24 8 4 5 2 5 2 3 6 3 1 7
## [51] 0 2 6 4 1 4 3 7 1 9 10 0 2 0 1 6 2 4 0 4 1 11 0 8 0
## [76] 4 2 0 2 6 13 3 1 4 1 11 2 2 1 11 1 12 1 1 1 4 2 0 2 7
#Membangkitkan data X2
#X2 : Status pekerjaan keterangan ynag digunakan (0=tidak bekerja) dan (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 : 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: data IPK Pelamar dengan skala 4
set.seed(222)
x4 <- round(rnorm(n,3,0.5),2)
x4
## [1] 3.74 3.00 3.69 2.81 3.09 2.88 2.39 3.78 3.21 2.40 3.53 2.35 2.65 3.30 2.90
## [16] 2.41 2.00 3.00 3.26 2.63 3.36 3.36 2.67 3.75 2.28 1.92 3.20 2.80 2.85 3.67
## [31] 2.59 3.34 2.89 2.94 2.90 3.20 3.33 3.05 2.91 3.47 3.10 3.25 2.72 3.56 4.10
## [46] 3.16 2.53 3.41 2.81 3.17 3.30 3.26 2.52 2.39 2.90 3.53 3.19 3.62 3.16 2.48
## [61] 2.43 3.62 3.39 3.37 3.03 3.42 3.10 3.73 2.77 1.61 3.03 2.97 2.41 1.74 3.41
## [76] 3.13 2.97 3.34 3.01 3.27 3.34 2.40 2.38 3.11 2.27 2.94 3.27 3.36 2.21 3.55
## [91] 2.83 3.31 3.25 3.84 3.19 3.12 3.21 2.41 2.68 3.03
set.seed(222)
x44 <- round(rnorm(n,2.7,0.5),2)
x44
## [1] 3.44 2.70 3.39 2.51 2.79 2.58 2.09 3.48 2.91 2.10 3.23 2.05 2.35 3.00 2.60
## [16] 2.11 1.70 2.70 2.96 2.33 3.06 3.06 2.37 3.45 1.98 1.62 2.90 2.50 2.55 3.37
## [31] 2.29 3.04 2.59 2.64 2.60 2.90 3.03 2.75 2.61 3.17 2.80 2.95 2.42 3.26 3.80
## [46] 2.86 2.23 3.11 2.51 2.87 3.00 2.96 2.22 2.09 2.60 3.23 2.89 3.32 2.86 2.18
## [61] 2.13 3.32 3.09 3.07 2.73 3.12 2.80 3.43 2.47 1.31 2.73 2.67 2.11 1.44 3.11
## [76] 2.83 2.67 3.04 2.71 2.97 3.04 2.10 2.08 2.81 1.97 2.64 2.97 3.06 1.91 3.25
## [91] 2.53 3.01 2.95 3.54 2.89 2.82 2.91 2.11 2.38 2.73
summary(x44)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.310 2.410 2.795 2.711 3.040 3.800
Membangkitkan Data Y
#Menentukan Koefisien
b0 <- -11
b1 <- 3.5
b2 <- 1.0
b3 <- 3.0
b4 <- 2.5
set.seed(1)
datapendukung <- b0+(b1*x1)+(b2*x2)+(b3*x3)+(b4*x4)
datapendukung
## [1] 2.850 18.000 16.725 17.525 34.725 13.700 -2.025 5.950 18.525 10.000
## [11] 21.825 8.875 6.625 45.750 3.250 29.525 1.000 3.500 0.650 3.075
## [21] 7.400 7.400 3.175 2.375 2.200 24.800 15.000 42.000 27.625 -1.825
## [31] 9.975 7.350 6.225 14.350 -0.250 21.500 4.825 1.125 81.275 25.675
## [41] 11.750 14.625 3.800 16.400 6.250 7.400 16.325 8.025 -0.475 25.425
## [51] -1.750 5.150 19.300 8.975 3.750 11.825 8.475 25.550 3.400 26.700
## [61] 34.075 -1.950 5.475 -1.575 4.075 18.550 7.750 15.325 -0.075 8.025
## [71] 4.075 38.925 -1.975 21.350 -2.475 11.825 4.425 1.350 4.525 18.175
## [81] 43.850 9.500 -1.550 13.775 -1.825 34.850 8.175 8.400 2.025 36.375
## [91] 0.575 43.275 0.625 6.100 1.475 11.800 8.025 -3.975 2.700 24.075
p <- exp(datapendukung)/(1+exp(datapendukung))
p
## [1] 0.94531868 0.99999998 0.99999995 0.99999998 1.00000000 0.99999888
## [7] 0.11660297 0.99740093 0.99999999 0.99995460 1.00000000 0.99986018
## [13] 0.99867498 1.00000000 0.96267311 1.00000000 0.73105858 0.97068777
## [19] 0.65701046 0.95584966 0.99938912 0.99938912 0.95988257 0.91490095
## [25] 0.90024951 1.00000000 0.99999969 1.00000000 1.00000000 0.13883499
## [31] 0.99995345 0.99935782 0.99802459 0.99999941 0.43782350 1.00000000
## [37] 0.99203736 0.75491499 1.00000000 1.00000000 0.99999211 0.99999955
## [43] 0.97811873 0.99999992 0.99807327 0.99938912 0.99999992 0.99967293
## [49] 0.38343350 1.00000000 0.14804720 0.99423403 1.00000000 0.99987348
## [55] 0.97702263 0.99999268 0.99979142 1.00000000 0.96770454 1.00000000
## [61] 1.00000000 0.12455336 0.99582726 0.17150477 0.98329170 0.99999999
## [67] 0.99956944 0.99999978 0.48125878 0.99967293 0.98329170 1.00000000
## [73] 0.12185285 1.00000000 0.07762946 0.99999268 0.98816747 0.79412963
## [79] 0.98928142 0.99999999 1.00000000 0.99992515 0.17508627 0.99999896
## [85] 0.13883499 1.00000000 0.99971847 0.99977518 0.88339703 1.00000000
## [91] 0.63991610 1.00000000 0.65135486 0.99776215 0.81381617 0.99999250
## [97] 0.99967293 0.01843314 0.93702664 1.00000000
set.seed(2)
y <- rbinom(n,1,p)
y
## [1] 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
## [38] 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1 1 0 1
## [75] 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1
p <- exp(datapendukung)/(1+exp(datapendukung))
p
## [1] 0.94531868 0.99999998 0.99999995 0.99999998 1.00000000 0.99999888
## [7] 0.11660297 0.99740093 0.99999999 0.99995460 1.00000000 0.99986018
## [13] 0.99867498 1.00000000 0.96267311 1.00000000 0.73105858 0.97068777
## [19] 0.65701046 0.95584966 0.99938912 0.99938912 0.95988257 0.91490095
## [25] 0.90024951 1.00000000 0.99999969 1.00000000 1.00000000 0.13883499
## [31] 0.99995345 0.99935782 0.99802459 0.99999941 0.43782350 1.00000000
## [37] 0.99203736 0.75491499 1.00000000 1.00000000 0.99999211 0.99999955
## [43] 0.97811873 0.99999992 0.99807327 0.99938912 0.99999992 0.99967293
## [49] 0.38343350 1.00000000 0.14804720 0.99423403 1.00000000 0.99987348
## [55] 0.97702263 0.99999268 0.99979142 1.00000000 0.96770454 1.00000000
## [61] 1.00000000 0.12455336 0.99582726 0.17150477 0.98329170 0.99999999
## [67] 0.99956944 0.99999978 0.48125878 0.99967293 0.98329170 1.00000000
## [73] 0.12185285 1.00000000 0.07762946 0.99999268 0.98816747 0.79412963
## [79] 0.98928142 0.99999999 1.00000000 0.99992515 0.17508627 0.99999896
## [85] 0.13883499 1.00000000 0.99971847 0.99977518 0.88339703 1.00000000
## [91] 0.63991610 1.00000000 0.65135486 0.99776215 0.81381617 0.99999250
## [97] 0.99967293 0.01843314 0.93702664 1.00000000
set.seed(2)
y <- rbinom(n,1,p)
y
## [1] 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
## [38] 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1 1 0 1
## [75] 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1
datagab <- data.frame(y,x1,x2,x3,x4)
datagab
## y x1 x2 x3 x4
## 1 1 1 1 0 3.74
## 2 1 5 1 1 3.00
## 3 1 5 1 0 3.69
## 4 1 5 1 1 2.81
## 5 1 10 0 1 3.09
## 6 1 5 0 0 2.88
## 7 0 0 0 1 2.39
## 8 1 1 1 1 3.78
## 9 1 5 1 1 3.21
## 10 1 4 1 0 2.40
## 11 1 6 0 1 3.53
## 12 1 4 0 0 2.35
## 13 1 2 1 1 2.65
## 14 1 13 0 1 3.30
## 15 1 2 0 0 2.90
## 16 1 9 0 1 2.41
## 17 0 2 0 0 2.00
## 18 0 2 0 0 3.00
## 19 1 1 0 0 3.26
## 20 1 1 1 1 2.63
## 21 1 2 0 1 3.36
## 22 1 2 0 1 3.36
## 23 1 1 1 1 2.67
## 24 1 0 1 1 3.75
## 25 1 1 1 1 2.28
## 26 1 8 0 1 1.92
## 27 1 4 1 1 3.20
## 28 1 12 1 1 2.80
## 29 1 9 0 0 2.85
## 30 0 0 0 0 3.67
## 31 1 3 1 1 2.59
## 32 1 2 0 1 3.34
## 33 1 2 0 1 2.89
## 34 1 4 1 1 2.94
## 35 1 1 0 0 2.90
## 36 1 7 0 0 3.20
## 37 1 1 1 1 3.33
## 38 1 1 1 0 3.05
## 39 1 24 1 0 2.91
## 40 1 8 0 0 3.47
## 41 1 4 1 0 3.10
## 42 1 5 0 0 3.25
## 43 1 2 1 0 2.72
## 44 1 5 1 0 3.56
## 45 1 2 0 0 4.10
## 46 1 3 0 0 3.16
## 47 1 6 0 0 2.53
## 48 1 3 0 0 3.41
## 49 1 1 0 0 2.81
## 50 1 7 1 1 3.17
## 51 0 0 1 0 3.30
## 52 1 2 1 0 3.26
## 53 1 6 0 1 2.52
## 54 1 4 0 0 2.39
## 55 1 1 1 1 2.90
## 56 1 4 0 0 3.53
## 57 1 3 1 0 3.19
## 58 1 7 0 1 3.62
## 59 1 1 0 1 3.16
## 60 1 9 0 0 2.48
## 61 1 10 1 1 2.43
## 62 0 0 0 0 3.62
## 63 1 2 1 0 3.39
## 64 0 0 1 0 3.37
## 65 1 1 1 1 3.03
## 66 1 6 0 0 3.42
## 67 1 2 1 1 3.10
## 68 1 4 0 1 3.73
## 69 0 0 1 1 2.77
## 70 1 4 1 0 1.61
## 71 1 1 1 1 3.03
## 72 1 11 1 1 2.97
## 73 0 0 0 1 2.41
## 74 1 8 0 0 1.74
## 75 0 0 0 0 3.41
## 76 1 4 1 0 3.13
## 77 1 2 1 0 2.97
## 78 1 0 1 1 3.34
## 79 1 2 1 0 3.01
## 80 1 6 0 0 3.27
## 81 1 13 1 0 3.34
## 82 1 3 1 1 2.40
## 83 1 1 0 0 2.38
## 84 1 4 0 1 3.11
## 85 0 1 0 0 2.27
## 86 1 11 0 0 2.94
## 87 1 2 1 1 3.27
## 88 1 2 1 1 3.36
## 89 1 1 1 1 2.21
## 90 1 11 0 0 3.55
## 91 0 1 1 0 2.83
## 92 1 12 1 1 3.31
## 93 0 1 0 0 3.25
## 94 1 1 1 1 3.84
## 95 1 1 1 0 3.19
## 96 1 4 1 0 3.12
## 97 1 2 1 1 3.21
## 98 0 0 1 0 2.41
## 99 1 2 0 0 2.68
## 100 1 7 0 1 3.03
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) -10.481 4.500 -2.329 0.01985 *
## x1 3.096 0.962 3.218 0.00129 **
## x2 1.038 1.072 0.968 0.33324
## x3 2.986 1.407 2.122 0.03387 *
## x4 2.357 1.322 1.783 0.07461 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 80.993 on 99 degrees of freedom
## Residual deviance: 27.784 on 95 degrees of freedom
## AIC: 37.784
##
## Number of Fisher Scoring iterations: 9