Borrar filtros
Borrar filtros

remove rows under certain condition

1 visualización (últimos 30 días)
booterr
booterr el 14 de Abr. de 2016
Editada: booterr el 14 de Abr. de 2016
Can you help?
Can you help?
On below matrix, for same X and Y, pick smallest Z, then put into a new matrix.
X Y Z 60,-40,1.1 55,-40,3.1 55,-45,4.5 60,-45,5.3 60,-40,7 55,-40,8.4 55,-45,9.8 60,-40,11.2 60,-45,12.6 55,-40,14 55,-45,15.4 60,-45,16.8 60,-40,18.2 60,-45,19.6 55,-40,21 60,-40,22.4 55,-45,23.8 60,-45,25.2 55,-40,26.6 55,-45,28

Respuesta aceptada

Jos (10584)
Jos (10584) el 14 de Abr. de 2016
Assuming your X, Y, and Z variables are stored in three vectors of equal length
[UniqueXY, ~, k] = unique([X(:) Y(:)],'rows') ;
MinZ = accumarray(k, Z(:), [], @min)
  1 comentario
booterr
booterr el 14 de Abr. de 2016
Editada: booterr el 14 de Abr. de 2016
Can you put the same X and Y with corresponding min Z into new matrix by removing the rows?
and also give the row number for which row is kept.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by