import same variable without overwrite
Mostra commenti meno recenti
I try to import one single point from 20 different mat file and save those point into a mat file without overwrite it. However my code keep overwritting it and only display the last value. Here is my code
for k = 1:20
myfilename = sprintf('Image%d.mat', k);
a = load(myfilename);
newimg = (a.img -273);
% The point of plants
i = 100;
j = 84;
% Take the average of itself and all four of its neighboring
% values average each point in array
newimg(i,j) = 0.2*(newimg(i+1,j) + newimg(i-1,j) + newimg(i,j+1) + newimg(i,j-1) + newimg(i,j))
val = newimg(i,j)
newa = length(k);
save('newa.mat','-append','val');
end
1 Commento
Stephen23
il 1 Mag 2016
Rather than save your variable to the .mat-file on each iteration, simply construct an array with those values, and then save the array once after the loop, something like this:
N = 20;
mat = NaN(1,N); % preallocate
for k = 1:N;
...
mat(k) = val;
end
save(..., 'mat')
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Logical in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!