Bonjour,
y-a-t il une fonction matlab qui permet de supprimer les ligne qui se répète dans une matrice?
exemple:
je ne devrais garder que:35 65
35 71
41 71
35 65
35 71
65 71
41 48
41 80
48 80
41 71
41 80
merci d'avance : fleur:65 71
41 48
48 80
Bonjour,
y-a-t il une fonction matlab qui permet de supprimer les ligne qui se répète dans une matrice?
exemple:
je ne devrais garder que:35 65
35 71
41 71
35 65
35 71
65 71
41 48
41 80
48 80
41 71
41 80
merci d'avance : fleur:65 71
41 48
48 80
La solution que j'utiliserais est sensiblement la même qu'ici : Trouver la valeur apparaissant le plus dans une matrice
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 M = [35 65 35 71 41 71 35 65 35 71 65 71 41 48 41 80 48 80 41 71 41 80]; [uM,a,b] = unique(M,'rows'); n = histc(b,1:max(b)); idx = n==1; uM(idx,:)
Merci beaucoup pour votre précieuse et continuelle aide![]()
Bonjour,
Mon problème est pratiquement identique au précédent. Cependant dans mon cas en plus de garder les lignes non doublées, je dois également garder une ligne doublé et spécifiquement les lignes plus basses dans la matrice
ex: Pour
je dois conserver les lignes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 M = [35 65 L1 35 71 L2 41 71 L3 35 65 L4 35 71 65 71 41 48 41 80 48 80 41 71 41 80]; L11
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 35 65 L4 35 71 L5 41 71 L10 65 71 41 48 41 80 L11 48 80

Bonjour,
si j'ai bien compris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [uM,a,b] = unique(M,'rows'); M(sort(a),:)
Partager