Hauptinhalt

max

Maximale Elemente eines Arrays

Beschreibung

M = max(A) gibt die maximalen Elemente eines Arrays zurück.

  • Wenn A ein Vektor ist, gibt max(A) das Maximum von A zurück.

  • Wenn A eine Matrix ist, dann ist max(A) ein Zeilenvektor, der den Maximalwert jeder Spalte von A enthält.

  • Wenn A ein mehrdimensionales Array ist, erfolgt die Operation von max(A) entlang der ersten Dimension von A, deren Größe nicht 1 ist. Die Elemente werden dabei als Vektoren verarbeitet. Die Größe von M in dieser Dimension wird 1, während die Größen aller anderen Dimensionen den Wert in A beibehalten. Wenn A ein leeres Array ist, dessen erste Dimension die Länge null hat, dann ist M ein leeres Array mit derselben Größe wie A.

  • Wenn A eine Tabelle oder ein Timetable ist, gibt max(A) eine einzeilige Tabelle zurück, die das Maximum jeder Variablen enthält. (seit R2023a)

Beispiel

M = max(A,[],"all") findet das Maximum aller Elemente von A.

Beispiel

M = max(A,[],dim) gibt das maximale Element entlang der Dimension dim zurück. Wenn A beispielsweise eine Matrix ist, gibt max(A,[],2) einen Spaltenvektor zurück, der den Maximalwert jeder Zeile enthält.

Beispiel

M = max(A,[],vecdim) gibt das Maximum der im Vektor vecdim angegebenen Dimensionen zurück. Wenn beispielsweise A eine Matrix ist, gibt max(A,[],[1 2]) das Maximum aller Elemente in A zurück, da jedes Element einer Matrix in der Array-Schicht enthalten ist, die von den Dimensionen 1 und 2 definiert wird.

Beispiel

M = max(A,[],___,missingflag) gibt an, ob fehlende Werte in A in den vorherigen Syntaxen weggelassen oder berücksichtigt werden sollen. Beispielsweise werden mit max(A,[],"includemissing") alle fehlenden Werte beim Berechnen des Maximums berücksichtigt. Standardmäßig werden mit max fehlende Werte weggelassen.

Beispiel

Zudem gibt [M,I] = max(___) den Index in der Ausführungsdimension zurück, der dem ersten Auftreten des Maximalwerts von A entspricht.

Beispiel

Zudem gibt [M,I] = max(A,[],___,"linear") den linearen Index in A zurück, der dem Maximalwert in A entspricht.

Beispiel

C = max(A,B) gibt ein Array mit den größten Elementen aus A oder B zurück.

Beispiel

C = max(A,B,missingflag) gibt auch an, wie fehlende Werte behandelt werden sollen.

___ = max(___,"ComparisonMethod",method) gibt optional an, wie Elemente für die vorherigen Syntaxen verglichen werden sollen. Für einen Vektor A = [-1 2 -9] vergleicht die Syntax max(A,[],"ComparisonMethod","abs") beispielsweise die Elemente von A hinsichtlich ihrer absoluten Werte und gibt einen Maximalwert von -9 zurück.

Beispiele

alle reduzieren

Erstellen Sie einen Vektor und berechnen Sie sein größtes Element.

A = [23 42 37 18 52];
M = max(A)
M = 
52

Erstellen Sie einen komplexen Vektor und berechnen Sie sein größtes Element, d. h. das Element mit dem größten Betrag.

A = [-2+2i 4+i -1-3i];
max(A)
ans = 
4.0000 + 1.0000i

Erstellen Sie eine Matrix und berechnen Sie das größte Element in jeder Spalte.

A = [2 8 4; 7 3 9]
A = 2×3

     2     8     4
     7     3     9

M = max(A)
M = 1×3

     7     8     9

Erstellen Sie eine Matrix und berechnen Sie das größte Element in jeder Zeile.

A = [1.7 1.2 1.5; 1.3 1.6 1.99]
A = 2×3

    1.7000    1.2000    1.5000
    1.3000    1.6000    1.9900

M = max(A,[],2)
M = 2×1

    1.7000
    1.9900

Erstellen Sie ein 3D-Array und berechnen Sie das Maximum jeder Datenseite (Zeilen und Spalten).

A(:,:,1) = [2 4; -2 1];
A(:,:,2) = [9 13; -5 7];
A(:,:,3) = [4 4; 8 -3];
M1 = max(A,[],[1 2])
M1 = 
M1(:,:,1) =

     4


M1(:,:,2) =

    13


M1(:,:,3) =

     8

Zum Berechnen des Maximums über alle Dimensionen eines Arrays können Sie entweder jede Dimension im Vektordimensionsargument angeben oder die Option "all" verwenden.

M2 = max(A,[],[1 2 3])
M2 = 
13
Mall = max(A,[],"all")
Mall = 
13

Erstellen Sie eine Matrix, die NaN-Werte enthält.

A = [1.77 -0.005 NaN -2.95; NaN 0.34 NaN 0.19]
A = 2×4

    1.7700   -0.0050       NaN   -2.9500
       NaN    0.3400       NaN    0.1900

Berechnen Sie den Maximalwert der Matrix mit fehlenden Werten. Matrixspalten, die einen NaN-Wert enthalten, weisen das Maximum NaN auf.

M = max(A,[],"includemissing")
M = 1×4

       NaN    0.3400       NaN    0.1900

Erstellen Sie eine Matrix A und berechnen Sie die größten Elemente in jeder Spalte, sowie die Indizes der Zeilen von A, in denen sie auftreten.

A = [1 9 -2; 8 4 -5]
A = 2×3

     1     9    -2
     8     4    -5

[M,I] = max(A)
M = 1×3

     8     9    -2

I = 1×3

     2     1     1

Erstellen Sie eine Matrix A und geben Sie den Maximalwert jeder Zeile der Matrix M zurück. Verwenden Sie die Option "linear", um auch die linearen Indizes I so zurückzugeben, dass M = A(I).

A = [1 2 3; 4 5 6]
A = 2×3

     1     2     3
     4     5     6

[M,I] = max(A,[],2,"linear")
M = 2×1

     3
     6

I = 2×1

     5
     6

maxvals = A(I)
maxvals = 2×1

     3
     6

Erstellen Sie eine Matrix und geben Sie den größten Wert aller ihrer Elemente im Vergleich zu einem Skalar zurück.

A = [1 7 3; 6 2 9]
A = 2×3

     1     7     3
     6     2     9

B = 5;
C = max(A,B)
C = 2×3

     5     7     5
     6     5     9

Eingabeargumente

alle reduzieren

Eingabearray, angegeben als Skalar, Vektor, Matrix, mehrdimensionales Array, Tabelle oder Timetable.

  • Wenn A komplex ist, gibt max(A) die komplexe Zahl mit dem größten Betrag zurück. Wenn die Beträge gleich sind, gibt max(A) den Wert mit dem größten Betrag und dem größten Phasenwinkel zurück.

  • Wenn A ein Skalar ist, gibt max(A) A zurück.

  • Wenn A ein leeres 0x0-Array ist, dann ist max(A) es ebenfalls.

Wenn A den Typ categorical aufweist, muss es ordinal sein.

Datentypen: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration | table | timetable
Unterstützung komplexer Zahlen: Ja

Dimension, entlang der die Operation erfolgt, angegeben als positiver ganzzahliger Skalar. Wenn Sie die Dimension nicht angeben, wird standardmäßig die erste Array-Dimension verwendet, deren Größe nicht 1 ist.

Die Dimension dim gibt die Dimension an, deren Länge auf 1 reduziert wird. size(M,dim) ist 1, während die Größe aller anderen Dimensionen gleich bleibt, es sei denn, size(A,dim) ist 0. Wenn size(A,dim) gleich 0 ist, gibt max(A,dim) ein leeres Array mit derselben Größe wie A zurück.

Angenommen, es liegt eine mxn-Eingabematrix, A, vor:

  • max(A,[],1) berechnet das Maximum der Elemente in jeder Spalte von A und gibt einen 1-mal-n-Zeilenvektor zurück.

    max(A,[],1) column-wise operation

  • max(A,[],2) berechnet das Maximum der Elemente in jeder Zeile von A und gibt einen m-mal-1-Spaltenvektor zurück.

    max(A,[],2) row-wise operation

Vektor aus Dimensionen, angegeben als Vektor positiver Ganzzahlen. Jedes Element stellt eine Dimension des Eingabearray dar. Die Längen der Ausgabe in den angegebenen Ausführungsdimensionen sind gleich 1, während die anderen unverändert bleiben.

Angenommen, es liegt ein 2x3x3-Eingabearray, A, vor. Dann gibt max(A,[],[1 2]) ein 1x1x3-Array zurück, dessen Elemente die über die einzelnen Seiten von A berechneten Maxima sind.

Mapping of a 2-by-3-by-3 input array to a 1-by-1-by-3 output array

Zusätzliches Eingabearray, angegeben als Skalar, Vektor, Matrix, mehrdimensionales Array, Tabelle oder Timetable. Die Eingaben A und B müssen entweder dieselbe Größe oder kompatible Größen aufweisen (A ist beispielsweise eine M-mal-N-Matrix und B ein Skalar oder ein 1-mal-N-Zeilenvektor). Weitere Informationen finden Sie unter Kompatible Arraygrößen für Basisoperationen.

  • Wenn A und B beide Arrays sind, müssen sie denselben Datentyp aufweisen, es sei denn, eines davon ist vom Typ double. In diesem Fall kann das andere Array den Typ single, duration oder einen beliebigen Ganzzahlentyp aufweisen.

  • Wenn es sich bei A und B um ordinale categorical-Arrays handelt, müssen sie dieselben Kategorienmengen in derselben Reihenfolge aufweisen.

  • Wenn es sich bei A oder B um eine Tabelle oder einen Timetable handelt, kann die andere Eingabe ein Array, eine Tabelle oder ein Timetable sein.

Wenn B den Typ categorical aufweist, muss es ordinal sein.

Datentypen: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration | table | timetable
Unterstützung komplexer Zahlen: Ja

Bedingung für fehlende Werte, angegeben als einer der Werte in dieser Tabelle.

WertEingabedatentypBeschreibung
"omitmissing"Alle unterstützten DatentypenFehlende Werte in den Eingabearrays werden ignoriert und das Maximum wird über weniger Punkte berechnet. Wenn alle Elemente in der Ausführungsdimension fehlen, fehlt auch das entsprechende Element in M.
"omitnan"double, single, duration
"omitnat"datetime
"omitundefined"categorical
"includemissing"Alle unterstützten Datentypen

Fehlende Werte in den Eingabearrays werden beim Berechnen des Maximums berücksichtigt. Wenn eines der Elemente in der Ausführungsdimension fehlt, fehlt auch das entsprechende Element in M.

"includenan"double, single, duration
"includenat"datetime
"includeundefined"categorical

Vergleichsmethode für numerische Eingaben, angegeben als einer dieser Werte:

  • "auto" — Bei einem numerischen Eingabearray A werden Elemente mit real(A) verglichen, wenn A reell ist, und mit abs(A), wenn A komplex ist.

  • "real" — Bei einem numerischen Eingabearray A werden Elemente mit real(A) verglichen, wenn A reell oder komplex ist. Wenn A Elemente mit identischem Realteil aufweist, können Sie mit imag(A) Gleichstände auflösen.

  • "abs" — Bei einem numerischen Eingabearray A werden Elemente mit abs(A) verglichen, wenn A reell oder komplex ist. Wenn A Elemente mit identischem Betrag aufweist, können Sie mit angle(A) im Intervall (-π,π] Gleichstände auflösen.

Ausgabeargumente

alle reduzieren

Maximalwerte, zurückgegeben als Skalar, Vektor, Matrix, mehrdimensionales Array, Tabelle oder Timetable. size(M,dim) ist 1, während die Größe aller anderen Dimensionen mit der Größe der entsprechenden Dimension in A übereinstimmt, es sei denn, size(A,dim) ist 0. Wenn size(A,dim) gleich 0 ist, handelt es sich bei M um ein leeres Array mit derselben Größe wie A.

Index, zurückgegeben als Skalar, Vektor, Matrix, mehrdimensionales Array oder Tabelle. I weist die gleiche Größe wie die erste Ausgabe auf.

Wenn "linear" nicht angegeben ist, handelt es sich bei I um den Index in der Ausführungsdimension. Wenn "linear" angegeben ist, enthält I die linearen Indizes von A, die den Maximalwerten entsprechen.

Wenn das größte Element mehr als einmal auftritt, enthält I den Index für das erste Auftreten des Werts.

Maximale Elemente aus A oder B, zurückgegeben als Skalar, Vektor, Matrix, mehrdimensionales Array, Tabelle oder Timetable. Die Größe von C wird durch implizite Expansion der Dimensionen von A und B bestimmt. Weitere Informationen finden Sie unter Kompatible Arraygrößen für Basisoperationen.

Der Datentyp von C hängt von den Datentypen von A und B ab:

  • Wenn A und B denselben Datentyp aufweisen, stimmt C mit dem Datentyp von A und B überein.

  • Wenn A oder B den Typ single aufweist, ist auch C vom Typ single.

  • Wenn A oder B einen Ganzzahl-Datentyp aufweist und es sich bei der jeweils anderen Eingabe um einen Skalar vom Typ double handelt, nimmt C den Ganzzahl-Datentyp an.

  • Wenn es sich bei A oder B um eine Tabelle oder einen Timetable handelt, ist auch C eine Tabelle oder ein Timetable.

Erweiterte Fähigkeiten

alle erweitern

Versionsverlauf

Eingeführt vor R2006a

alle erweitern