Hi all, I need to do some regression analysis involving the fama-french 3 factor model. More specifically, I have to classify some 3000 funds based on value and size dimensions. The problem is, this will involve regressing fund returns on 3 variables 3000 times. I was wondering whether this could be done in SPSS using syntax or Eviews. Any ideas ? And can someone clarify what’s the difference between multivariate and multiple regression ?
Multivariate and multiple regression usually mean the same thing. However, sometimes people use multivariate to refer to the dependent variable (something like vector autoregression). I’m pretty sure you can make SPSS script do this, but I don’t know the syntax for it myself, so you would need to spend some time with the manual. SAS and Matlab (especially SAS) are better suited for this.
Thnx, At least knowing that it CAN be done in SPSS sounds very nice. Unfortunately, I don’t have time to learn Matlab. Perhaps SAS but what about its user-friendliness ? SPSS’s tutorial is excellent for self-study.
In Stata you would just have to type: by fund: regress price factor1 factor2 factor3
Its similar to SPSS. But the inconvenience comes from the way CRSP provides fund returns. Fund Name Date Return Factor1 Factor2 Factor3 1 X 1 Y 1 Z 1 K 2 2 etc. 2 2 3 3 3 3 I need to match fund names by return and the regress them but because the list of fund names is just ONE large column, I can’t extract the dependent variables automatically if you know what I mean. I have to type the same command for each fund which would take me forever.
I don’t know what you mean. I don’t know how it works in SPSS but the “by statement” in the stata code would tell stata to automatically do the regression individually for each fund even though all of the funds data are in the same dataset.
if I understand the problem correctly, in SPSS, you can just split the file by Fund. then run your regression once and the output will be provided for each of the different types of funds.
My only concern about SPSS is how SPSS will output the results. Basically it sounds like there are 3000 funds and each fund has maybe 1000 or 3000 data points. So SPSS can output a file with 3000 separate regressions, but what you’re likely to need is an output array with the regression coefficients and whatever diagnostic statistics you want. What SPSS or Stata is likely to give you is 3000 pages of text, with a full text printout of regression results on each one. In Matlab you can create a data object to store your results and then write a routine that fills it. I’m not that familiar with SAS, but I’m pretty sure it can do this as well.
bchadwick, perhaps I can try to export the file to excel and then analyze the results. Bdw which is easier to learn - SAS or Stata as I am try one of them. jimjohn, I can split it but then it seems like I still have to manually specify the dependent variable.
Stata is easier and significantly cheaper, particularly if you can get an academic or student license.
How about R? fit
To avoid bchadwick’s concern about 3000 pages of output, in Stata you can use the outreg function which will generate an excel spreadsheet with a separate column for each regression.