Need help changing this code
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Hi, I have... a = [ 2 5 1; 3 6 2; 3 4 1; 9 4 2; 8 3 1; 3 2 2; 9 5 2; 4 8 1]
Notice how the last column follows a pattern of 1, 2,1,2..and so on. The 7th row however has a 2 in the last column just like the 6th row before...thus does not follow the pattern.
I have a code right now that deletes the 7th row, but now I want to change this code to make it delete the 6th row rather than the 7th. Can someone help me change the code to delete the 7th row instead of the 6th.
[m,n] = size(a);
expected = 1; % initialize expected value in 1st row
x = false(m,1); % initialize the deletion flag array
for k=1:m
if( a(k,n) ~= expected )
x(k) = true; % if not as expected, mark for deletion
else
expected = 3 - expected; % if as expected, update expected
end
end
a(x,:) = []; % delete the unexpected pattern rows
0 comentarios
Respuestas (1)
Walter Roberson
el 15 de Jul. de 2015
The obvious change would be
x(k-1) = true;
but then you face the question of what you want to delete if the first entry, k = 1, was not as expected
0 comentarios
Ver también
Categorías
Más información sobre Matrix Indexing 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!