Borrar filtros
Borrar filtros

Hi. I have a two-dimensional array Z of size 10x15, and two vectors, A = [1 2 4] and B = [3 2 1]. Using A and B, I want to access the following elements in Z: Z(1,3), Z(2,2), Z(4,1) only

3 visualizaciones (últimos 30 días)
Hi. I have a two-dimensional array Z of size 10x15, and two vectors, A = [1 2 4] and B = [3 2 1]. Using A and B, I want to access the following elements in Z: Z(1,3), Z(2,2), Z(4,1) only. I tried using Z(A,B) but this will give me all combinations of elements (i.e. Z(1,3), Z(1,2), Z(1,1), Z(2,3), ...). Any idea how to do this.

Respuesta aceptada

Stefano Francavilla
Stefano Francavilla el 21 de Nov. de 2017
Editada: Stefano Francavilla el 21 de Nov. de 2017
I think you get a submatrix where the elements you are looking for are in the main diagonal: use diag(Z(A,B))

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 21 de Nov. de 2017
out = Z(sub2ind(size(Z),A,B))

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