help mivif


mivif -- Calculate variance inflation factors after mi estimate : regress


mivif [, m(numlist) uncentered]


mivif calculates variance inflation factors for the independent variables after linear regression with multiply-imputed datasets.


According to Rubin's combination rules, the MI point estimate is the mean of the estimates for each imputed dataset. This value of interest is assumed to be normally distributed. The VIF for a right-hand-side variable x1 is calculated as 1/(1 - R-squared), where R-squared is the coefficient of determination in a model that regresses x1 on the other right-hand-side variables. To improve normality for R-squared, Harel (2009) suggests to apply Fisher's z-transforation. mivif runs the regression of x1 on all other x in each imputed dataset and calculates the mean of the transformed R-squares as R2_MI. The VIF reported for each variable is calculated as 1/(1 - R2_MI).

mivif requires the data to be flong style. To change the style of mi data use mi convert.

Time-series operators are currently not supported.


m(numlist) combines VIFs from imputed datasets numlist. Default is to pool VIFs from imputed datasets used in the estimation.

uncentered reports uncentered VIFs. If the regression model is fit without the constant, option uncentered is implied. See vif.


. sysuse auto . mi set flong . mi register imputed rep78 . mi impute pmm rep78 price mpg weight foreign ,add(5) . mi estimate : regress price mpg weight foreign i.rep78 . mivif

Saved results

mivif saves the following in r():

Matrices r(mivif) result matrix


Harel, Ofer (2009). The estimation of R2 and adjusted R2 in incomplete data sets using multiple imputation. Journal of Applied Statistics, 36(10), 1109-1118.


Daniel Klein, University of Kassel,

Also see

Online: mi, vif

if installed: mibeta