J'ai une matrice MXN et je voudrais convertir en un vecteur mnx1 avec tous les éléments de la ligne de la matrice comme les éléments du vecteur.
J'ai essayé d'utiliser Voici le petit extrait de code et le résultat attendu. P> Remodape code> mais je n'a pas réussi. P>
S_prime= [ 0 1 1 0 1 1 1 1]
4 Réponses :
reshape(S',1,[])
Ce n'est pas ce que je cherche, c'est semblable à écrire S (:) Je cherche une concaténation sage en ligne dans un vecteur.
Ok, cela me fait me demander encore plus sur le problème initial, mais simplement transposer s et utilisez ensuite les méthodes. Je vais éditer ma réponse.
Je pense que le problème était que juste pour remodeler S comme vous l'avez donné des retours [0 1 1 1 1 0 1 1], qui est différent de la sélection de lignes de ligne plutôt que de la sélection de la colonne.
Remodape prend les éléments de la colonne d'éléments, alors transpose S avant de remodeler.
Merci Adrian, merci beaucoup pour votre temps et votre aide. Je me demande pourquoi je n'ai pas essayé de prendre la transposition. Merci beaucoup
Vous pouvez essayer de transposer s et d'utiliser (:) ou pour une ligne vectorielle: p>
Est-ce que c'est S (:) 'correct pour un vecteur de ligne? Je pense comme une doublure, F '(:)' est la bonne réponse (au moins tester avec octave).
Voici la page de documentation d'octave à propos de cette fonctionnalité: http://www.gnu.org/software/octave/doc/interpreter/index-exp Ressions.html # Index-Expressions
J'ai eu la même expérience que Norbert. S '(:)' a donné un vecteur de ligne. S (:) 'a donné un vecteur de rangée, mais les éléments ont été ajoutés à la colonne de la colonne, pas ce que je voulais.
octave a une très belle fonction: VEC ().
Le document à vector x = vec(X)
can be obtained with the MATLAB statement: x = reshape(X, q*n, 1)
Je n'ai pas Matlab ici pour l'essayer, mais vous pouvez essayer
s_prime = s (:, :) code>
Cela ne fonctionne pas, il génère toujours une matrice de forme originale
Duplicate: Comment faire Vous concaténez les rangées d'une matrice dans un vecteur à Matlab? , Le moyen le plus simple de convertir matrice en un vecteur de rangée