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

2 vues (au cours des 30 derniers jours)
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?

Réponses (2)

Preethi
Preethi le 4 Oct 2018
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 le 4 Oct 2018
Modifié(e) : Stephen23 le 4 Oct 2018
"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,:)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by