logical

Convert numeric values to logicals

Syntax

• `L = logical(A)` example

Description

example

````L = logical(A)` converts numeric input `A` into an array of logical values. Any nonzero element of input `A` is converted to logical `1` (`true`) and zeros are converted to logical `0` (`false`). Complex values and NaNs cannot be converted to logical values and result in a conversion error.```

Examples

collapse all

Pick Odd Elements from Numeric Matrix

Pick out the odd-numbered elements of a numeric matrix.

Create a numeric matrix.

`A = [1 -3 2;5 4 7;-8 1 3];`

Find the modulus, `mod(A,2)`, and convert it to a logical array for indexing.

```L = logical(mod(A,2)) ```
```L = 1 1 0 1 0 1 0 1 1```

The array has logical `1` (`true`) values where `A` is odd.

Use `L` as a logical index to pick out the odd elements of `A`.

`A(L)`
```ans = 1 5 -3 1 7 3```

The result is a vector containing all odd elements of `A`.

Use the logical NOT operator, `~`, on `L` to find the even elements of `A`.

`A(~L)`
```ans = -8 4 2```

Input Arguments

collapse all

`A` — Numeric inputscalar | vector | matrix | multidimensional array

Numeric input, specified as a scalar, vector, matrix, or multidimensional array.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `logical`

More About

collapse all

Tips

• Most arithmetic operations involving logical arrays return double values. For example, adding zero to a logical array returns a double array.

• Logical arrays also are created by the relational operators (`==`,`<`,`>`,`~`, etc.) and functions like `any`, `all`, `isnan`, `isinf`, and `isfinite`.

See Also

Introduced before R2006a

Was this topic helpful?

Get trial now