Deleting rows in a matrix with condition on its column value
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
itzhak mal
am 26 Sep. 2018
Kommentiert: itzhak mal
am 26 Sep. 2018
Hi there,
I have a text file with about 14 millions rows and 11 columns. On the 11th column, there are values that are really small.. and I want to get rid of the rows that their 11th column has a value that is smaller than 10^-(12).
I loaded the file into matlab and now it's stored in a variable as a matrix with 14 million rows and 11 columns.. and I wrote this code but it is so painfully slow that it takes it about 1 second per row.. so that's 150 days for the whole matrix.
that's my slow code:
for i = 1 : 13847014
if New_LongDataUn(i,11) < 10^-(12)
New_LongDataUn(i,:) = [];
end
end
Thanks for all the kind help you guys!
0 Kommentare
Akzeptierte Antwort
James Tursa
am 26 Sep. 2018
Bearbeitet: James Tursa
am 26 Sep. 2018
New_LongDataUn(New_LongDataUn(:,11) < 1e-12,:) = [];
3 Kommentare
James Tursa
am 26 Sep. 2018
If you mean into a mat file, then simply
save your_matfile_name New_LongDataUn
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!