For loop overriding pervious data
1 回表示 (過去 30 日間)
古いコメントを表示
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
0 件のコメント
採用された回答
Ankit
2022 年 1 月 19 日
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)
その他の回答 (2 件)
KSSV
2022 年 1 月 18 日
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
2022 年 1 月 18 日
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)
参考
カテゴリ
Help Center および File Exchange で Spreadsheets についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!