Ho una dimensione 5000,1 (matrice), che contiene numeri interi compresi tra 1 e 10. Voglio espandere quegli indici in un vettore 1-di-10. Vale a dire, y contiene 1,2,3 ... e lo voglio a "espandere" a:Matlab/Octave rappresentazione 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
Qual è il modo migliore per farlo?
ho provato:
Y = zeros(5000,10); Y(y) = 1;
ma non ha funzionato.
Si lavora per i vettori però:
se y = [2 5 7]
, e Y = zeros(1,10)
, quindi Y(y) = [0 1 0 0 1 0 1 0 0 0]
.
possibile duplicato del [Creazione Indicatore Matrice] (http://stackoverflow.com/questions/6150174/creating-indicator-matrix) – Amro