CDOoDocuments.StdDocumentDescDocuments.DocumentDescContainers.ViewDescViews.ViewDescStores.StoreDescDocuments.ModelDescContainers.ModelDescModels.ModelDescStores.ElemDesc TextViews.StdViewDescTextViews.ViewDescTextModels.StdModelDescTextModels.ModelDescTextModels.AttributesDesc'* * # --------------- LOGIT MODEL ------------------------------------ model{ # Senility symptoms data - chapter 8 # binary regression example # LOGIT MODEL for (i in 1:n){ senility[i] ~ dbern( pi[i] ) logit( pi[i] ) <- beta0 + beta1 * wais[i] } # priors beta0~dnorm( 0, 0.001) beta1~dnorm( 0, 0.001) # odds0 <- exp(beta0) OR <- exp(beta1) # # Wais for which pi=1/2 wais.half.prob <- - beta0/beta1 # # probabilities for all X for (k in 1:21){ logit( pi.model[k] ) <- beta0 + beta1 * (k-1) } } INITS list( beta0=0, beta1=0.01 ) DATA list( n=54, wais = c(9, 13, 6, 8, 10, 4, 14, 8, 11, 7, 9, 7, 5, 14, 13, 16, 10, 12, 11, 14, 15, 18, 7, 16, 9, 9, 11, 13, 15, 13, 10, 11, 6, 17, 14, 19, 9, 11, 14, 10, 16, 10, 16, 14, 13, 13, 9, 15, 10, 11, 12, 4, 14, 20), senility = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 0, 0) ) # --------------- PROBIT MODEL ------------------------------------ model{ # Senility symptoms data - chapter 8 # binary regression example # PROBIT MODEL for (i in 1:n){ senility[i] ~ dbern( pi[i] ) eta[i] <- beta0 + beta1 * wais[i] #probit(pi[i]) <- eta[i] # simple probit approch # truncated at -xi, xi probit(pi[i]) <- eta[i] *(1-step( abs(eta[i])-xi )) - xi*step( -xi - eta[i] )+ xi *step( eta[i]-xi) } # priors beta0~dnorm( 0, 0.001) beta1~dnorm( 0, 0.001) # # truncation value xi <- 5 # interpretation measures incr.prob.pi.half <- phi(beta1) # marginal effect marg.effect.pi.half <- 0.4 * beta1 act.marg.effect.pi.half <- phi(beta1)-0.5 # xi2 <- 1.6 approx.or <- exp(xi2 * beta1) # # Wais for which pi=1/2 wais.half.prob <- - beta0/beta1 # # probabilities & odds for all X for (k in 1:21){ probit(pi.model[k] ) <- beta0 + beta1 * (k-1) odds[k] <- pi.model[k]/(1-pi.model[k]) } # actual prob differences and OR's for all X for (k in 1:20){ Dpi[k] <- pi.model[k+1] - pi.model[k] or[k] <- odds[k+1]/odds[k] } } # --------------- CLOGLOG MODEL ------------------------------------ model{ # Senility symptoms data - chapter 8 # binary regression example # CLOG-LOG MODEL for (i in 1:n){ senility[i] ~ dbern( pi[i] ) eta[i] <- beta0 + beta1 * wais[i] # cloglog(pi[i]) <- eta[i] # simple cloglog approch # truncated at -xi, xi cloglog(pi[i]) <- eta[i]*(1-step( -xi1 - eta[i] ))*(1-step( eta[i]-xi2)) - xi1*step( -xi1 - eta[i] )+ xi2 *step( eta[i]-xi2) } # priors beta0~dnorm( 0, 0.001) beta1~dnorm( 0, 0.001) # # truncation value xi1 <- 10 xi2 <- 3 # interpretation measures incr.prob.pi.half <- exp( -exp(beta1) ) # marginal effect marg.effect.pi.half <- -0.35 * beta1 act.marg.effect.pi.half <- exp( -exp(beta1) ) - 0.5 # approx or approx.or <- exp( 1.39 * beta1) # # Wais for which pi=1/2 wais.half.prob <- (log(log(2))- beta0)/beta1 # # probabilities & odds for all X for (k in 1:21){ cloglog(pi.model[k] ) <- beta0 + beta1 * (k-1) odds[k] <- pi.model[k]/(1-pi.model[k]) } # actual prob differences and OR's for all X for (k in 1:20){ Dpi[k] <- pi.model[k+1] - pi.model[k] or[k] <- odds[k+1]/odds[k] } } INITS list( beta0=0, beta1=0.1 ) DATA list( n=54, wais = c(9, 13, 6, 8, 10, 4, 14, 8, 11, 7, 9, 7, 5, 14, 13, 16, 10, 12, 11, 14, 15, 18, 7, 16, 9, 9, 11, 13, 15, 13, 10, 11, 6, 17, 14, 19, 9, 11, 14, 10, 16, 10, 16, 14, 13, 13, 9, 15, 10, 11, 12, 4, 14, 20), senility = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 0, 0) ) # commands from R dput(wais, control = "useSource") TextControllers.StdCtrlDescTextControllers.ControllerDescContainers.ControllerDescControllers.ControllerDesc TextRulers.StdRulerDescTextRulers.RulerDescTextRulers.StdStyleDescTextRulers.StyleDescZTextRulers.AttributesDesc$ Zo * ,[ @Documents.ControllerDesc Ws,! [h$