2016-05-13 11 views
0

Ich habe eine Tabelle von Daten mit der Zeit in einer Spalte mit Versuchen 1-10 in der nächsten Reihe von Spalten generiert. Ich möchte in der Lage sein, den Maximalwert bei jedem Versuch für eine weitere Analyse zu extrahieren.Extrahieren Max-Wert aus jeder Spalte in einer Tabelle

Ich habe für Tisch versucht MGA

max = max(MGA(:, [])) 

ich folgende Fehlermeldung erhalten - „Sie keine Tabelle nur einen Index mit Subskript kann Tabelle Subskribierung erfordert sowohl Reihen- und variable Indizes.“

Antwort

1

Zunächst einmal: Tun Sie nie max = max();, Sie werden max überlasten, und Sie können es nicht erneut verwenden.

Und die Frage zu beantworten, können Sie wie folgt tun (man beachte, dass ich die Werte in den ersten Spalten gehalten haben):

MGA 
MGA =  
    1  5  3  8  9 
    2  4  7  3  3 
    3  8  7  6  9 
    4  8  2  7  3 
    5  2  2  9 10 
    6  5  5 10  4 
    7  5 10  6  2 
    8  7  4  2  3 
    9  8  6  2  7 
    10  8  3  3  5 

max_values = [MGA(:,1), max(MGA(:,2:end),[],2)] 
max_values =  
    1  9 
    2  7 
    3  9 
    4  8 
    5 10 
    6 10 
    7 10 
    8  7 
    9  8 
    10  8 
+0

Unter der Annahme, er hat tatsächlich eine [Tabelle] (http: // www .mathworks.com/help/matlab/tables.html) müssen Sie 'MGA' mit geschweiften Klammern indizieren, und die Verkettung wird keine Tabelle zurückgeben. – excaza

+0

Sie werden mit etwas wie 'MGA.RowMax = max (MGA {:, 2: Ende}, [], 2);' – excaza

Verwandte Themen