# Decomposing R^2 into independent variables

Consider a linear regression model: $$y = β_0 + β_1X_1 + β_2X_2 + ... + β_kX_k + ε$$ where $$R^2 = 1 - (SSR/SST)$$.

I would like to determine the contribution of a factor $$i$$ (call it $$R^2_i$$) into the total $$R^2$$ such that $$R^2_1$$ + $$R^2_2$$ + ... +$$R^2_k$$ = $$R^2$$, because I want to know the impact of each factor into the total variance.

One methodology, called Shapley-Owen Decomposition, exists that performs that. The problem is that it is very computational heavy because it takes $$2^k$$ number of computations for each factor. It can be done pretty fast on Python when $$k$$ is small, but when $$k$$ is large, it is impossible.

My personal application is to decompose the $$R^2$$ into factors when $$k$$ is like 15-20 AND I want to do it using rolling-basis, because I want to see how the contributions change over time (which naturally means more computations).

I am wondering what efficient methodologies are out there to achieve my goal. A reference to academic paper/application would be appreciated. Thank you very much.