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!