Hauptinhalt

all

R2026b

Ermitteln, ob alle Array-Elemente ungleich null oder true sind

Beschreibung

B = all(A) prüft entlang der ersten Array-Dimension von A, deren Größe nicht 1 ist, und stellt fest, ob die Elemente alle ungleich null oder eine logische 1 (true) sind. In der Praxis ist all eine natürliche Erweiterung des logischen AND-Operators.

  • Wenn A ein Vektor ist, gibt all(A) eine logische 1 (true) zurück, wenn alle Elemente ungleich null sind, und eine logische 0 (false) zurück, wenn mindestens ein Element null ist.

  • Wenn A eine nicht leere Matrix ist, behandelt all(A) die Spalten von A als Vektoren und gibt einen Zeilenvektor aus logischen Einsen (1) und Nullen (0) zurück.

  • Wenn A eine leere 0x0-Matrix ist, gibt all(A) eine logische 1 (true) zurück.

  • Wenn A ein mehrdimensionales Array ist, operiert all(A) entlang der ersten Array-Dimension, deren Größe nicht 1 ist, und gibt ein Array aus logischen Werten zurück. Die Größe dieser Dimension wird 1, während alle anderen Dimensionen ihre Größe beibehalten.

Beispiel

B = all(A,'all') prüft alle Elemente von A. Diese Syntax ist für MATLAB®-Versionen R2018b und später gültig.

B = all(A,dim) prüft die Elemente entlang der Dimension dim. Die dim-Eingabe ist ein positiver ganzzahliger Skalar.

Beispiel

B = all(A,vecdim) prüft die Elemente basierend auf den im Vektor vecdim angegebenen Dimensionen. Wenn beispielsweise A eine Matrix ist, prüft all(A,[1 2]) alle Elemente von A, da jedes Element einer Matrix in der Array-Schicht enthalten ist, die von den Dimensionen 1 und 2 definiert wird.

Beispiel

Beispiele

alle reduzieren

Erstellen Sie eine 3x3-Matrix und prüfen Sie jede Spalte auf alle Elemente, die ungleich null sind.

A = [0 0 3;0 0 3;0 0 3]
A = 3×3

     0     0     3
     0     0     3
     0     0     3

B = all(A)
B = 1×3 logical array

   0   0   1

Erstellen Sie einen Vektor aus Dezimalwerten und prüfen Sie, welche Werte kleiner als 0,5 sind.

A = [0.53 0.67 0.01 0.38 0.07 0.42 0.69];
B = (A < 0.5)
B = 1×7 logical array

   0   0   1   1   1   1   0

Die Ausgabe ist ein Vektor logischer Werte. Die Funktion all reduziert einen solchen Vektor logischer Werte auf eine einzelne Bedingung. In diesem Fall ergibt B = all(A < 0.5) eine logische 0.

Dadurch ist all bei if-Anweisungen besonders nützlich.

if all(A < 0.5)

%do something

else

%do something else

end

Der Code wird in Abhängigkeit von einer einzelnen Bedingung und nicht von einem Vektor aus möglicherweise widersprüchlichen Bedingungen ausgeführt.

Erstellen Sie ein mehrdimensionales 3x7x5-Array und prüfen Sie, ob alle zugehörigen Elemente kleiner als 3 sind.

A = rand(3,7,5) * 5;
B = all(A(:) < 3)
B = logical
   0

Sie können das Array auch auf Elemente prüfen, die größer als null sind.

B = all(A(:) > 0)
B = logical
   1

Die Syntax A(:) wandelt die Elementen von A in einen einspaltigen Vektor um. Daher können Sie diese Art von Anweisung für ein Array mit beliebiger Größe verwenden.

Erstellen Sie eine 3x3-Matrix.

A = [0 0 3;0 0 3;0 0 3]
A = 3×3

     0     0     3
     0     0     3
     0     0     3

Prüfen Sie die Zeilen von A auf alle Elemente ungleich null, indem Sie dim = 2 angeben.

B = all(A,2)
B = 3×1 logical array

   0
   0
   0

Erstellen Sie ein 3D-Array und stellen Sie auf jeder Datenseite (Zeilen und Spalten) fest, ob alle Elemente ungleich null vorhanden sind.

A(:,:,1) = [2 1; 3 5];
A(:,:,2) = [0 0; 0 0];
A(:,:,3) = [-2 9; 4 1];
B = all(A,[1 2])
B = 1×1×3 logical array
B(:,:,1) =

   1


B(:,:,2) =

   0


B(:,:,3) =

   1

Eingabeargumente

alle reduzieren

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

Datentypen: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
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.

Angenommen, es liegt ein zweidimensionales Eingabearray, A, vor:

  • all(A,1) wird für aufeinanderfolgende Elemente in den Spalten von A ausgeführt und gibt einen Zeilenvektor aus logischen Werten zurück.

  • all(A,2) wird für aufeinanderfolgende Elemente in den Zeilen von A ausgeführt und gibt einen Spaltenvektor aus logischen Werten zurück.

all(A,1) column-wise computation and all(A,2) row-wise computation.

Datentypen: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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 all(A,[1 2]) ein 1x1x3-Array zurück, dessen Elemente Werte ungleich null für jede Seite von A anzeigen.

all(A,[1 2]) collapses the pages of a 2-by-3-by-3 array into a 1-by-1-by-3 array.

Datentypen: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Ausgabeargumente

alle reduzieren

Logisches Array, zurückgegeben als Skalar, Vektor, Matrix oder mehrdimensionales Array. Die Dimension von A, auf die all angewendet wird, weist in B die Größe 1 auf.

Erweiterte Fähigkeiten

alle erweitern

Versionsverlauf

Eingeführt vor R2006a