Model Log Linear merupakan analisis pemodelan yang masuk dalam Generalized Linear Model (Model Linier Terampat). Dengan model log linear bisa dilakukan untuk menguji hubungan antar peubah kategorik yang terdapat pada tabel kontingensi (cell count). Model log linear dapat mengatasi situasi yang kompleks: dapat digunakan untuk menguji hubugan homogen dan menduga rasio odds pada tabel kontingensi dengan berbagai ukuran (tidak terbatas pada ukuran 2x2). Dalam analisis model log linear tidak ada peubah respon dan peubah bebas semuanya dianggap sebagai peubah respon. Tujuan utama dari pemodelan log linear adalah untuk menduga parameter model yang mendeskripsikan hubungan antar peubah kategorik.
Penentuan model log linear terbaik dilakukan secara berjenjang. Tahapan penentuan modelnya sejalan dengan metode backward pada penyeleksian peubah regresi linier. Semua kemungkinan masuk dalam model dan dilakukan pengujian signifikansi paramater model secara berjenjang. Berikut adalah tahapan pengujian atau penentuan model terbaik model log linear (Azen et al, 2011)
ilustrasi
Berikut adalah langkah-langkah pembentukan model terbaik dengan contoh soal
Dalam langkah awal pengolahan tabel kontingensi dibentuk dalam bentuk dalam bentuk tabel dataframe dengan kolom 1 adalah peubah z, kolom 2 peubah x, dan kolom 3 peubah y, serta kolom selanjutnya adalah frekuensinya
#Input Data
z.sex<-factor(rep(c("1M","2F"),each=4))
x.info<-factor(rep(c("1support","2oppose"),each=2,times=2))
y.health<-factor(rep(c("1support","2oppose"),times=4))
counts<-c(76,160,6,25,114,181,11,48)
data.frame(z.sex,x.info,y.health,counts)
## z.sex x.info y.health counts
## 1 1M 1support 1support 76
## 2 1M 1support 2oppose 160
## 3 1M 2oppose 1support 6
## 4 1M 2oppose 2oppose 25
## 5 2F 1support 1support 114
## 6 2F 1support 2oppose 181
## 7 2F 2oppose 1support 11
## 8 2F 2oppose 2oppose 48
#kategori referensi
x.info<-relevel(x.info,ref="2oppose")
y.health<-relevel(y.health,ref="2oppose")
z.sex<-relevel(z.sex,ref="2F")
Selanjutnya adalah melakukan pembentukan model dan pengujian model. Pada langkah awal dibentuk model saturated (model penuh dengan semua parameter dalam model) dan model homogeneous (ada 1 parameter yang tidak ada dalam model yaitu parameter asosiasi 3 arah).
#saturated
model<- glm(counts~x.info+y.health+z.sex+x.info*y.health+x.info*z.sex+ y.health*z.sex+x.info*y.health*z.sex,family=poisson("link"=log))
summary(model)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health +
## x.info * z.sex + y.health * z.sex + x.info * y.health * z.sex,
## family = poisson(link = log))
##
## Deviance Residuals:
## [1] 0 0 0 0 0 0 0 0
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.87120 0.14434 26.820 < 2e-16
## x.info1support 1.32730 0.16235 8.175 2.95e-16
## y.health1support -1.47331 0.33428 -4.407 1.05e-05
## z.sex1M -0.65233 0.24664 -2.645 0.00817
## x.info1support:y.health1support 1.01101 0.35502 2.848 0.00440
## x.info1support:z.sex1M 0.52900 0.26946 1.963 0.04962
## y.health1support:z.sex1M 0.04619 0.56428 0.082 0.93476
## x.info1support:y.health1support:z.sex1M -0.32833 0.59339 -0.553 0.58005
##
## (Intercept) ***
## x.info1support ***
## y.health1support ***
## z.sex1M **
## x.info1support:y.health1support **
## x.info1support:z.sex1M *
## y.health1support:z.sex1M
## x.info1support:y.health1support:z.sex1M
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 4.4582e+02 on 7 degrees of freedom
## Residual deviance: -2.1094e-14 on 0 degrees of freedom
## AIC: 61.382
##
## Number of Fisher Scoring iterations: 3
#homogenous Model
modelhomo <- glm(counts~x.info+y.health+z.sex+x.info*y.health+x.info*z.sex+ y.health*z.sex,family=poisson("link"=log))
summary(modelhomo)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health +
## x.info * z.sex + y.health * z.sex, family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.10362 0.07183 0.39073 -0.17923 0.08516 -0.06730 -0.26626 0.13173
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.8521 0.1415 27.219 < 2e-16 ***
## x.info1support 1.3514 0.1575 8.578 < 2e-16 ***
## y.health1support -1.3750 0.2750 -5.001 5.71e-07 ***
## z.sex1M -0.5976 0.2242 -2.666 0.00768 **
## x.info1support:y.health1support 0.8997 0.2852 3.155 0.00160 **
## x.info1support:z.sex1M 0.4636 0.2406 1.927 0.05401 .
## y.health1support:z.sex1M -0.2516 0.1749 -1.438 0.15035
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.82335 on 7 degrees of freedom
## Residual deviance: 0.30072 on 1 degrees of freedom
## AIC: 59.683
##
## Number of Fisher Scoring iterations: 4
Berdasarkan model diperoleh devians saturated model mendekati 0 dengan derajat bebas 0 dan devians homogeneous model bernilai 0.301 sehingga statistik ujinya 0.301-0=0.301 dengan selisih derajat bebas 1. Nilai kritis yaitu chi-square 95 persen db=1 adalah 3.841. Sehingga keputusan tidak tolak H0. Dengan hasil tersebut mengindikasikan parameter asosiasi 3 arah dari model tidak signifikan. Model homogeneous lebih fit untuk data dibanding Model Saturated.
Selanjutnya dilakukan pemodelan conditional association dan dilakukan pengujian homogeneous model terhadap conditional association (pengujian 1 parameter model asosiasi 2 arah):
#Conditional Association on x
modelcondx<-glm(counts~ x.info+ y.health+ z.sex+ x.info*y.health+ x.info*z.sex,family=poisson("link"=log))
summary(modelcondx)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health +
## x.info * z.sex, family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.93493 0.67971 0.05945 -0.02883 0.81131 -0.61817 -0.04336 0.02087
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.8682 0.1398 27.675 < 2e-16 ***
## x.info1support 1.3759 0.1548 8.886 < 2e-16 ***
## y.health1support -1.4572 0.2693 -5.411 6.26e-08 ***
## z.sex1M -0.6436 0.2218 -2.901 0.00372 **
## x.info1support:y.health1support 0.8724 0.2841 3.071 0.00214 **
## x.info1support:z.sex1M 0.4204 0.2384 1.763 0.07782 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.8233 on 7 degrees of freedom
## Residual deviance: 2.3831 on 2 degrees of freedom
## AIC: 59.765
##
## Number of Fisher Scoring iterations: 3
#Conditional Association on Y
modelcondy<-glm(counts~ x.info+ y.health+ z.sex+ x.info*y.health+ y.health*z.sex,family=poisson("link"=log))
summary(modelcondy)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health +
## y.health * z.sex, family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## 0.08450 0.61232 -0.28835 -1.39207 -0.06863 -0.55869 0.22653 1.16424
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.69832 0.12510 29.563 < 2e-16 ***
## x.info1support 1.54142 0.12896 11.953 < 2e-16 ***
## y.health1support -1.36951 0.27864 -4.915 8.88e-07 ***
## z.sex1M -0.21337 0.09885 -2.158 0.03090 *
## x.info1support:y.health1support 0.87239 0.28411 3.071 0.00214 **
## y.health1support:z.sex1M -0.20823 0.17311 -1.203 0.22903
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.8233 on 7 degrees of freedom
## Residual deviance: 4.1267 on 2 degrees of freedom
## AIC: 61.509
##
## Number of Fisher Scoring iterations: 4
#Conditional Association on z
modelcondz<-glm(counts~ x.info+ y.health+ z.sex+ x.info*z.sex+ y.health*z.sex,family=poisson("link"=log))
summary(modelcondz)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * z.sex +
## y.health * z.sex, family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## 0.4103 -0.2763 -1.2251 0.7402 0.9489 -0.7181 -2.3699 1.5298
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.6420 0.1360 26.783 < 2e-16 ***
## x.info1support 1.6094 0.1426 11.285 < 2e-16 ***
## y.health1support -0.6054 0.1112 -5.444 5.21e-08 ***
## z.sex1M -0.5749 0.2289 -2.511 0.0120 *
## x.info1support:z.sex1M 0.4204 0.2384 1.763 0.0778 .
## y.health1support:z.sex1M -0.2082 0.1731 -1.203 0.2290
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 11.666 on 2 degrees of freedom
## AIC: 69.048
##
## Number of Fisher Scoring iterations: 4
Diperoleh hasil pengujian sebagai berikut:
Berdasarkan Uji Tersebut, dengan taraf uji 5 persen:
berdasarkan pengujian conditional x, parameter asosiasi 2 arah yz tidak signifikan dengan asumsi xy dan xz ada dalam model.
berdasarkan pengujian conditional y, parameter asosiasi 2 arah xz tidak signifikan dengan asumsi xy dan yz ada dalam model.
berdasarkan pengujian conditional z, parameter asosiasi 2 arah xy signifikan dengan asumsi xz dan yz ada dalam model.
Berdasarkan hasil tersebut terlihat bahwa model homogeneous bukan merupakan model terbaik bagi data karena ada parameter asosiasi 2 arah yang tidak signifikan dengan asumsi paramater asosiasi 2 arah lainnya ada dalam model. Langkah selanjutnya adalah dilakukan pemodelan joint independence pada model conditional association yang tidak signifikan (conditional on x dan y). Lalu melakukan pengujian model joint independence terhadap model conditional association untuk pengujian parameter 2 arah dengan asumsi ada 1 parameter 2 arah lainnya dalam model.
#Conditional Association on x dikurang xz
modelcondx1<-glm(counts~ x.info+ y.health+ z.sex+ x.info*y.health,family=poisson("link"=log))
summary(modelcondx1)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health,
## family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.6372 1.0893 -0.4999 -1.1823 0.5421 -0.9715 0.4116 0.9662
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.72843 0.12212 30.531 < 2e-16 ***
## x.info1support 1.54142 0.12896 11.953 < 2e-16 ***
## y.health1support -1.45725 0.26930 -5.411 6.26e-08 ***
## z.sex1M -0.28205 0.08106 -3.480 0.000502 ***
## x.info1support:y.health1support 0.87239 0.28411 3.071 0.002136 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 5.581 on 3 degrees of freedom
## AIC: 60.963
##
## Number of Fisher Scoring iterations: 4
#Conditional Association on x dikurang xy
modelcondx2<-glm(counts~ x.info+ y.health+ z.sex+ x.info*z.sex,family=poisson("link"=log))
summary(modelcondx2)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * z.sex,
## family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.3024 0.2120 -1.4640 0.9225 1.5405 -1.1325 -2.1332 1.3353
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.67207 0.13325 27.559 < 2e-16 ***
## x.info1support 1.60944 0.14261 11.285 < 2e-16 ***
## y.health1support -0.69315 0.08513 -8.143 3.87e-16 ***
## z.sex1M -0.64355 0.22183 -2.901 0.00372 **
## x.info1support:z.sex1M 0.42041 0.23840 1.763 0.07782 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.82 on 7 degrees of freedom
## Residual deviance: 13.12 on 3 degrees of freedom
## AIC: 68.502
##
## Number of Fisher Scoring iterations: 4
#Conditional Association on y dikurang xy
modelcondx4<-glm(counts~ x.info+ y.health+ z.sex+ z.sex*y.health,family=poisson("link"=log))
summary(modelcondx4)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + z.sex * y.health,
## family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## 0.6932 0.1438 -1.8886 -0.3539 0.6809 -1.0723 -1.8045 2.4085
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.50220 0.11776 29.740 < 2e-16 ***
## x.info1support 1.77495 0.11399 15.571 < 2e-16 ***
## y.health1support -0.60541 0.11121 -5.444 5.21e-08 ***
## z.sex1M -0.21337 0.09885 -2.158 0.0309 *
## y.health1support:z.sex1M -0.20823 0.17311 -1.203 0.2290
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 14.864 on 3 degrees of freedom
## AIC: 70.246
##
## Number of Fisher Scoring iterations: 4
#Conditional Association on y dikurang yz
modelcondx5<-glm(counts~ x.info+ y.health+ z.sex+ x.info*y.health,family=poisson("link"=log))
summary(modelcondx5)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health,
## family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.6372 1.0893 -0.4999 -1.1823 0.5421 -0.9715 0.4116 0.9662
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.72843 0.12212 30.531 < 2e-16 ***
## x.info1support 1.54142 0.12896 11.953 < 2e-16 ***
## y.health1support -1.45725 0.26930 -5.411 6.26e-08 ***
## z.sex1M -0.28205 0.08106 -3.480 0.000502 ***
## x.info1support:y.health1support 0.87239 0.28411 3.071 0.002136 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 5.581 on 3 degrees of freedom
## AIC: 60.963
##
## Number of Fisher Scoring iterations: 4
Diperoleh hasil pengujian sebagai berikut:
Berdasarkan Uji Tersebut, dengan taraf uji 5 persen:
berdasarkan pengujian tersebut, parameter asosiasi 2 arah xz tidak signifikan dengan asumsi xy ada dalam model.
berdasarkan pengujian tersebut, parameter asosiasi 2 arah xy signifikan dengan asumsi xz ada dalam model.
berdasarkan pengujian tersebut, parameter asosiasi 2 arah yz tidak signifikan dengan asumsi xy ada dalam model.
berdasarkan pengujian tersebut, parameter asosiasi 2 arah xy signifikan dengan asumsi yz ada dalam model.
Berdasarkan uji tersebut masih ada asosiasi 2 arah yang tidak signifikan dengan asumsi ada 1 asosiasi 2 arah lainnya dalam model. Sehingga untuk memastikan penentuan model terbaik dilakukan pemodelan complete indepence dan dilakukan pengujian terhadap joint independence yang pengujian sebelumnya tidak signifikan (pengujian complete indepence dengan model joint indepence dengan 1 parameter asosiasi 2 arah xy)
#Complete Independence
modelcondx3<-glm(counts~ x.info+ y.health+ z.sex,family=poisson("link"=log))
summary(modelcondx3)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex, family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.01163 0.62672 -2.14775 -0.15776 1.27750 -1.49031 -1.57956 2.22245
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.53231 0.11459 30.826 < 2e-16 ***
## x.info1support 1.77495 0.11399 15.571 < 2e-16 ***
## y.health1support -0.69315 0.08513 -8.143 3.87e-16 ***
## z.sex1M -0.28205 0.08106 -3.480 0.000502 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 16.318 on 4 degrees of freedom
## AIC: 69.7
##
## Number of Fisher Scoring iterations: 4
Berdasarkan model diperoleh devians joint indepence xy adalah 5.581 dengan derajat bebas 3 dan devians complete indepence bernilai 16.381 dengan derajat bebas 4 sehingga statistik ujinya 16.381-5.581=10.737 dengan selisih derajat bebas 1. Nilai kritis yaitu chi-square 95 persen db=1 adalah 3.841. Sehingga keputusan tolak H0. Dengan hasil tersebut mengindikasikan parameter asosiasi 2 arah xy signifikan.
Model terbaik yang fit terhadap data adalah MODEL JOINT INDEPENCE DENGAN 1 PARAMETER ASOSIASI 2 ARAH YAITU XY.
#best model
modelbest <- glm(counts~x.info+y.health+z.sex+x.info*y.health,family=poisson("link"=log))
summary(modelbest)
##
## Call:
## glm(formula = counts ~ x.info + y.health + z.sex + x.info * y.health,
## family = poisson(link = log))
##
## Deviance Residuals:
## 1 2 3 4 5 6 7 8
## -0.6372 1.0893 -0.4999 -1.1823 0.5421 -0.9715 0.4116 0.9662
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.72843 0.12212 30.531 < 2e-16 ***
## x.info1support 1.54142 0.12896 11.953 < 2e-16 ***
## y.health1support -1.45725 0.26930 -5.411 6.26e-08 ***
## z.sex1M -0.28205 0.08106 -3.480 0.000502 ***
## x.info1support:y.health1support 0.87239 0.28411 3.071 0.002136 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for poisson family taken to be 1)
##
## Null deviance: 445.823 on 7 degrees of freedom
## Residual deviance: 5.581 on 3 degrees of freedom
## AIC: 60.963
##
## Number of Fisher Scoring iterations: 4
#interpretasi
data.frame(koef=modelbest$coefficients,exp_koef=exp(modelbest$coefficients))
## koef exp_koef
## (Intercept) 3.7284253 41.6135266
## x.info1support 1.5414230 4.6712329
## y.health1support -1.4572461 0.2328767
## z.sex1M -0.2820483 0.7542373
## x.info1support:y.health1support 0.8723877 2.3926169
#fitted
dugaan<-round(fitted(modelbest),2)
data.frame(sex=z.sex,info=x.info,health=y.health,counts=counts,dugaan)
## sex info health counts dugaan
## 1 1M 1support 1support 76 81.69
## 2 1M 1support 2oppose 160 146.61
## 3 1M 2oppose 1support 6 7.31
## 4 1M 2oppose 2oppose 25 31.39
## 5 2F 1support 1support 114 108.31
## 6 2F 1support 2oppose 181 194.39
## 7 2F 2oppose 1support 11 9.69
## 8 2F 2oppose 2oppose 48 41.61
Jika poin a datanya dibuat ke bawah dalam bentuk dataframe. Untuk poin b input datanya dibuat dalam bentuk tabel:
library("epitools")
## Warning: package 'epitools' was built under R version 3.6.3
library("DescTools")
library("lawstat")
## Warning: package 'lawstat' was built under R version 3.6.3
##---Input Data---##
R.male<- matrix(c(76,160,6,25),nrow=2,byrow=TRUE,
dimnames = list("Info" = c("1support","2oppose"),
"Health" = c("1support","2oppose")))
print(R.male)
## Health
## Info 1support 2oppose
## 1support 76 160
## 2oppose 6 25
R.female<- matrix(c(114,181,11,48),nrow=2,byrow=TRUE,
dimnames = list("Info" = c("1support","2oppose"),
"Health" = c("1support","2oppose")))
print(R.female)
## Health
## Info 1support 2oppose
## 1support 114 181
## 2oppose 11 48
myarray <- array(c(R.male,R.female),dim=c(2,2,2)) # Set matrix for HM
myarray
## , , 1
##
## [,1] [,2]
## [1,] 76 160
## [2,] 6 25
##
## , , 2
##
## [,1] [,2]
## [1,] 114 181
## [2,] 11 48
#GI
marginal<-margin.table(myarray,c(1,3))
marginal
## [,1] [,2]
## [1,] 236 295
## [2,] 31 59
library(fmsb)
##
## Attaching package: 'fmsb'
## The following objects are masked from 'package:DescTools':
##
## CronbachAlpha, VIF
## The following objects are masked from 'package:epitools':
##
## oddsratio, rateratio, riskratio
fmsb::oddsratio(marginal)
## Disease Nondisease Total
## Exposed 236 295 531
## Nonexposed 31 59 90
## Total 267 354 621
##
## Odds ratio estimate and its significance probability
##
## data: marginal
## p-value = 0.07664
## 95 percent confidence interval:
## 0.9542326 2.4294410
## sample estimates:
## [1] 1.522581
#GH
marginal2<-margin.table(myarray,c(2,3))
marginal2
## [,1] [,2]
## [1,] 82 125
## [2,] 185 229
library(fmsb)
fmsb::oddsratio(marginal2)
## Disease Nondisease Total
## Exposed 82 125 207
## Nonexposed 185 229 414
## Total 267 354 621
##
## Odds ratio estimate and its significance probability
##
## data: marginal2
## p-value = 0.2291
## 95 percent confidence interval:
## 0.5783829 1.1400391
## sample estimates:
## [1] 0.8120216
Berdasarkan output tersebut selang kepercayaan 95 persen untuk odds ratio tabulasi silang GH (gender dan health care cost) adalah 0.5784 sampai dengan 1.140. Sedangkan selang kepercayaan odds ratio tabulasi silang GI (gender dan information program) adalah 0.9542 dampai dengan 2.4394.
Perbandingan odds support pada information program untuk laki-laki terhadap odds support pada information program untuk wanita diantara 0.9542 sampai 2.4394.
Perbandingan odds support pada health care cost untuk laki-laki terhadap odds support pada health care cost untuk wanita diantara 0.5784 sampai 1.140.
Kedua selang kepercayaan tersebut melewati 1 mengindikasikan ada kemungkinan nilai odds ratio sama dengan 1 artinya tidak ada perbedaan odds support baik pada information program maupun health care cost antara laki-laki dan perempuan. Hal ini mengindikasikan bahwa gender tidak berpengaruh dalam kasus ini. Hal ini sejalan dengan poin a hanya ada satu parameter asosiasi 2 arah yang signifikan yaitu xy.