La función nnz() en MATLAB

Ammar Ali 13 junio 2022
La función nnz() en MATLAB

Este tutorial discutirá cómo encontrar el número de elementos distintos de cero presentes en un vector o matriz usando la función nnz() en MATLAB.

Utilice la función nnz() en MATLAB

La función nnz() de MATLAB se utiliza para encontrar los elementos distintos de cero presentes en un vector o matriz. La siguiente es la sintaxis básica de la función nnz().

Sintaxis:

num = nnz(m)

La sintaxis devolverá el número total de elementos distintos de cero almacenados dentro de la matriz o vector m y lo almacenará en la variable num. La entrada de la función nnz() debe ser una matriz o un vector.

Por ejemplo, creemos un vector y encontremos el número de elementos distintos de cero presentes usando la función nnz().

Código:

m = [0 1 0 5]
num = nnz(m)

Producción :

m =

   0   1   0   5

num = 2

Usamos un vector que contiene cuatro elementos en el código anterior, y dos de estos elementos son cero. Podemos ver que la función nnz() devolvió dos, lo que significa que dos elementos distintos de cero están presentes en la matriz o el vector dado.

También podemos definir condiciones dentro de la función nnz(). Si solo queremos encontrar el número de elementos mayor que 1, podemos usar el símbolo mayor que para definir la condición dentro de la función nnz().

Por ejemplo, encontremos el número de elementos mayor que 1 presente en la matriz anterior.

Código:

m = [0 1 0 5]
num = nnz(m>1)

Producción :

m =

   0   1   0   5

num = 1

En el ejemplo anterior, hemos definido una condición dentro de la función nnz() para devolver el número de elementos mayor que 1. El número de elementos mayor que uno es 1, como podemos ver en la salida.

Si no definimos una condición, la función nnz() devolverá el número de elementos mayor que 0, pero podemos cambiar esa condición. También podemos configurar la función nnz() para que devuelva el número de elementos mayor que algún número negativo como -5, y en este caso, la función contará todos los elementos mayores que -5, incluido el cero.

Por ejemplo, contemos el número de elementos mayor que un valor negativo presente en una matriz.

Código:

m = [-5 -1 1 0 5]
num = nnz(m>-5)

Producción :

m =

  -5  -1   1   0   5

num = 4

Como podemos ver, cuatro números son mayores que -5 en la matriz anterior, y la función nnz() también devolvió cuatro como salida. Podemos utilizar mayor que >, menor que <, igual a =, mayor o igual a >=, menor o igual a <=, AND lógico &, y lógico O | operadores para definir nuestra condición dentro de la función nnz().

El Y & y el O | Los operadores son útiles si queremos definir más de una condición. En el caso del operador AND, el elemento se contará si cumple todas las condiciones, y en el caso del operador OR, el elemento se contará si cumple al menos una condición.

Si queremos contar el número de elementos mayores que cierto valor y los elementos menores que cierto valor, podemos usar el operador AND para definir dos condiciones. Si queremos contar el número de elementos mayores a un cierto valor y los elementos mayores a otro valor, podemos usar el operador OR.

Por ejemplo, contemos el número de elementos presentes en una matriz usando múltiples condiciones dentro de la función nnz().

Código:

m = [15 10 1 0 5]
num = nnz(m>1 & m<15)
num_2 = nnz(m>5 | m<1)

Producción :

m =

   15   10    1    0    5

num = 2
num_2 = 3

Usamos el operador AND para encontrar el número de elementos mayor que 1 y menor que 15, y sabemos que solo hay dos elementos que también son devueltos por la función nnz(). También usamos el operador OR para encontrar el número de elementos mayor que 5 o menor que 1, y sabemos que dos elementos son mayores que 5 y un elemento es menor que 1.

El número total de elementos será 3, que devuelve la función nnz(). También podemos usar el operador AND y OR dentro de la función nnz() para definir una condición y definir cualquier número de condiciones.

Consulte esta documentación para obtener más detalles sobre la función nnz().

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artículo relacionado - MATLAB Matrix