Saving a value from matrix B, indexed by matrix A
2 次查看(过去 30 天)
显示 更早的评论
Hello all, I have a pretty basic question which causes me problems. I have a 1x100 vector A. Each cell of this vector contains a different number, i.e. A(1,1) = 2010, A(1,2) = 3834, etc. Now, this values of a vector A are indeces, which index a column of vectors contained in all cells of a matrix B; matrix B is an 8x8 cell matrix, and each of its cells contain a 1x4000 vector of numbers. Could you tell me what is your idea of finding values indexed by the vector A in all of the cells of matrix B?
Update from below: all the numbers in 'indeces' vector are supposed to be found in each cell of the 8x8 matrix 'cell', i.e. I expect the output from each cell of the output matrix (the 'What you want' one) to be a vector of 1x132, providing the sample files I attached. Here it seems like I overwrite and save just the 132th value, since the output is just an 8x8 matrix of numbers, instead of 8x8 cell matrix of 1x132 vectors.
2 个评论
James Tursa
2018-6-8
Please provide a short example of inputs and desired output(s) so we are clear what you want.
采纳的回答
Majid Farzaneh
2018-6-8
编辑:Majid Farzaneh
2018-6-8
Hi, you can use a for loop for B like this:
for i=1:numel(B)
...
end
Then, determine the index by A, like this:
idx=A(1,1); % for example
Get B values like this:
What_you_want(i)=B{i}(idx)
1 个评论
Majid Farzaneh
2018-6-8
for i=1:numel(B)
idx=A(1,1); % for example
What_you_want(i)=B{i}(idx)
end
At the end you have 64 values in What_you_want matrix for 64 cells in B.
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!