# Documentation

### This is machine translation

Translated by
Mouse over text to see original. Click the button below to return to the English verison of the page.

# logical

Convert numeric values to logicals

## Syntax

• ``L = logical(A)``
example

## Description

example

````L = logical(A)` converts `A` into an array of logical values. Any nonzero element of `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 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 = 3×3 logical array 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

Input array, specified as a scalar, vector, matrix, or multidimensional array.

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

collapse all

### Tall Array Support

This function fully supports tall arrays. For more information, see Tall Arrays.

### 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`.