how to preserve original column headings (variable names) when using writetable
330 views (last 30 days)
Show older comments
When importing spreadsheets containing invalid variable names, Matlab changes them and stores the original column headings in the VariableDescriptions property of the table. How can I write my table to a file and use the original variable names on export? In other words, how can I export T so that output_table.xlsx is the same as input_table.xlsx?
Reprocessing the exported file as a string is not really an option, because my original file will have multiple sheets.
T = readtable('input_table.xlsx'); % Matlab changes "Column 1" to "Column1"
writetable(T,'output_table.xlsx');
Accepted Answer
Sindar
on 22 Apr 2020
As of 2019b, table variable names don't need to follow normal variable naming rules. This allows for a couple of fixes:
T = readtable('input_table.xlsx','PreserveVariableNames',true);
or
T.Properties.VariableNames={'Column 1';'Column 2'}
2 Comments
Alan Pawollek
on 15 Oct 2021
Edited: Alan Pawollek
on 15 Oct 2021
[name of File].Properties.VariableNames
and write it manually for each coloumn.
ps. I habe the latest version of Matlab R2021b
More Answers (0)
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!