Borrar filtros
Borrar filtros

How to quickly extract a unique list of rows from a cell array?

4 visualizaciones (últimos 30 días)
Iain
Iain el 7 de Jun. de 2013
So, I have an unacceptably large cell array, with far too many rows to reasonably display, and only 5 columns.
Each column contains a different format (some string, some numeric).
I know that many of the rows of the array are duplicated, so what I would like to do is to quickly and simply remove these duplicates.
Has anyone got a quick way of achieving this?
  1 comentario
Iain
Iain el 7 de Jun. de 2013
Editada: Iain el 7 de Jun. de 2013
Array = {45 654 9841 'ra' 'rb';
45 684 9841 'ra' 'rb';
...
45 654 9841 'ra' 'rb';
45 684 9842 'ra' 'rb';
1 651 91 'ra' 'ra';

Iniciar sesión para comentar.

Respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 7 de Jun. de 2013
[idx,idx]=unique(cell2mat([cellfun(@num2str,A(:,1:3),'un',0) A(:,4:5)]),'rows')
out=A(idx,:)
  1 comentario
Iain
Iain el 7 de Jun. de 2013
Doesn't work due to the fact my numbers vary in magnitude by more than 10 times.

Iniciar sesión para comentar.

Categorías

Más información sobre Multidimensional Arrays 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