obtain data using columns data indices

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 个评论

Dude just give the example of your desired output
[9,7,1,4,3] is the disired output. which is underlined also

请先登录,再进行评论。

 采纳的回答

B(sub2ind( size(B), 1:length(A), A))

3 个评论

Error using sub2ind (line 47)
The subscript vectors must all be of the same size.
Error in takeprobe (line 6)
res= B(sub2ind( size(B), 1:length(A), A));
return this error. I have my A data in one Coulmn and B data in 5 Columns
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(:))).'
thank you very much sir.. you made my day easy.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Operators and Elementary Operations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by