2
$\begingroup$

I have been told to run a factor analysis using the stepwisefit function in MATLAB.

Basically, this function helps you fit a model composed of $T$ factors $F=(f_1, ... , f_T)$ each of which have $N$ values with a target vector $y$ with the same length.

I know for a fact that my factors are correlated, and I was wondering if this function was assuming that the factors are uncorrelated or not...

Should I still use this function or, if it's not the case, which function/method should I choose to perform my analysis?

$\endgroup$
6
  • $\begingroup$ Strange. I don't see any reference to factor analysis under the link. It reads that stepwisefit is stepwise regression analysis $\endgroup$
    – ttnphns
    Commented Jul 14, 2012 at 14:30
  • $\begingroup$ Maybe my wording is wrong, I understand factor analysis as a multiple regression over different factors. $\endgroup$
    – SRKX
    Commented Jul 14, 2012 at 14:31
  • $\begingroup$ I can't know what you might intend. You can see definition of "factor analysis" by pointing on the tag (or read in Wikipedia). Does its meaning fit your case? $\endgroup$
    – ttnphns
    Commented Jul 14, 2012 at 14:35
  • $\begingroup$ Yes, it absolutely does. Basically, I have a lot of underlying factors and I would like to know which of them are really meaningful. I would then like to find the right weight to the remaining factors to find my optimal fit. $\endgroup$
    – SRKX
    Commented Jul 14, 2012 at 14:41
  • $\begingroup$ @SRKX, why don't you simply drop the correlated factors from further analysis? It is easy to do. Moreover, stepwisefit will do this for you. $\endgroup$
    – Paul
    Commented Jul 14, 2012 at 15:54

1 Answer 1

1
$\begingroup$

You should use the method "Elastic Net", instead of the Stepwise method.

You can put the highly correlated predictors in your multiple linear regression, however, you won't get accurate results from your stepwise analysis unless you regularize your regression.

The regularized linear regression method is "lasso" in Matlab. When you are using that, you should set the alpha to something between 0 to 1, in order to use the Elastic Net method, instead of the default Lasso method. That is because you have predictors which are correlated, and you would like your regression model to consider this fact.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.