R Membangkitkan Data

#Skenario Y : Total Penjualan Produk (bulan) X1 : Jumlah Iklan (Jumlah Iklan) X2 : Harga Produk (Rp) X3 : Promosi (ada promosi = 1, tidak ada promosi = 0)

Membangkitkan Data

Y : Total Penjualan Produk (bulan) Membangkitkan variabel X1 per unit selama 30 hari atau satu bulan dengan nilai tengah 8 dan banyak pembeli 37

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

Y <- round(30*(-(log(1-u)/8)))
Y
##  [1]  1  1  3  0  2  2  6  2  3  1  4  8  1  2  5  4  1  2  2  4  3  5  3  5  2
## [26]  1  6  8  3  1  3 10  2 12  4  8  1

##Membangkitkan data X1 X1 : Jumlah Iklan (Jumlah Iklan)

set.seed(238)
X1 <- round(rnorm(n,5,0.7),0)
X1
##  [1] 5 5 4 4 6 6 5 4 5 4 5 5 5 4 5 4 5 5 6 5 6 6 5 4 6 6 5 5 5 5 5 5 5 4 5 6 5

Membangkitkan data X2

X2 : Harga Produk (Rp)

set.seed(876)
X2 <- round(rnorm(n,34,0.7),3)
X2
##  [1] 34.120 34.548 33.255 33.815 34.080 35.358 34.323 34.858 33.709 34.009
## [11] 34.808 34.586 34.173 33.359 34.264 33.015 33.743 34.089 33.406 33.898
## [21] 34.520 34.991 35.122 33.913 33.420 33.903 34.106 34.297 33.888 33.414
## [31] 34.255 33.739 33.737 34.136 34.167 33.482 35.704

Membangkitkan data X3

X3 : Promosi Keterangan yang digunakan (ada promosi =1) dan (tidak ada promosi = 0)

set.seed(009)
X3 <- round(runif(n))
X3
##  [1] 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 1 1 0 1 0 1 0 1 1

Membangkitkan data Y

Menentukan koefisien

b0 <- -12
b1 <- 1.4
b2 <- 0.1
b3 <- 3.7
set.seed(123)
datapendukung <- b0+(b1*X1)+(b2*X2)+(b3*X3)
datapendukung
##  [1] -1.5880 -1.5452 -3.0745 -3.0185 -0.1920 -0.0642 -1.5677 -2.9142  2.0709
## [10]  0.7009 -1.5192 -1.5414  2.1173 -3.0641 -1.5736  0.6015 -1.6257  2.1089
## [19] -0.2594 -1.6102  3.5520 -0.1009 -1.4878 -3.0087  3.4420  3.4903 -1.5894
## [28] -1.5703  2.0888  2.0414 -1.5745  2.0739 -1.6263  0.7136 -1.5833  3.4482
## [37]  2.2704
P <- exp(datapendukung)/(1+exp(datapendukung))
P
##  [1] 0.16966547 0.17578062 0.04417145 0.04659707 0.45214691 0.48395551
##  [7] 0.17254452 0.05145605 0.88804247 0.66838728 0.17957935 0.17633185
## [13] 0.89257331 0.04461262 0.17170379 0.64599941 0.16442027 0.89176521
## [19] 0.43551121 0.16656085 0.97213166 0.47479638 0.18425217 0.04703438
## [25] 0.96899167 0.97041051 0.16946833 0.17217363 0.88980982 0.88507575
## [31] 0.17157583 0.88834040 0.16433785 0.67119614 0.17032863 0.96917742
## [37] 0.90639573
set.seed(3)
y <- rbinom(n,1,P)
y
##  [1] 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 0 0 0 1 1 0 1 1 1 0 1 0 1 0 1 1
datagab <- data.frame(y, X1, X2, X3)
datagab
##    y X1     X2 X3
## 1  0  5 34.120  0
## 2  0  5 34.548  0
## 3  0  4 33.255  0
## 4  0  4 33.815  0
## 5  1  6 34.080  0
## 6  1  6 35.358  0
## 7  0  5 34.323  0
## 8  0  4 34.858  0
## 9  1  5 33.709  1
## 10 1  4 34.009  1
## 11 0  5 34.808  0
## 12 0  5 34.586  0
## 13 1  5 34.173  1
## 14 0  4 33.359  0
## 15 1  5 34.264  0
## 16 0  4 33.015  1
## 17 0  5 33.743  0
## 18 1  5 34.089  1
## 19 1  6 33.406  0
## 20 0  5 33.898  0
## 21 1  6 34.520  1
## 22 0  6 34.991  0
## 23 0  5 35.122  0
## 24 0  4 33.913  0
## 25 1  6 33.420  1
## 26 1  6 33.903  1
## 27 0  5 34.106  0
## 28 1  5 34.297  0
## 29 1  5 33.888  1
## 30 1  5 33.414  1
## 31 0  5 34.255  0
## 32 1  5 33.739  1
## 33 0  5 33.737  0
## 34 1  4 34.136  1
## 35 0  5 34.167  0
## 36 1  6 33.482  1
## 37 1  5 35.704  1

Analisis Regresi Logistik

modelreglog <- glm(y~X1+X2+X3, family = binomial(link = logit), data = datagab)
summary(modelreglog)
## 
## Call:
## glm(formula = y ~ X1 + X2 + X3, family = binomial(link = logit), 
##     data = datagab)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)   
## (Intercept) -25.7975    37.2955  -0.692  0.48912   
## X1            3.1718     1.2772   2.483  0.01302 * 
## X2            0.2345     1.0897   0.215  0.82963   
## X3            6.0772     2.0159   3.015  0.00257 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 51.266  on 36  degrees of freedom
## Residual deviance: 20.127  on 33  degrees of freedom
## AIC: 28.127
## 
## Number of Fisher Scoring iterations: 6