String in matrix for loop

3 views (last 30 days)
Maurizio
Maurizio on 25 Oct 2011
I have created the below for loop. The txt files are all composed by 16 elements, the first 8 are string and the seconde 8 are number and are separated by comma. At the moment I created a matrix with only the last 8 value. Is it possible also to create a matrix (no structure, no array) with also the first 8 string?
fileList = dir( '*.txt' );
for i = 1 : numel(fileList)
nameFile{i} = fileList(i,1).name;
NAME = char(nameFile(i) );
fid = fopen( NAME );
val = textscan( fid, '%s', 'delimiter', ',' );
fclose( fid );
if val{1,1}{5,1} == 'LIMA' | val{1,1}{6,1} == 'VOCI'
% for jj = 1 : 7
% VAL (i,jj)= char(val{1,1}{jj,1});
% end
for j = 8 : size( val{1,1},1 )
A(i, j) = str2num( val{1,1}{j,1} );
end
end
end
  2 Comments
TAB
TAB on 25 Oct 2011
(no structure, no array).
What about cell array ?
Maurizio
Maurizio on 25 Oct 2011
Tabrez the values on the *.txt are for example:
A6,ANB,AUG23,204704,OMDC,VOCI,0404,0790,0468,05330,01420,14800,08550,0780
and I have n*file txt.
I need to create a for loop that each collect this 14 values and create a matrix with 14 columns and n rows.
Thanks a lot

Sign in to comment.

Answers (1)

Daniel Shub
Daniel Shub on 25 Oct 2011
It really depends on what data type you are willing to allow. You say no structure and no array. MATLAB only deals with arrays; scalars are arrays with a length of 1. It seems like you also do not want cell arrays, since your data from textscan is a cell array.
  6 Comments
Maurizio
Maurizio on 25 Oct 2011
What i'm trying to do is to collect n-time these 14 variable
A6,ANB,AUG23,204704,OMDC,VOCI,0404,0790,0468,05330,01420,14800,08550,0780
that are on txt file and create a matrix of n*14.
Maurizio
Maurizio on 25 Oct 2011
n-time because I have n txt file

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!