append rows to same .mat file (without replacing)

What is the syntax for appending values to a existing .mat file? When I use -append, I end up replacing the values!
Example: %% code updated %%
for col = 1:10
out = zeros(1,1000000); %reset out to zero vector
x=randn(1,100000);
out(col,:)=x.^2;
if col == 1
filename='z.mat';
save(filename,'out','-v7.3'); % Write to MAT file
else
save(filename,'out','-v7.3','-append');
end
end
After running the above code, I have a .mat file out(10x100000) but it contains only the saved values of last column (rest zeros). That is, each time I zero the out variable, the same is written to file also. I want to save all the values without holding them in variable out (due to memory constrains) . How can I do this?
What am I missing? please locate in my code.

 채택된 답변

Geoff
Geoff 2012년 3월 22일

1 개 추천

From the documentation on save:
'-append': Add data to an existing file.
Does your file exist?
if col == 1
save(filename,'out','-v7.3');
else
save(filename,'out','-v7.3','-append');
end

댓글 수: 2

zozo
zozo 2012년 3월 22일
thank you @Geoff
zozo
zozo 2012년 3월 22일
@geoff: There is still a problem. (please have a look at the updated question above)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 File Operations에 대해 자세히 알아보기

태그

질문:

2012년 3월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by