La ciencia de datos generalmente implica datos faltantes. O se puede descartar toda la fila o se puede agregar un valor a la combinación de columna de fila. Dejar caer la fila/columna sería absurdo porque elimina una cierta métrica para cada fila. Nan, que significa "no un número", es una de las formas típicas de mostrar un valor que falta en un conjunto de datos. Para obtener los resultados previstos, manejar NAN es bastante importante. Descubra cómo cambiar los valores de NAN en una fila o columna de un marco de datos de pandas a 0.
Método 1: Uso de Fillna ()
Los valores de NA/NAN se llenan con el enfoque proporcionado utilizando la función "Fillna ()". Se puede utilizar considerando la siguiente sintaxis:
Si desea llenar los valores de NAN para una sola columna, la sintaxis es la siguiente:
pandas.DataFrame_obj ['columna'].Fillna (0)
Si desea llenar los valores de NAN en todo el marco de datos, la sintaxis es la siguiente:
pandas.Dataframe_obj.Fillna (0)
Ejemplo 1: columna única
Creemos un marco de datos llamado "documentos" con dos columnas que incluyen algunos valores NAN. Los creamos usando Numpy. Ahora, llenemos los valores de NAN con 0 en ambas columnas, por separado.
importación de pandas
importar numpy
# Considere DataFrame
documentos = pandas.DataFrame ('Color': ["Rojo", "Azul", Numpy.nan, numpy.nan, numpy.yaya],
'Tamaño': [Numpy.nan, 45,60,78, Numpy.yaya])
Imprimir (documentos, "\ n")
# Llene nan con 0 en la columna de tamaño.
Imprimir (documentos ['tamaño'].Fillna (0), "\ n")
# Llena nan con 0 en la columna de color.
imprimir (documentos ['color'].Fillna (0))
Producción:
Tamaño de color
0 Nan rojo
1 azul 45.0
2 nan 60.0
3 nan 78.0
4 nan nan
0 0.0
1 45.0
2 60.0
3 78.0
4 0.0
Nombre: tamaño, dtype: float64
0 rojo
1 azul
2 0
3 0
4 0
Nombre: color, dtype: objeto
Explicación:
Primero, llenamos los valores de NAN con 0 en la columna "tamaño". Luego, llenamos los valores nan con 0 en la columna "color".
Ejemplo 2: múltiples columnas
Llenemos los valores de NAN con 0 en todo el marco de datos.
importación de pandas
importar numpy
# Considere DataFrame
documentos = pandas.DataFrame ('Color': ["Rojo", "Azul", Numpy.nan, numpy.nan, numpy.yaya],
'Tamaño': [Numpy.nan, 45,60,78, Numpy.yaya])
# Complete Nan con 0 en DataFrame completo
Imprimir (documentos.Fillna (0))
Producción:
Tamaño de color
0 rojo 0.0
1 azul 45.0
2 0 60.0
3 0 78.0
4 0 0.0
Explicación:
Primero, llenamos los valores de NAN con 0 en todo el marco de datos. Ahora, no hay valores NAN en el marco de datos "Documentos".
Método 2: Uso de reemplazo ()
Para reemplazar una sola columna de valores NAN, la sintaxis proporcionada es la siguiente:
Necesitamos pasar los valores NAN que deben reemplazarse con 0 como el primer parámetro y 0 como segundo parámetro que reemplaza los valores de NAN:
pandas.DataFrame_obj ['columna'].Reemplazar (Numpy.nan, 0)
Mientras que, para reemplazar los valores NAN de DataFrame, usamos la siguiente sintaxis:
pandas.Dataframe_obj.Reemplazar (Numpy.nan, 0)
Ejemplo 1: columna única
Creemos un marco de datos llamado "órdenes" con tres columnas que incluye algunos valores NAN. Los creamos usando Numpy. Ahora, reemplacemos los valores de NAN con 0 en las columnas "Price" y "Product", por separado.
importación de pandas
importar numpy
# Considere DataFrame
órdenes = pandas.DataFrame ('Product': ["One", "Two", Numpy.nan, numpy.nan, numpy.yaya],
'Price': [Numpy.nan, 45,60,78, Numpy.yaya],
'id': [1,2,3,4,5])
Imprimir (pedidos, "\ n")
# Reemplazar nan con 0 en la columna de precios.
Imprimir (pedidos ['Price'].Reemplazar (Numpy.nan, 0), "\ n")
# Reemplazar nan con 0 en la columna del producto.
Imprimir (pedidos ['Producto'].Reemplazar (Numpy.nan, 0))
Producción:
ID de precio del producto
0 One Nan 1
1 dos 45.0 2
2 nan 60.0 3
3 nan 78.0 4
4 nan nan 5
0 0.0
1 45.0
2 60.0
3 78.0
4 0.0
Nombre: Price, Dtype: Float64
0 uno
1 dos
2 0
3 0
4 0
Nombre: producto, dtype: objeto
Explicación:
Hay tres valores en la columna "Precio" y dos valores en la columna "Producto". Primero, reemplazamos los valores de NAN con 0 en la columna "Precio". Luego, reemplazamos los valores de NAN con 0 en la columna "Producto".
Ejemplo 2: múltiples columnas
Creemos un marco de datos llamado "órdenes" con tres columnas que incluye algunos valores NAN. Los creamos usando Numpy. Ahora, reemplacemos los valores de NAN con 0 en las columnas "Price" y "Product", por separado.
importación de pandas
importar numpy
# Considere DataFrame
documentos = pandas.DataFrame ('Color': ["Rojo", "Azul", Numpy.nan, numpy.nan, numpy.yaya],
'Tamaño': [Numpy.nan, 45,60,78, Numpy.yaya])
# Reemplace Nan con 0 en DataFrame completo
Imprimir (documentos.Reemplazar (Numpy.nan, 0), "\ n")
Producción:
Tamaño de color
0 rojo 0.0
1 azul 45.0
2 0 60.0
3 0 78.0
4 0 0.0
Hay cinco valores de NAN en el marco de datos de "órdenes". Después de eso, reemplazamos los valores de NAN con 0.
Conclusión
Tratar con las entradas faltantes en un marco de datos es un requisito fundamental y necesario para reducir la complejidad y manejar los datos desafiante en el proceso de análisis de datos. Pandas nos proporciona algunas opciones para hacer frente a este problema. Trajimos dos estrategias útiles en esta guía.