COMBINING MULTIPLE TABLES TOGETHER

20 visualizaciones (últimos 30 días)
RUSSELL KHAJURIA
RUSSELL KHAJURIA el 9 de Oct. de 2018
Editada: Stephen23 el 11 de Oct. de 2018
I am working with a .mat file that has 100 tables (with different names) attached to it. I want to combine all those tables into a new single table without using individual names. Please help
  4 comentarios
RUSSELL KHAJURIA
RUSSELL KHAJURIA el 11 de Oct. de 2018
yes widths are the same and I wont attach the .mat file. I have used the eval function to do the job but I want to do it without eval function??
KSSV
KSSV el 11 de Oct. de 2018
I wont attach the .mat file why you don't attach a file, when you are asking a question in the forum?

Iniciar sesión para comentar.

Respuestas (2)

KSSV
KSSV el 11 de Oct. de 2018
Type = {'Autostable' ; 'Auto' } ;
Status = { 'Success' ; 'Failure'} ;
Rank = [23 56 ]' ;
T1 = table(Type,Status,Rank) ;
Type = {'Manual' ; 'Manual' ; 'Manual' ; 'Reinitiate' } ;
Status = {'Failure' ; 'Disconnect' ;'Success' ; 'Success'} ;
Rank = [12 45 45 42]' ;
T2 = table(Type,Status,Rank) ;
T = [T1 ; T2]
% Use cat
T = cat(1,T1,T2)

Stephen23
Stephen23 el 11 de Oct. de 2018
Editada: Stephen23 el 11 de Oct. de 2018
"I have used the eval function to do the job but I want to do it without eval function??"
That is a good idea, because eval makes code slow, complex, and buggy. Read this to know why:
First import the .mat file into a structure:
S = load(...);
Then you have a choice: either loop over its fieldnames and use dynamic fiekdname to access each table:
N = fieldnames(S);
N = natsort(N); % download from FEX
C = cell(size(N));
for k = 1:numel(N)
C{k} = S.(N{k});
end
T = vertcat(C{:}); % or whatever way you want to join the tables.
or use struct2cell and a simple concatenation:
C = struct2cell(S);
T = vertcat(C{:});
If you want to use innerjoin (or similar) on multiple tables then you will need to use a loop.

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by