Saving a table-type variable to MAT file column by column in For-loop
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Smithy
el 11 de Ag. de 2022
Comentada: Smithy
el 12 de Ag. de 2022
Hello everybody,
I have big size of a table-type variable.
I am trying to save a table-type variable to .mat file column by column as table type in in For-loop.
I tried below code but it is not table and VariableNames disappear.
Is there a way to save .mat file as table type?
var = [num2cell(rand(4,3)), {'Steve';'John';'Paul';'Evan'}];
A = splitvars(table(var));
A.Properties.VariableNames = ["Aa","Bb","Cc","Dd"];
for i = 1:width(A)
colData = A.(i); % this case colData is not table type and column name disappear.
save([pwd,'\AA_' num2str(i) '.mat'],'colData')
end
0 comentarios
Respuesta aceptada
Walter Roberson
el 11 de Ag. de 2022
outdir = pwd();
var = [num2cell(rand(4,3)), {'Steve';'John';'Paul';'Evan'}];
A = splitvars(table(var));
A.Properties.VariableNames = ["Aa","Bb","Cc","Dd"];
for i = 1:width(A)
clear S
thisvar = A.Properties.VariableNames{i};
S.(thisvar) = A(:,i);
save( fullfile(outdir, "AA_" + i + ".mat"), '-struct', 'S')
end
!ls
whos -file AA_1.mat
Más respuestas (0)
Ver también
Categorías
Más información sobre Get Started with MATLAB en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!