Effacer les filtres
Effacer les filtres

mapping between two different matrices

8 vues (au cours des 30 derniers jours)
Supriya Gain
Supriya Gain le 24 Avr 2023
I have a matrix a=[1 2;3 4;5 6] and i have another matrix b=[1 2 3;1 2 3;1 2 3;1 2 3;1 2 3]. Now I want to map between two matrices in such a way that the first row of matrix 'a' is indicating the first column of matrix 'b'. Like, if I type [1 2], it should show [1;1;1;1;1]. If I type [3 4] it should show [2;2;2;2;2].
How to do that?

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 24 Avr 2023
a=[1 2;3 4;5 6];
b=[1 2 3;1 2 3;1 2 3;1 2 3;1 2 3];
c=[1 2];
[~,index]=ismember(c,a,'rows');
b(:,index)
ans = 5×1
1 1 1 1 1

Plus de réponses (2)

Kevin Holly
Kevin Holly le 24 Avr 2023
a=[1 2;3 4;5 6]
a = 3×2
1 2 3 4 5 6
b=[1 2 3;1 2 3;1 2 3;1 2 3;1 2 3]
b = 5×3
1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
index = 3;
output = yourmap(a,b,index)
output = 5×1
2 2 2 2 2
index = 6;
output = yourmap(a,b,index)
output = 5×1
3 3 3 3 3
index = [1 2];
output = yourmap(a,b,index)
output = 5×2
1 1 1 1 1 1 1 1 1 1
function output = yourmap(a,b,index)
[row,column] = find(a==index);
output = b(:,row);
end

Walter Roberson
Walter Roberson le 24 Avr 2023

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