How can I effeciently store about 200 months of multivariate regression data?
Afficher commentaires plus anciens
So I am running a regression of monthly returns for about 30000 stocks (each regression is run separately for stocks grouped by country) over anout 9 different factors. I am using this for loop to loop through every file, because each month's data is stored in a differentfile. I am trying to use a structure with fields to represent all of the outputs of my multivariate regression function, but when the regression is complete, every part of the 1x196 structure labeled 'regression_structure' is exactly the same! It just copied over the first month's rgeression 196 times. Where did I go wrong!?
for i=1:num_months
% need to pass file names for monthly data files
file1 = MRET_files(i).name;
file2 = RSK_files(i).name;
[industry_rep_cell, country_rep_array,u_country_codes, u_industries, beta, mv] = Factor_Returns_Function(file1, file2);
regression_structure(i).rep_industries = industry_rep_cell;
regression_structure(i).rep_countries = country_rep_array;
regression_structure(i).all_industries = u_industries;
regression_structure(i).all_countries = u_country_codes;
regression_structure(i).beta_simple = beta;
regression_structure(i).beta_multi = mv.beta1;
end
Réponses (1)
the cyclist
le 2 Juil 2013
Modifié(e) : the cyclist
le 2 Juil 2013
This simple code gives different values for each element of the structure:
for i=1:196
[B,bint] = regress(rand(3,1),rand(3,1));
regression_structure(i).B = B;
regression_structure(i).bint = bint;
end
This test suggests to me that the problem is either
- Your structures MRET_files(i).name and RSK_files(i).name are not actually different for different values of i, or
- Your function Factor_Returns_Function doesn't actually process the inputs the way you think
I can't test those hypotheses.
4 commentaires
Andrew Kreitzman
le 2 Juil 2013
the cyclist
le 2 Juil 2013
Do you know how to use debug mode? You can step through your code line-by-line (probably just for i=1 and i=2 in your case) to see why there are no differences in the result, even when then inputs are different.
Andrew Kreitzman
le 2 Juil 2013
the cyclist
le 3 Juil 2013
This may help you understand the debugging tools:
Catégories
En savoir plus sur Linear Regression dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!