En este artículo, discutiremos cómo resaltar los valores NaN (No es un número) en Pandas Dataframe. Los valores de NaN se utilizan para representar valores NULL y, a veces, es el resultado del desbordamiento matemático.
Primero hagamos un marco de datos:
Python3
# Import Required Libraries import pandas as pd import numpy as np # Create a dictionary for the dataframe dict = {'Name': ['Sumit Tyagi', 'Sukritin', 'Akriti Goel', 'Sanskriti', 'Abhishek Jain'], 'Age': [22, 20, np.nan, np.nan, 22], 'Marks': [90, 84, 33, 87, 82]} # Converting Dictionary to Pandas Dataframe df = pd.DataFrame(dict) # Print Dataframe df
Producción:
Ahora, ven a la parte resaltada. Nuestro objetivo es resaltar aquellas celdas que tienen valores de Nan .
Método 1: Resaltar celda con valores nan
Podemos hacer esto usando el método de resaltado_null() de la propiedad DataFrame.style. Esta es una propiedad que devuelve un objeto Styler, que tiene métodos útiles para formatear y mostrar DataFrames. El método de resaltado_null() requiere un parámetro de string (el nombre del color con el que desea resaltar la celda).
Ejemplo:
Python3
# Highlighting cell with nan values df.style.highlight_null('red')
Producción:
Método 2: Resaltar texto con valores nan en lugar de fondo
Podemos hacer esto usando el método applymap() de la propiedad de estilo. El método applymap() requiere una función que toma un escalar y devuelve un escalar.
Ejemplo:
Python3
# Highlighting text instead of the # cell's background df.style.applymap(lambda cell: 'color:red' if pd.isnull(cell) else '')
Producción:
Método 3: Resaltar el texto de la fila completa con valores nan
Podemos hacer esto usando el método apply()
Ejemplo:
Python3
# Highlighting text of the complete row df.style.apply(lambda row: np.repeat('color: red' if row.isnull().any() else '', row.shape[0]), axis=1)
Producción:
Método 4: Resaltar la fila completa con valores nan
Python3
# Highlighting the complete row df.style.apply(lambda row: np.repeat('background: red' if row.isnull().any() else '', row.shape[0]), axis=1)
Producción:
Solución 5: resaltar toda la columna con valores nan
Python3
# Highlighting column with nan values df.style.apply(lambda row: np.repeat('background: red' if row.isnull().any() else '', row.shape[0]), axis=0)
Producción:
Publicación traducida automáticamente
Artículo escrito por sumit_tyagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA