Index Vector Operation in Matlab

If the matrix A and the vector b
A = 5×5
13 2 3 3 10
14 5 15 7 1
2 9 15 14 13
14 15 8 12 15
10 15 13 15 11
b=[1 2 3 4 5]
and
>> C=A(b)
ans =
13 14 2 14 10
How to get element C by index in vector A(b) ?

4 Commenti

What does it mean?
ans =
3 12 5 8 3
Is this expected ans?
It is unclear what you are trying to do, given that your code above does not produce the answer you post. E.g.,
>> A = [ 13 2 3 3 10
14 5 15 7 1
2 9 15 14 13
14 15 8 12 15
10 15 13 15 11];
>> b=[1 2 3 4 5];
>> C = A(b)
C =
13 14 2 14 10
Can you provide more explanation?
I corrected the mistake.
Please restate your question. What do you mean by "get element C by index in vector A(b)"? Are you trying to do something like A(b)(2) to get at the 2nd element of C directly? If so, you cannot use that syntax in MATLAB.

Accedi per commentare.

 Risposta accettata

Jon
Jon il 26 Ago 2019

0 voti

Actually A(b) with the example you have given will return [13 14 2 14 10]. That is the elements are taken from the first column of A. Note that using linear indexing (indexing a two dimension array with a vector of indices, rather the pairs of indices) will provide the elements columnwise.
I'm not clear whether this is what you are asking. What do you mean by get element C by index in vector A(b) ?

Più risposte (0)

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by