For loop overriding pervious data

1 view (last 30 days)
Hello I am loading all of my file but for loop is overriding the previous data...mean like for each file the data should be stored in excel file how should i implement it .....Like I want is file 1 data should be stored than file 2 and next file 3 in excel .......The below code i m using .....
clear all
close all
clc
filenames={'file1.mat,file2.mat,file3.mat'}
for i = 1:nume1(filenames)
load(filenames{i})
THC1= THC_sim_cum
end
xlswrite('e.xlsx',[THC1])
or any other alternative of loading the matlab data for all three files to excel is also fine...the no of files can increase it can be 20 also .....Thank u in advance

Accepted Answer

Ankit
Ankit on 19 Jan 2022
I tweaked a bit @KSSV answer. Second loop I added in case you have different variable size in *.mat file. I hope this solution will work for you. It is good when you tell more about *.mat files and frame your question properly. It will avoid lot of effort. All the best.
filenames={'file1.mat','file2.mat','file3.mat'};
n = numel(filenames) ;
A = zeros([],n) ;
for i = 1:numel(filenames)
load(filenames{i})
THC1= THC_sim_cum;
for j = 1:length(THC1)
A(j,i) = THC1(j);
end
end
xlswrite('e.xlsx',A)

More Answers (2)

KSSV
KSSV on 18 Jan 2022
filenames={'file1.mat,file2.mat,file3.mat'}
for i = 1:nume1(filenames)
load(filenames{i})
THC1= THC_sim_cum ;
[filepath,name,ext] = fileparts(filenames{i}) ;
fname = [name,'.xlsx'] ;
xlswrite(fname,THC1)
end

KSSV
KSSV on 18 Jan 2022
If all the files have same dimensions, better save them into a matrix and then write into a file.
filenames={'file1.mat,file2.mat,file3.mat'}
n = numel(filenames) ;
A = zeros([],n) ;
for i = 1:nume1(filenames)
load(filenames{i})
THC1= THC_sim_cum ;
A(:,i) = THC1 ;
end
xlswrite('e.xlsx',A)
  1 Comment
Prasad Joshi
Prasad Joshi on 18 Jan 2022
Bro thank you for code but the code generated 6 different excel files ....Instead can we but all the values in same excel files any input for that ...thank you btw bro I have attached code you suggested for your information BKv400_1_THC_sim_mass_cum has matrix cells of 70381*1

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!