Contenuto principale

all

Determinare se tutti gli elementi dell'array sono diversi da zero o true

Descrizione

B = all(A) esegue test lungo la prima dimensione dell'array di A la cui dimensione non è uguale a 1 e determina se gli elementi sono tutti diversi da zero o logici 1 (true). In sostanza, all è un'estensione naturale dell'operatore logico AND.

  • Se A è un vettore, all(A) restituisce il valore logico 1 (true) se tutti gli elementi sono diversi da zero e restituisce il valore logico 0 (false) se uno o più elementi sono pari a zero.

  • Se A è una matrice non vuota, all(A) tratta le colonne di A come vettori e restituisce un vettore riga di 1 e 0 logici.

  • Se A è una matrice vuota 0x0, all(A) restituisce il valore logico 1 (true).

  • Se A è un array multidimensionale, all(A) agisce lungo la prima dimensione dell'array la cui grandezza non è uguale a 1 e restituisce un array di valori logici. La grandezza di questa dimensione diventa 1, mentre le grandezze di tutte le altre dimensioni rimangono invariate.

esempio

B = all(A,'all') esegue test su tutti gli elementi di A. Questa sintassi è valida per la release R2018b di MATLAB® e successive.

B = all(A,dim) esegue test sugli elementi lungo la dimensione dim. L'input dim è uno scalare intero positivo.

esempio

B = all(A,vecdim) esegue test sugli elementi in base alle dimensioni specificate nel vettore vecdim. Ad esempio, se A è una matrice, all(A,[1 2]) esegue test su tutti gli elementi in A poiché ogni elemento di una matrice è contenuto nella porzione di array definita dalle dimensioni 1 e 2.

esempio

Esempi

comprimi tutto

Creare una matrice 3x3, quindi eseguire test su ogni colonna per gli elementi diversi da zero.

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

Creare un vettore di valori decimali ed eseguire test per verificare quali valori sono inferiori a 0,5.

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

L'output è un vettore di valori logici. La funzione all riduce tale vettore di valori logici a una singola condizione. In questo caso, B = all(A < 0.5) produce il valore logico 0.

Questo rende all particolarmente utile nelle dichiarazioni if.

if all(A < 0.5)

%do something

else

%do something else

end

Il codice viene eseguito in base a una singola condizione, anziché a un vettore di condizioni potenzialmente in conflitto.

Creare un array multidimensionale 3x7x5 ed eseguire test per verificare se tutti gli elementi sono inferiori a 3.

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

È anche possibile eseguire test sull'array per gli elementi maggiori di zero.

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

La sintassi A(:) trasforma gli elementi di A in un singolo vettore colonna; quindi, questo tipo di dichiarazione può essere utilizzato su un array di qualsiasi dimensione.

Creare una matrice 3x3.

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

     0     0     3
     0     0     3
     0     0     3

Eseguire test sulle righe di A per tutti gli elementi diversi da zero, specificando dim = 2.

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

   0
   0
   0

Creare un array tridimensionale e determinare se tutti gli elementi in ciascuna pagina di dati (righe e colonne) sono pari a zero.

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

Argomenti di input

comprimi tutto

Array di input, specificato come scalare, vettore, matrice o array multidimensionale.

Tipi di dati: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Supporto numeri complessi:

Dimensione lungo la quale operare, specificata come scalare intero positivo. Se non si specifica la dimensione, per impostazione predefinita si considera la prima dimensione dell'array la cui grandezza non è uguale a 1.

Considerare un array di input a due dimensioni, A:

  • all(A,1) opera sugli elementi successivi nelle colonne di A e restituisce un vettore riga di valori logici.

  • all(A,2) opera sugli elementi successivi nelle righe di A e restituisce un vettore colonna di valori logici.

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

Tipi di dati: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Vettore di dimensioni, specificato come vettore di numeri interi positivi. Ciascun elemento rappresenta una dimensione dell'array di input. Le lunghezze dell’output nelle dimensioni operative specificate sono 1, mentre le altre rimangono invariate.

Considerare un array di input 2x3x3, A. Quindi all(A,[1 2]) restituisce un array 1x1x3 i cui elementi indicano valori diversi da zero per ciascuna pagina di A.

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

Tipi di dati: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Argomenti di output

comprimi tutto

Array logico, restituito come scalare, vettore, matrice o array multidimensionale. La dimensione di A su cui opera all ha grandezza 1 in B.

Funzionalità estese

espandi tutto

Cronologia versioni

Introduzione prima di R2006a