Sto cercando un modo per trovare l'indice corrispondente al massimo di ogni colonna. Il mio obiettivo è evitare i loop e trovare una soluzione Matlabic usando le funzioni di armadillo vettorializzate.Armadillo, che trova l'indice massimo in ogni colonna
Questo può essere fatto facilmente in Matlab con il seguente comando: [~, maxIndices] = max (A);
In armadillo si ha la funzione membro: A.max (row_of_max_val, col_of_max_val); che danno la posizione del massimo nell'intera matrice.
E la funzione standalone vec M = max (A); che emette il massimo valori di ciascuna colonna ma non i loro indici.
Ma nessuno di loro sta facendo il trucco.
Avere indici massimi delle colonne potrebbe essere utilizzato per scrivere numerosi algoritmi in un modo più vettorializzato. Ad esempio, potrebbe essere utilizzato in una decodifica di Viterbi o in un cluster di k-means.
Ovviamente, questa domanda può essere generalizzata considerando i minimi anziché i massimi e le righe anziché le colonne.
Qualcuno sta pensando a una soluzione alternativa?
Migliore.
nota a margine: Armadillo ha già il cluster k-means. vedere la classe [gmm_diag] (http://arma.sourceforge.net/docs.html#gmm_diag). basta interpretare i mezzi gaussiani come centroidi. – hbrerkere