how to select values of nx3 matrix where its index is equal to a value in other matrix

1 次查看(过去 30 天)
Hi, I have two arrays the first has nx3 dimension, and the second is mx1 dimension. i need to select the first array fileds where the index of it is equal to second array value. this is what is tried so far:
[ fid, fdim]=size(f);
[ fidnew, fdimnew]=size(fnew);
for j=1:1:fid
if fid(j)==fnew(j)
FF=f;
end
end
then i have an error :
Index exceeds matrix dimensions.
Error in eee (line 26)
if fid(j)==fnew(j)
how i can solve this?

回答(2 个)

Preethi
Preethi 2018-10-4
hi,
try this
i=1
for j=1:1:fid
if j==fnew(j)
FF(i)=f(j)
i=i+1
end
end
since fid is a scalar fid(j) is giving error..i tired with 4x3 and 5x1 matrices, it worked

Stephen23
Stephen23 2018-10-4
编辑:Stephen23 2018-10-4
"how to select values of nx3 matrix where its index is equal to a value in other matrix"
As far as I can tell, you can do that with basic indexing:
mat = f(fnew,:)

类别

Help CenterFile 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