Decomposing VIF (Variance Inflation Factor) I am wondering if there is a method to decompose variance inflation factor (VIF) of variables, to determine the strength of correlation between one variable and other variables. 
Is there a method that says, for variable 1, x% of VIF is coming from variable 2, y% of VIF is coming from variable 3, and z% of VIF is coming from variable 4, such that x% + y% + z% = 100%.
Thank you.
 A: One possibility could be the square of partial correlation. But I doubt they would add up to 100% of the total variability, if they do, you'd probably have a set of perfectly collinear variables and that would be thrown out of the model by most software automatically.
In your case, where the dependent variable is predicted with x, y, and z. The information required to compute the VIF of x is actually from the model:
$$x = \beta_0 + \beta_1 y + \beta_2 z$$
So on so forth. Hence, you may look at the partial correlation between x and y adjusted for z, and between x and z adjusted for y, to get the pair-level information you're after.


Stata codes used:
sysuse auto, clear

reg price mpg weight length

estat vif

pcorr weight length mpg
pcorr length weight mpg
pcorr mpg weight length

The sums of the squared partial correlations are linearly related to the VIF, so technically, you may say that: Of the 10.31 VIF for weight, 90.4% (.7216/(.7216+.0767)) is from the variable length. But, this could risk blowing some of the variables with low VIF to begin with out of proportion. For instance, mpg is not that collinear with the rest of the variables, yet, you may still end up concluding 73% of the VIF in mpg was due to weight. So, beware of that and try to keep the whole set of analysis in context.
