2016-09-18 10 views
0

おはよう、すべてのループ結果を保存する

私の質問は非常にシンプルでなければならないと思っています。ループがあり、結果を「保存」したい。問題は私が最後の列だけを保存することができますコードではなく、すべてです。コードは次のとおりです。

b = xlsread('Data.xls', 'Sheet1'); %here I'm reading the excel data 
d= size(b); % the size of the input table is 8 x 16 columns. 
cols= d(:,2); 
Results=[] 

for a=b(:,2:cols) 

    n= 2; 
    m2 = ar(a,n); 
    K=6; 
    hf2=forecast(m2,a,K); 

for a=b(:,2:cols) % here I try to save the results but it only save the 'last column', not all the columns. 
    Results=[forecast(m2,a,K)] 
    end 
end 

何が問題なのですか?

ありがとうございます! :)

答えて

0

問題は、出力を保存している2番目のループです。 Resultsは、各繰り返しで新しい出力に置き換えられます。ループの前に最終的なサイズにResultsをあらかじめ割り当てておき、ループの列ごとにそれを記入する必要があります。 2つのループも意味をなさない。ここで私はいくつかの余分な変数を取り除き、あなたのコードをきちんとしたものにしようとしました:

b = xlsread('Data.xls', 'Sheet1'); 
[~, cols] = size(b); 
n = 2; 
K = 6; 
Results = zeros(K, cols - 1); 
for ii = 2:cols 
    a = b(:, ii); 
    Results(: , ii) = forecast(ar(a, n), a, K); 
end 
関連する問題