Borrar filtros
Borrar filtros

How do I select some data from a matrix?

1 visualización (últimos 30 días)
Rita
Rita el 28 de Mzo. de 2016
Comentada: Rita el 31 de Mzo. de 2016
I have for example this matrix
A=[2 0.9;
2 0.8;
2 1.0;
2 0.8;
3 0.3;
3 0.7;
3 0.8;
3 0.7]
I want to have just the first two rows of A in each repetition. The "repetition" is in column 1 of A. Here, the repetition is 2 and 3. So B equals:
B=[2 0.9;
2 0.8;
3 0.3;
3 0.7]
Thanks for help.
  2 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 28 de Mzo. de 2016
this is not clear, what kind of repetition? only in in first column?
Rita
Rita el 29 de Mzo. de 2016
Editada: Image Analyst el 29 de Mzo. de 2016
Sorry about that.
I mean column 1 = [2 2 2 3 3 3 3] are repetitions. In my real matrix I have 500 times of data from 2 to 20 and I want to create an matrix with the first 100 times of 2 ,3,4,...20 for the first column and the corresponding values for each row.
I am looking for a function which can make B like this:
B=[A(1:2,:);A(5:7,:)]
I need to extend this for my real data.
Thanks

Iniciar sesión para comentar.

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 28 de Mzo. de 2016
[~,ii]=unique(A(:,1),'stable');
jj=sort([ii,ii+1]);
out=A(jj,:)

Más respuestas (0)

Categorías

Más información sobre Tables en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by