How to read and take a part of data of a text file in MATLAB
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Dear everyone,
Please help me to solve this problem. I need to make a code that can read data from a text file. The format of the file is as follows:
0.1 ABC63-820
0.5 ABC63-818
1.0 ABC63-813
I want to take out two variables like this:
X=[0.1 0.5 1.0];
Y=[20 18 13]
Can anyone help me to write a code to take out these data?
Thank you so much!
0 Commenti
Risposta accettata
Michael Haderlein
il 20 Ago 2014
Dear Phan,
textscan can do the job:
>> fid=fopen(filename);
>> data=textscan(fid,'%f ABC63-8%d');
>> fclose(fid);
>> x=data{1};y=data{2};
Best regards,
Michael
3 Commenti
Michael Haderlein
il 20 Ago 2014
It would have been easier if you'd said that right from the beginning.
So now, we first read the second part as string and then split it. There might be different ways to split, but this one will work:
fid=fopen('test1.txt');
data=textscan(fid,'%f %s');
fclose(fid);
x=data{1};
[Z,y]=cellfun(@(x) deal(x(1:end-2),str2num(x(end-1:end))),data{2},'uniform',false);
Y=cell2mat(y);
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Data Import and Export in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!