obtain data using columns data indices

3 visualizzazioni (ultimi 30 giorni)
i have data A=( 3,5,3,1,4 ) in a column and
B=[ 4 6 9 1 3
2 7 2 5 7
7 3 1 8 2
4 1 6 9 1
2 5 8 3 6]
and i want: as in A first element is 3 and for this i want to get first element of column 3 row 1 from B which is 9. The second element of A is 5 and for this i want to get the the 2nd element of column 5 and row 2 from B which is 7 ,and do the process for all other elements . how to do this? the requried elememts are bold and underlined
any help will be really appriciated.........thanks in advance
  2 Commenti
madhan ravi
madhan ravi il 13 Dic 2018
Dude just give the example of your desired output
Farman Shah
Farman Shah il 13 Dic 2018
Modificato: Farman Shah il 13 Dic 2018
[9,7,1,4,3] is the disired output. which is underlined also

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 13 Dic 2018
B(sub2ind( size(B), 1:length(A), A))
  3 Commenti
Walter Roberson
Walter Roberson il 13 Dic 2018
B(sub2ind( size(B), (1:length(A)).', A(:)))
The above will work regardless of whether A is a row or column vector. However, it will return a column of results either way. If you need a row of results, put .' at the end:
B(sub2ind( size(B), (1:length(A)).', A(:))).'
Farman Shah
Farman Shah il 13 Dic 2018
thank you very much sir.. you made my day easy.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Operators and Elementary Operations in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by