Borrar filtros
Borrar filtros

To find values by using position vector

3 visualizaciones (últimos 30 días)
Xia
Xia el 18 de Mzo. de 2015
Comentada: Xia el 18 de Mzo. de 2015
Suppose matrix A=[1 3 5 7 9]. The position vector is known, which is, say, B=[ 3 4 ]. So the intended answer should be [ 5 7 ] which are elements at the 3rd and 4th places. Is there a function to achieve this? In fact the matrix A is high dimensional and there are many position vectors, and for loops seem not the most effective way...
Thanks in advance.

Respuesta aceptada

the cyclist
the cyclist el 18 de Mzo. de 2015
answer = A(B)
  1 comentario
Xia
Xia el 18 de Mzo. de 2015
Thank you so much. I must be too stupid to ignore the basic indexing. Thanks for your help!

Iniciar sesión para comentar.

Más respuestas (1)

Guillaume
Guillaume el 18 de Mzo. de 2015
It's very basic matrix indexing:
A=[1 3 5 7 9];
B=[ 3 4 ];
C = A(B)
For N-d matrices, you may have to use sub2ind to go from coordinates to linear indices.
  1 comentario
Xia
Xia el 18 de Mzo. de 2015
Thank you Guillaume. You are right it's really basic and I learned from you. Again thanks for your time my friend!

Iniciar sesión para comentar.

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!

Translated by