1 Description

The data are from a survey of primary care patients in Cantabrian, Spain, to estimate the prevalence of psychiatric illness. The prevalence for each of the sexes is estimated from data provided by the general practitioner and from completing the general health questionnaire.

Column 1: Subject ID
Column 2: Illness = 1, Otherwise = 0
Column 3: Gender ID
Column 4: General practitioner = GP, General health questionnaire = GPQ

2 Input Data

dta2 <- read.table("C:/Users/HANK/Desktop/HOMEWORK/cantabrian.txt", h=T)
names(dta2) <- c("ID","Health","Gender","Report")
head(dta2)
##   ID Health Gender Report
## 1  1      0      M     GP
## 2  1      0      M    GHQ
## 3  2      0      M     GP
## 4  2      0      M    GHQ
## 5  3      0      M     GP
## 6  3      0      M    GHQ
str(dta2)
## 'data.frame':    1646 obs. of  4 variables:
##  $ ID    : int  1 1 2 2 3 3 4 4 5 5 ...
##  $ Health: int  0 0 0 0 0 0 0 0 0 0 ...
##  $ Gender: chr  "M" "M" "M" "M" ...
##  $ Report: chr  "GP" "GHQ" "GP" "GHQ" ...

3 Descriptive info

dta2t <- dta2 %>% 
  mutate(Health = factor(Health, 
                         levels=0:1, 
                         labels=c("Illness","Otherwise")),
         Gender = factor(Gender, levels = c("M", "F")),
         Type = factor(Report, 
                       levels=c("GP","GHQ")))

4 Descriptive info

ftable(dta2t, row.vars = c('Gender','Health'), col.vars = c('Report'))
##                  Report GHQ  GP
## Gender Health                  
## M      Illness          244 287
##        Otherwise         80  37
## F      Illness          306 420
##        Otherwise        193  79

5 GEE

summary(m0 <- geeglm(Health ~ Gender + Report + Gender*Report, data=dta2, id = ID, corstr="exchangeable", family = binomial))
## 
## Call:
## geeglm(formula = Health ~ Gender + Report + Gender * Report, 
##     family = binomial, data = dta2, id = ID, corstr = "exchangeable")
## 
##  Coefficients:
##                  Estimate  Std.err   Wald Pr(>|W|)    
## (Intercept)      -0.46089  0.09192 25.141 5.33e-07 ***
## GenderM          -0.65425  0.15826 17.089 3.57e-05 ***
## ReportGP         -1.20991  0.12651 91.462  < 2e-16 ***
## GenderM:ReportGP  0.27649  0.22828  1.467    0.226    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation structure = exchangeable 
## Estimated Scale Parameters:
## 
##             Estimate Std.err
## (Intercept)        1 0.07865
##   Link = identity 
## 
## Estimated Correlation Parameters:
##       Estimate Std.err
## alpha   0.2975 0.04744
## Number of clusters:   823  Maximum cluster size: 2
sjPlot::tab_model(m0, show.obs=F, show.ngroups = F)
  Health
Predictors Odds Ratios CI p
(Intercept) 0.63 0.53 – 0.76 <0.001
Gender [M] 0.52 0.38 – 0.71 <0.001
Report [GP] 0.30 0.23 – 0.38 <0.001
Gender [M] * Report [GP] 1.32 0.84 – 2.06 0.226

6 End