Info

この質問は閉じられています。 編集または回答するには再度開いてください。

How can I get the input for several regressions?

1 回表示 (過去 30 日間)
Ana
Ana 2014 年 4 月 28 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
Hi, I need to do a regression for every 12 days and I need both the b and hint output of each regression. Until now i have: for i=1:624 [b,bint]=regress(returns(i:i+12,:),regressors(i:i+12,:)); end
but it only gives me the last regression output. Can somebody help me? Thanks :)

回答 (1 件)

Star Strider
Star Strider 2014 年 4 月 28 日
Store each as a cell array:
[b{i},bint{i}] = regress( ...
  2 件のコメント
Ana
Ana 2014 年 4 月 28 日
It still doesn't work. It says "Comma separated list expansion has cell syntax for an array that is not a cell" :(
Star Strider
Star Strider 2014 年 4 月 28 日
編集済み: Star Strider 2014 年 4 月 28 日
It worked for me when I tried it this morning, else I'd not have posted it.
This is the simulation I ran successfully then and again just now ( R2014a, Win 8 64 ). Run it and see if it works on your computer:
returns = rand(6);
regressors = randi(10,6,6);
for k1 = 1:size(returns,1)/2
x = regressors(k1:k1+1,:)
y = returns(k1,:)
[b{k1},bint{k1}] = regress(returns(k1:k1+1,1),regressors(k1:k1+1,:))
end
b{1}
bint{1}
It gives me all three values of both variables (one for each run). What is you loop counter ‘i’ when it throws that error?
Post the section of your code in your loop that throws the error.

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by