Import a .txt file with numbers and words

3 visualizaciones (últimos 30 días)
Dario
Dario el 14 de Dic. de 2017
Comentada: Dario el 15 de Dic. de 2017
I need to import a .txt file that with numbers and words. In particular I need the first two numbers next to every "POINT" and the first number after "PATH", how can I do this?
I tried to import the .txt file using "Import Data" but this operation is too slow.
Thank you.
  3 comentarios
KL
KL el 14 de Dic. de 2017
Attach a dummy data file using the paperclip icon. That makes helping you easier.
Stephen23
Stephen23 el 14 de Dic. de 2017
@Dario Anghileri: we cannot load a screenshot, or import it in any useful way. Even if someone patiently copied all of that data then it is unlikely that they would get the correct whitespace characters.
If you want help then please upload a real data file by clicking the paperclip button.

Iniciar sesión para comentar.

Respuesta aceptada

YT
YT el 14 de Dic. de 2017
Editada: YT el 14 de Dic. de 2017
Here is my updated answer using delay.txt
clear all;
fid = fopen('delay.txt','r');
data = textscan(fid, '%s', 'Delimiter', '\n'); %read all data as string
data = data{1};
for i = 1:size(data,1)
nData{i,:} = strsplit(data{i},' '); %split data whitespace
if (mod(i,2)==1) %checks if uneven/POINT or even/PATH
nnData{i,1} = str2num(cell2mat(nData{i}(2))); %get POINT 1st number
nnData{i,2} = str2num(cell2mat(nData{i}(3))); %get POINT 2nd number
else
nnData{i,3} = str2num(cell2mat(nData{i}(2))); %get PATH 1st number
end
end
nnData = cell2mat(nnData); %make double matrix / removes empty rows
fclose(fid);
  4 comentarios
YT
YT el 15 de Dic. de 2017
Okay so I tried it again, now without looping and with the code you provided in your comment
tic
fid = fopen('delay_ant.txt', 'r');
C = textscan(fid, '%s%f%f%f');
fclose(fid);
C2 = C{2}; C2(isnan(C2)) = []; %removing NaN
C2p2 = C2(2:2:end); %saving even rows
C2(2:2:end) = []; %remove even row
C3 = C{3}; C3(isnan(C3)) = []; %removing NaN
C3(2:2:end) = []; %remove even row
finalMatrix = [C2(:,1) C3 C2p2]; %[point1, point2, path1]
toc %clocked 0.22s
Dario
Dario el 15 de Dic. de 2017
Thank you so much!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Large Files and Big Data en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by