Inputing textfile data as meaningful variables
1 view (last 30 days)
Show older comments
Catherine McAlister
on 26 Apr 2020
Edited: per isakson
on 26 Apr 2020
Hi!
I'm having a bit of trouble inputing a collection of large data as a textfile and turning that data into meaningful variables.
My code currently only returns the first value of that column of values that I am interested in, hoping for it to instead create a cell array of all values in that first column.
Probably an easy solution, still figuring out MATLAB, any help would be appreciated. Thank you:)
% Load Data
file = fopen('data.test.txt','r');
str = textscan(file,'%f%s%f%s%f%s%s%s%s%s%f%f%f%s');
fclose(file)
% Data Variables
Age = str{1};
1 Comment
Image Analyst
on 26 Apr 2020
You forgot to attach 'data.test.txt'. In the meantime, try importdata() or readmatrix().
Accepted Answer
per isakson
on 26 Apr 2020
Edited: per isakson
on 26 Apr 2020
Matlab provides several different functions to read text files. (I'm used to textscan.)
"cell array of all values in that first column" Your format string shows that the first column contains numerical data. I guess that your textscan statement fails because there is an error in your format string. (It's easy to get the number and mix of columns wrong.)
Here is a code that avoids the trouble of counting columns
%%
fid = fopen('data.test.txt','rt');
str = textscan( fid, '%f%*[^\n]' ); % Read the first column and skip to the end of line
[~] = fclose( fid );
0 Comments
More Answers (0)
See Also
Categories
Find more on Text Files 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!