For loop with a 10000x6
Mostrar comentarios más antiguos
I have a 10000x6 matrix and i need to starters make a for loop which goes through the first column (it has values 1 and 0 in it) and deletes the rows with '0'. I've been battling with this as I just can't get it to work. If you could help with the whole loop.
1 comentario
Matt J
el 3 de En. de 2018
When you say a "table", do you mean an actual table data type, or do you just mean a 10000x6 matrix, A?
Respuestas (2)
Andrei Bobrov
el 3 de En. de 2018
Editada: Andrei Bobrov
el 3 de En. de 2018
Let T - your table:
T_out = T(T{:,1} ~= 0,:);
3 comentarios
Matt J
el 3 de En. de 2018
It is usually more efficient to keep the wanted data.
Is it?
@Matt J: It was something that I remember from doing some tests a few years ago, so quite likely depends on the number of elements and probably the MATLAB version. Some test results just now (test script is attached):
Elapsed time is 4.978532 seconds. % removing elements
Elapsed time is 1.840707 seconds. % keeping elements
A(A(:,1)==0,:)=[] ;
Categorías
Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!