En este artículo, veremos cómo reemplazar NaN con cero y completar infinito positivo para valores de entrada complejos en Python .
El paquete Numpy nos proporciona el método numpy.nan_to_num() para reemplazar NaN con cero y completar infinito positivo para valores de entrada complejos en Python. Este método sustituye un valor nan con un número y reemplaza infinito positivo con el número de nuestra elección. Veamos la sintaxis de numpy.nan_to_num() en detalle.
Sintaxis: numpy.nan_to_num(x, copy=True, nan=0.0, posinf=Ninguno, neginf=Ninguno)
Parámetros:
- x: array como o objeto escalar.datos dados como entrada.
- copy: valor opcional, boolean.pass ‘true’ para crear una copia de x , o ‘false’ para reemplazar los valores en su lugar. por defecto ‘verdadero’.
- nan: valor opcional, int o float. Rellene los valores de NaN con este valor. Los valores de NaN se sustituirán por 0,0 si no se proporciona ningún valor.
- posinf: valor opcional, int o float. Rellene los valores infinitos positivos con este valor. Los valores infinitos positivos se reemplazarán con un número extremadamente grande si no se proporciona ningún valor.
- neginf: valor opcional, int o float. Complete los valores infinitos negativos con este valor. Los valores infinitos negativos se reemplazarán con un número entero muy pequeño si no se pasa ningún valor.
Devuelve: un objeto de array.
Ejemplo 1:
En este ejemplo, creamos una array de números imaginarios con la ayuda de np.nan y np.inf . La forma de la array está definida por el atributo .shape y la dimensión de la array está definida por .ndim. Ahora usaremos el parámetro posinf para reemplazar np.inf con el valor 999999.
Python3
import numpy as np # array of imaginary numbers array = np.array([complex(np.nan, np.inf)]) print(array) # shape of the array is print("Shape of the array is : ",array.shape) # dimension of the array print("The dimension of the array is : ",array.ndim) # Datatype of the array print("Datatype of our Array is : ",array.dtype) # np.nan is replaced with 0.0 and np.inf # is replaced with 999999 print("After replacement the array is : ",np.nan_to_num(array, posinf = 999999))
Producción:
[nan+infj] Shape of the array is : (1,) The dimension of the array is : 1 Datatype of our Array is : complex128 After replacement the array is : [0.+999999.j]
Ejemplo 2:
En este ejemplo, estamos reemplazando nan con el valor de 100.
Python3
import numpy as np # Creating an array of imaginary numbers array = np.array([complex(np.nan, np.inf)]) print(array) # shape of the array is print("Shape of the array is : ",array.shape) # dimension of the array print("The dimension of the array is : ",array.ndim) # Datatype of the array print("Datatype of our Array is : ",array.dtype) # np.nan is replaced with 100 and np.inf is # replaced with 999999 print("After replacement the array is : ", np.nan_to_num(array,nan= 100, posinf = 999999))
Producción:
[nan+infj] Shape of the array is : (1,) The dimension of the array is : 1 Datatype of our Array is : complex128 After replacement the array is : [100.+999999.j]
Ejemplo 3:
En este ejemplo, reemplazamos nan= 100, posinf = 999999, neginf=0.
Python3
# import package import numpy as np # Creating an array of imaginary numbers array = np.array([complex(np.nan, np.inf),-np.inf]) print(array) # shape of the array is print("Shape of the array is : ",array.shape) # dimension of the array print("The dimension of the array is : ",array.ndim) # Datatype of the array print("Datatype of our Array is : ",array.dtype) # np.nan is replaced with 100 and np.inf is # replaced with 999999 print("After replacement the array is : ", np.nan_to_num(array,nan= 100, posinf = 999999, neginf=0))
Producción:
[ nan+infj -inf +0.j] Shape of the array is : (2,) The dimension of the array is : 1 Datatype of our Array is : complex128 After replacement the array is : [100.+999999.j 0. +0.j]
Publicación traducida automáticamente
Artículo escrito por sarahjane3102 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA