Get "@" back in a table header (R2017b) when saving

1 view (last 30 days)
JM
JM on 23 Feb 2021
Answered: JM on 26 Feb 2021
I have got a tabulated data-set which contains "@" in its coloum header (e.g name@domain). When loading this table in Matlab (R2017b) this header gets replaced by name_domain.
I need to do some post-processing on the data and the need the correct header back (i.e. with "@") in the final post processed data when saved as ascii file.
How to achive this in Matlab R2017b?

Answers (2)

Matt J
Matt J on 23 Feb 2021
Edited: Matt J on 23 Feb 2021
For example,
T=table(1,'VariableNames',"name_domain")
T = table
name_domain ___________ 1
T.Properties.VariableNames = replace(T.Properties.VariableNames,'_','@')
T = table
name@domain ___________ 1
  12 Comments
JM
JM on 25 Feb 2021
Thanks, but it appears writemode is not available in R2017b.
Walter Roberson
Walter Roberson on 25 Feb 2021
To be honest, the easiest way would be to upgrade MATLAB releases.
Second easiest way, if you are using MS Windows, would be to generate two seperate files, and then use
system(sprintf('copy "%s"+"%s" "%s"', first_tempfile, second_tempfile, desired_file))
The third easiest way would be to fopen() the file and fprintf() a line at a time, using appropriate formatting.

Sign in to comment.


JM
JM on 26 Feb 2021
Thanks for all the answers. Upgrading seems the best way out of this but that is not going to happen any time soon.

Categories

Find more on Tables in Help Center and File Exchange

Tags

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!