Vuong's non-nested hypothesis test
Compares two models fit to the same data that do not nest via Vuong's non-nested test.
vuong(m1, m2, digits = getOption("digits"))
m1 |
model 1, an object inheriting from class |
m2 |
model 2, as for model 1 |
digits |
significant digits in printed result |
The Vuong non-nested test is based on a comparison of the predicted probabilities of two models that do not nest. Examples include comparisons of zero-inflated count models with their non-zero-inflated analogs (e.g., zero-inflated Poisson versus ordinary Poisson, or zero-inflated negative-binomial versus ordinary negative-binomial). A large, positive test statistic provides evidence of the superiority of model 1 over model 2, while a large, negative test statistic is evidence of the superiority of model 2 over model 1. Under the null that the models are indistinguishable, the test statistic is asymptotically distributed standard normal.
Let p_i = \hat{Pr}(y_i | M_1) be the predicted probabilities from model 1, evaluated conditional on the estimated MLEs. Let q_i be the corresponding probabilities from model 2. Then the Vuong statistic is √{N} \bar{m}/s_m where m_i = log(p_i) - log(q_i) and s_m is the sample standard deviation of m_i.
Two finite sample corrections are often considered, based on the Akaike (AIC) and Schwarz (BIC) penalty terms, based on the complexity of the two models. These corrections sometimes generate conflicting conclusions.
The function will fail if the models do not contain identical values
in their respective components named y
(the value of the
response being modeled).
nothing returned, prints 3 test statistics and p values and exits silently.
Simon Jackman simon.jackman@sydney.edu.au
Vuong, Q.H. 1989. Likelihood ratio tests for model selection and non-nested hypotheses. Econometrica. 57:307-333.
## Not run: data("bioChemists") ## compare Poisson GLM and ZIP glm1 <- glm(art ~ ., data = bioChemists, family = poisson) zip <- zeroinfl(art ~ . | ., data = bioChemists, EM = TRUE) vuong(glm1, zip) ## compare negbin with zero-inflated negbin nb1 <- MASS::glm.nb(art ~ ., data=bioChemists) zinb <- zeroinfl(art ~ . | ., data = bioChemists, dist = "negbin", EM = TRUE) vuong(nb1, zinb) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.