J'ai un y de taille 5000,1 (matrice), qui contient des entiers compris entre 1 et 10. Je veux étendre ces indices en un vecteur de 1 sur 10. À savoir, y contient 1,2,3 ... et je veux qu'il « étendre » à:Représentation Matlab/Octave 1-of-K
1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
Quelle est la meilleure façon de le faire?
J'ai essayé:
Y = zeros(5000,10); Y(y) = 1;
mais cela n'a pas fonctionné.
Il travaille pour des vecteurs bien:
si y = [2 5 7]
et Y = zeros(1,10)
, puis Y(y) = [0 1 0 0 1 0 1 0 0 0]
.
double possible de [Création d'indicateurs Matrice] (http://stackoverflow.com/questions/6150174/creating-indicator-matrix) – Amro