Matching elements in a matrix with elements in another matrix

12 vues (au cours des 30 derniers jours)
SChow
SChow le 5 Fév 2020
Commenté : SChow le 6 Fév 2020
I have a matrix,
A=[1 3 4
3 1 5
NaN 3 6]
and another index matrix
B=[1 333
2 356
3 112
4 789
5 762
6 221
7 876
8 922]
I want to match the elements in matrix A with the correesponding index (1st column) in matrix B and return
C=[333 112 789
112 333 762
NaN 112 221]
I tried using ismember, (by first making matrix A to a vector), however it did not work

Réponse acceptée

Stephen23
Stephen23 le 5 Fév 2020
>> [idx,idy] = ismember(A,B(:,1));
>> C = nan(size(A));
>> C(idx) = B(idy(idx),2)
C =
333 112 789
112 333 762
NaN 112 221

Plus de réponses (0)

Catégories

En savoir plus sur Logical 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