Multiple datasets to single table

4 visualizaciones (últimos 30 días)
Joost de Witte
Joost de Witte el 4 de Dic. de 2019
Respondida: Jakob B. Nielsen el 4 de Dic. de 2019
Hello all,
I've got a large number of datasets.mat. I've writen a script that calculates averages of a single dataset which results in one single value for the loaded data set. The datasets are identical and when I change the loaded file name from data1 to data2 for example it still works as desired.
I now want to gather all these averages into one table, but have to clue on how to approach this problem (matlab novice). Any help will be appreciated, thanks!

Respuesta aceptada

Jakob B. Nielsen
Jakob B. Nielsen el 4 de Dic. de 2019
You can try using something like this.
[Names,Paths]=uigetfile('*.mat','MultiSelect','on');
entirefile =fullfile(Paths,Names); %entirefile is now a cell array containing the path of all your files
average=zeros(numel(entirefile),1); %initialise an array of 0's
for i=1:numel(entirefile) %automatically repeats the sequence a number of times equal to the number of files you picked
tempdata=load(entirefile{i}); %use curly brackets when indexing cells :)
average(i)=callyourfunction(tempdata);
end
Overview=table(Names',average); %Names is a row vector, so add the ' to turn it into a column.
%Now you should have a table showing you the data file name and its corresponding average value.

Más respuestas (0)

Categorías

Más información sobre Simulink en Help Center y File Exchange.

Productos


Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by