Multiple Text files to Labeled matrix/array

2 visualizzazioni (ultimi 30 giorni)
Ronald
Ronald il 5 Ago 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!

Risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 5 Ago 2014
Modificato: Azzi Abdelmalek il 5 Ago 2014
for k=1:100
outputString = sprintf('SR%d.txt', k);
d=importdata(outputString)
num{k}=d.data
end
  2 Commenti
Ronald
Ronald il 5 Ago 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 il 5 Ago 2014
for k=1:100
outputString = sprintf('SR%d.txt', k);
d=importdata(outputString)
num{k}=d.data'
end
out=cell2mat(num)

Accedi per commentare.


Christopher Berry
Christopher Berry il 5 Ago 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.

Community Treasure Hunt

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

Start Hunting!

Translated by