This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

nnz

Number of nonzero matrix elements

Syntax

N = nnz(X)

Description

example

N = nnz(X) returns the number of nonzero elements in matrix X.

Examples

collapse all

Create an identity matrix and determine the number of nonzeros it contains.

X = eye(4)
X = 4×4

     1     0     0     0
     0     1     0     0
     0     0     1     0
     0     0     0     1

N = nnz(X)
N = 4

Use nnz in conjunction with a relational operator to determine how many matrix elements meet a condition. Since relational operators produce logical matrices of 1s and 0s, the nnz function counts the 1s where the condition is true.

Create a matrix and determine how many elements are greater than 10.

X = magic(5)
X = 5×5

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

nnz(X>10)
ans = 15

The density of a matrix is the ratio of nonzeros to the total number of elements, nnz(X)/numel(X).

Create a sparse matrix representing the finite difference Laplacian on an L-shaped domain and calculate its density.

X = delsq(numgrid('L',20));
spy(X)

d = nnz(X)/numel(X)
d = 0.0194

The result indicates that only about 2% of the elements in the matrix are nonzero.

Input Arguments

collapse all

Input matrix.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Complex Number Support: Yes

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

See Also

| | | |

Introduced before R2006a