Import data from txt file in to a 2D array
22 views (last 30 days)
Show older comments
Cosimo Mercuro
on 29 Jan 2021
Commented: Cosimo Mercuro
on 31 Jan 2021
Hi.
I've this txt file:

I'd like that all number (32) that are between the square barckets will be the first rows of a 2D array (matrix) 24x32 .
Anything like this:

Any idea?
Thanks in advance
0 Comments
Accepted Answer
Scott Ronquist
on 29 Jan 2021
Hello Cosimo,
I understand you are trying to import the data stored in "acquisizione2-new.txt" into the MATLAB Workspace. This is possible with the Name-Value Pair Arguments available for the readtable function. After importing the data, there is one extra step that is necessary to remove NaN columns in the table output from readtable.
Please try the code given below, hope this helps!
data = readtable("acquisizione2-new.txt",'ReadVariableNames',false,...
'Delimiter',[" ","]","["], 'LineEnding', "]\n",'TrimNonNumeric',true);
% find NaN columns
nanIdx = arrayfun(@(x) all(isnan(data{:,x})), 1:width(data));
% remove NaN columns
data(:,nanIdx) = [];
% convert to numeric array (optional)
dataMatrix = data{:,:};
3 Comments
More Answers (0)
See Also
Categories
Find more on Tables 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!