[R-sig-ME] variance inflation factor
Fox, John
jfox at mcmaster.ca
Thu Feb 22 15:51:46 CET 2018
Dear Toni,
Yes, that looks reasonable, although I'm not sure why it's necessary to test for more than one fixed-effect intercept at the beginning of the fixed-effect coefficient vector and how an intercept could be named "Intercept" rather than "(Intercept)". Assuming that there's a reason that escapes me, here's a simplified version:
vif.lme <- function (fit) {
## adapted from rms::vif
v <- vcov(fit)
nam <- names(fixef(fit))
## exclude intercepts
ns <- sum(nam == "Intercept" | nam == "(Intercept)")
if (ns > 0) v <- v[-(1:ns), -(1:ns), drop = FALSE]
diag(solve(cov2cor(v)))
}
I hope this helps,
John
-----------------------------
John Fox, Professor Emeritus
McMaster University
Hamilton, Ontario, Canada
Web: socialsciences.mcmaster.ca/jfox/
> -----Original Message-----
> From: R-sig-mixed-models [mailto:r-sig-mixed-models-bounces at r-
> project.org] On Behalf Of Toni Hernandez-Matias
> Sent: Thursday, February 22, 2018 7:28 AM
> To: r-sig-mixed-models at r-project.org
> Subject: [R-sig-ME] variance inflation factor
>
> Dear all,
>
> Could some help me to calculate Variance Inflation Factors of models fitted
> with glmer and lmer ?
>
> I found the method I copy below but I am not sure it is correct:
>
> vif.lme <- function (fit) {
> ## adapted from rms::vif
> v <- vcov(fit)
> nam <- names(fixef(fit))
> ## exclude intercepts
> ns <- sum(1 * (nam == "Intercept" | nam == "(Intercept)"))
> if (ns > 0) {
> v <- v[-(1:ns), -(1:ns), drop = FALSE]
> nam <- nam[-(1:ns)] }
> d <- diag(v)^0.5
> v <- diag(solve(v/(d %o% d)))
> names(v) <- nam
> v }
>
>
>
> ##la estimamos para el modelo 1
>
> vif.lme(mod1)
>
>
> Thank you very much in advance,
>
> Antonio
>
>
> --
> *********************************************************
>
> Antonio Hernandez Matias
>
> Equip de Biologia de la Conservació
> Departament de Biologia Evolutiva, Ecología i Ciències Ambientals Facultat de
> Biologia i Institut de Recerca de la Biodiversitat (IRBio) Universitat de
> Barcelona (UB) Av. Diagonal, 643
> Barcelona 08028
> Spain
> Telephone: +34-934035857 <+34%20934%2003%2058%2057>
> FAX: +34-934035740 <+34%20934%2003%2057%2040>
> e-mail: ahernandezmatias at ub.edu
>
> ***********************************************************
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-sig-mixed-models at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
More information about the R-sig-mixed-models
mailing list