# DATA
data(healthsurvey)
# the order of response levels decreases from the best health to
# the worst health; hence the hopit() parameter decreasing.levels
# is set to TRUE
levels(healthsurvey$health)
# Example 1 ---------------------
# \donttest{
# fitting two nested models
model1 <- hopit(latent.formula = health ~ hypertension + high_cholesterol +
heart_attack_or_stroke + poor_mobility + very_poor_grip +
depression + respiratory_problems +
IADL_problems + obese + diabetes + other_diseases,
thresh.formula = ~ sex + ageclass + country,
decreasing.levels = TRUE,
control = list(trace = FALSE),
data = healthsurvey)
# a model with an interaction between hypertension and high_cholesterol
model2 <- hopit(latent.formula = health ~ hypertension * high_cholesterol +
heart_attack_or_stroke + poor_mobility + very_poor_grip +
depression + respiratory_problems +
IADL_problems + obese + diabetes + other_diseases,
thresh.formula = ~ sex + ageclass + country,
decreasing.levels = TRUE,
control = list(trace = FALSE),
data = healthsurvey)
# a likelihood ratio test
lrt1 <- anova(model1, model2)
lrt1
# print results in a shorter form
print(lrt1, short = TRUE)
# or equivalently
lrt.hopit(model2, model1)
# }
# Example 2 ---------------------
# \donttest{
# fitting additional nested models
model3 <- hopit(latent.formula = health ~ hypertension * high_cholesterol +
heart_attack_or_stroke + poor_mobility + very_poor_grip +
depression + respiratory_problems +
IADL_problems + obese * diabetes + other_diseases,
thresh.formula = ~ sex + ageclass + country,
decreasing.levels = TRUE,
control = list(trace = FALSE),
data = healthsurvey)
model4 <- hopit(latent.formula = health ~ hypertension * high_cholesterol +
heart_attack_or_stroke + poor_mobility + very_poor_grip +
depression + respiratory_problems +
IADL_problems + obese * diabetes + other_diseases,
thresh.formula = ~ sex * ageclass + country,
decreasing.levels = TRUE,
control = list(trace = FALSE),
data = healthsurvey)
# sequential likelihood ratio tests
# model complexity increases so direction = "increasing"
anova(model1, model2, model3, model4,
direction = "increasing", method = "sequential")
# likelihood ratio tests of the most complex model with the rest of the models
anova(model1, model2, model3, model4,
direction = "increasing", method = "with.most.complex")
# likelihood ratio tests of the least complex model with the rest of the models
anova(model1, model2, model3, model4,
direction = "increasing", method = "with.least.complex")
# }
Run the code above in your browser using DataLab