Multiple Text files to Labeled matrix/array

2 visualizaciones (últimos 30 días)
Ronald
Ronald el 5 de Ag. de 2014
Comentada: Azzi Abdelmalek el 5 de Ag. de 2014
Hi all,
I have multiple .txt files that I want to put into an array. The data is scrambled in the file with other objects, but the general format looks like this:
RA 5
Rz 50
Rd 45
in the next file, the format is similar but still mixed in with other objects
RA 7
Rz 15
Rd 35
I want it to output a matrix/array that is
RA Rz Rd
5 50 45
7 15 35
Here is what i have so far
For i=1:100
outputString = sprintf('SR%d', i);%file names should be SRX where X is integer
fileID=fopen('outputString');
result = textscan(fileID,'%s %d ');
J=result{1}
X=char(J)
mat_cell(:,2)=J
K=result{2}
fclose(fileID);
s = cell2struct(result,result{1},3)
I am having problems both getting the Cell Arrays into column labels, but also inputing multiple files.
Thank you!

Respuestas (2)

Azzi Abdelmalek
Azzi Abdelmalek el 5 de Ag. de 2014
Editada: Azzi Abdelmalek el 5 de Ag. de 2014
for k=1:100
outputString = sprintf('SR%d.txt', k);
d=importdata(outputString)
num{k}=d.data
end
  2 comentarios
Ronald
Ronald el 5 de Ag. de 2014
Thank you for the help so far, those two functions were very useful. How do I now convert the cell arrays to column headers? this was one of my main issues. I have tried Char, Cell2struct and many other Cell2 commands.
Azzi Abdelmalek
Azzi Abdelmalek el 5 de Ag. de 2014
for k=1:100
outputString = sprintf('SR%d.txt', k);
d=importdata(outputString)
num{k}=d.data'
end
out=cell2mat(num)

Iniciar sesión para comentar.


Christopher Berry
Christopher Berry el 5 de Ag. de 2014
It sounds like you really should be using a table data type. Take a look at some of the examples on the document page here:
Its probably much better suited to what you are trying to do.

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by