Effacer les filtres
Effacer les filtres

Create a new matrix

3 vues (au cours des 30 derniers jours)
Yamina chbak
Yamina chbak le 18 Avr 2022
Commenté : Yamina chbak le 12 Mai 2022
Let A a matrix and B a vector defined by :
A=[ 4 2
7 4
3 5
6 8
8 1];
B= [4 6 7 8];
I wish to know how to create a new matrix C which is a part of matrix A but necessary contain an element of the vector B, given by
C = [ 7 4
6 8];
If anyone could help , I'd greaty appreciate it.
  2 commentaires
Sam Chak
Sam Chak le 18 Avr 2022
Sounds like an IQ puzzle.
What is the governing rule for the contruction of Matrix ?
A brief glance at Matrix shows that:
C = [A(2,:); A(4,:)]
Walter Roberson
Walter Roberson le 18 Avr 2022
C = A([2 4],:)

Connectez-vous pour commenter.

Réponse acceptée

Bruno Luong
Bruno Luong le 18 Avr 2022
A=[ 4 2
7 4
3 5
6 8
8 1];
B= [4 6 7 8];
C = A(all(ismember(A,B),2),:)
C = 2×2
7 4 6 8
  4 commentaires
Bruno Luong
Bruno Luong le 12 Mai 2022
Modifié(e) : Bruno Luong le 12 Mai 2022
This code select the first two matched if there is more than 2 (like the last row of A):
A=[ 4 2 5
7 4 3
3 5 1
6 8 1];
B=[5 8 2 6 1];
At = A.';
tf = ismember(At,B);
tf = tf & cumsum(tf,1)<=2;
C = reshape(At(tf),2,[]).'
C = 3×2
2 5 5 1 6 8
Yamina chbak
Yamina chbak le 12 Mai 2022
Yes, thanks you @Bruno Luong I understand this code. Thanks you again

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by