<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.15.1/tensorflow/python/ops/math_ops.py#L2570-L2643) |

Computes number of nonzero elements across dimensions of a tensor.

```python
tf.math.count_nonzero(
    input,
    axis=None,
    keepdims=None,
    dtype=`tf.dtypes.int64`,
    name=None
)
```

Reduces `input` along the dimensions given in `axis`.
Unless `keepdims` is true, the rank of the tensor is reduced by 1 for each
entry in `axis`. If `keepdims` is true, the reduced dimensions
are retained with length 1.

If `axis` has no entries, all dimensions are reduced, and a
tensor with a single element is returned.

> [!NOTE]
> **Note:** Floating point comparison to zero is done by exact floating point equality check. Small values are **not** rounded to zero for purposes of the nonzero check.

#### For example:

```python
x = tf.constant([[0, 1, 0], [1, 1, 0]])
tf.math.count_nonzero(x)  # 3
tf.math.count_nonzero(x, 0)  # [1, 2, 0]
tf.math.count_nonzero(x, 1)  # [1, 2]
tf.math.count_nonzero(x, 1, keepdims=True)  # [[1], [2]]
tf.math.count_nonzero(x, [0, 1])  # 3
```

> [!NOTE]
> **Note:** Strings are compared against zero-length empty string `""`. Any string with a size greater than zero is already considered as nonzero.

#### For example:

```python
x = tf.constant(["", "a", "  ", "b", ""])
tf.math.count_nonzero(x) # 3, with "a", "  ", and "b" as nonzero strings.
```

<br />

<br />

<br />

| ## Args ||
|---|---|
| `input` | The tensor to reduce. Should be of numeric type, `bool`, or `string`. |
| `axis` | The dimensions to reduce. If `None` (the default), reduces all dimensions. Must be in the range `[-rank(input), rank(input))`. |
| `keepdims` | If true, retains reduced dimensions with length 1. |
| `dtype` | The output dtype; defaults to [`tf.int64`](https://www.tensorflow.org/versions/r2.15/api_docs/python/tf.md.txt#int64). |
| `name` | A name for the operation (optional). |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| The reduced tensor (number of nonzero values). ||

<br />