Que voulez-vous dire quand vous dites "les omettent"?
Si vous souhaitez supprimer des zéros d'un vecteur, vous pouvez le faire:
octave:1> x=[1,2,0,3,4,0,5];
octave:2> x(find(x==0))=[]
x =
1 2 3 4 5
La logique est: x == 0 testera chaque élément de x (dans ce cas, le test est si elle est égale à zéro) et retourne un vecteur de 0 et de 1 (0 si le test est faux pour cet élément et 1 autre)
Alors:
octave:1> x=[1,2,0,3,4,0,5];
octave:2> x==0
ans =
0 0 1 0 0 1 0
la fonction find() retourne la valeur d'index d'un non -zero élément de c'est l'argument, d'où:
octave:3> find(x==0)
ans =
3 6
Et puis vous êtes juste indexation et le retrait quand vous faites quelque chose comme:
octave:5> x([3, 6]) = []
x =
1 2 3 4 5
Mais au contraire, vous le faites à la sortie de la fonction find() (qui est le vecteur [3,6] dans ce cas)
Vous pouvez faire la même chose pour les matrices:
octave:7> A = [1,2,0;4,5,0]
A =
1 2 0
4 5 0
octave:8> A(find(A==0))=[]
A =
1
4
2
5
Alors u La fonction reshape() permet de la transformer en matrice.