Converting txt file into title and array?
Show older comments
I am trying to load a txt file that looks like this:
Time (s)
0
1.5
1.6
2
2.5
3.5
4
and I want to save the first line as a string to be used for the xlabel on a plot, and the n lines of numbers afterwards I would like to save as an array.
I tried to use something like this and it did not work:
xL = fscanf(fid,'%s');
fgetl(fid); %first line of txt file is the data label I am going to use for the plot xlabel
for n = 1:dataLength % dataLength = 7 here
data(n) = fscanf(fid,'%f');
fgetl(fid);
end
The problem was the xL variable was then defined as 'Time (s)01.51.622.53.54' . It basically did not just grab one line for some reason.
Accepted Answer
More Answers (1)
Ameer Hamza
on 12 May 2020
On recent MATLAB releases, you can also try readtable
t = readtable('test.txt', 'PreserveVariableNames', true);
Then access data and label using this syntax
data = t{:,1}
label = t.Properties.VariableNames{1}
1 Comment
Darren Miller
on 13 May 2020
Categories
Find more on Text Data Preparation 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!