2014-10-05 11 views
17

vorrei trovare l'argmax dei valori in una matrice per colonna, ad esempio:posizione ottava del valore massimo nella colonna

1 2 3 2 3 3 
4 5 6 -> 
3 7 8 

mi sento come dovrei essere in grado di mappare una funzione argmax/posmax sopra le colonne, ma non vedo un modo particolarmente intuitivo per farlo in Octave.

risposta

28

Leggi max documentazione funzione here

[max_values indices] = max(input); 

Esempio:

input = 

1 2 3 
4 5 6 
3 7 8 

[max_values indices] = max(input) 
max_values = 

4 7 8 

indices = 

2 3 3 
+0

Grazie! Ha funzionato perfettamente –

3
 
In Octave If 
A = 
    1 3 2 
    6 5 4 
    7 9 8 

1) For Each Column Max value and corresponding index of them can be found by 
>> [max_values,indices] =max(A,[],1) 
max_values = 
    7 9 8 
indices = 
    3 3 3 


2) For Each Row Max value and corresponding index of them can be found by 
>> [max_values,indices] =max(A,[],2) 
max_values = 
    3 
    6 
    9 
indices = 
    2 
    1 
    2 

Similarly For minimum value 

>> [min_values,indices] =min(A,[],1) 
min_values = 
    1 3 2 

indices = 
    1 1 1 

>> [min_values,indices] =min(A,[],2) 
min_values = 
    1 
    4 
    7 

indices = 
    1 
    3 
    1