how do i save looped output into 1 variable matrix
4 ビュー (過去 30 日間)
古いコメントを表示
c=19;
>> D=[];
>> for k=1:c;
Z=[X(:,1),Y(:,1)];
p=anova1(Z)
D=save(p)
X(:,1)=[];Y(:,1)=[];
end
4 件のコメント
採用された回答
James Kristoff
2013 年 5 月 13 日
% X and Y are 3x19 matricies
%
% This syntax makes sure that if you end up having more (or less) columns
% in the future, you don't need to change the code
numColumns = size(X, 2);
% Pre-allocate for speed (create a 1 x numColumns vector)
p = zeros(1, numColumns);
% I used length(p) here to signal the intent that the loop is meant for
% modifying the vector p
for k = 1:length(p);
% using the loop variable *k* means that MATLAB will use a different
% column from X and Y to create Z for each loop
Z=[X(:,k),Y(:,k)];
% this will store the resulting value in the k-th position in the vector
% *p*
p(k)=anova1(Z);
end
その他の回答 (1 件)
bym
2013 年 5 月 9 日
c=19;
% D=[];
p = zeros(c,1); % preallocate
for k=1:c;
Z=[X(:,1),Y(:,1)];
p(k)=anova1(Z);
%D=save(p) unecessary
%X(:,1)=[];Y(:,1)=[]; don't change X or Y!
end
参考
カテゴリ
Help Center および File Exchange で Performance and Memory についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!