Este artículo fue publicado como parte del Blogatón de ciencia de datos
Introducción
Matriz bidimensional o una tabla con filas y columnas. Los DataFrames se utilizan más ampliamente en ciencia de datos, aprendizaje automático, computación científica y muchos otros campos como minería de datos, análisis de datos, toma de decisiones y muchos más.
Pandas DataFrames están en formato tabular y también podemos aplicar estilos sobre estos DataFrames para hacerlos más interactivos y fáciles de entender. Por ejemplo, si queremos resaltar cualquier valor o tupla en particular presente en el DataFrame, podemos diseñarlo con la ayuda de la clase de estilo de Pandas DataFrame.
Estilo Pandas DataFrame
Podemos aplicar cualquier tipo de formato condicional al DataFrame y visualizar el estilo de un DataFrame dependiendo de la condición de los datos dentro, usando la propiedad DataFrame.Style. Esta propiedad devuelve pandas. Objeto Styler que tiene varias formas útiles para formatear datos y mostrar DataFrames.
El estilo se logra mediante CSS. Escribiremos «funciones de estilo» que se tomarían como escalares (valores únicos que representan una unidad de datos), DataFrame o serie, y devolveremos indexado como DataFrames o Series junto con pares «atributo: valor» de CSS para esos valores.
Estas funciones se pasan gradualmente a la clase Styler que recopila todos los estilos a través de las funciones antes de renderizar.
Entendamos los diversos estilos para agregar a Pandas DataFrame uno por uno:
Por ejemplo, crearemos un DataFrame que contenga el resultado de los estudiantes como sus Nombres, Materia y Marcas. Aplicaremos los distintos tipos de estilos al DataFrame y a sus valores. Empecemos.
Configuración del estilo de la tabla DataFrame
Para agregar estilo a la tabla usaremos el método set_table_style () de la clase Styler en el módulo Pandas. Veamos el ejemplo:
#importing the pandas module import pandas as pd #creating a simple DataFrame Result = {'Name': ['Ram', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'], 'Subject': ['Physics', 'Maths', 'Chemistry', 'History', 'Maths', 'English', 'Civics'], 'Marks': [80, 90, 87, 65, 92, 89, 56]} df = pd.DataFrame(Result) #Show df df #adding color to border of table df.style.set_table_styles([{'selector' : '','props' : [('border','5px solid green')]}])
Producción:
En el ejemplo, podemos ver que se aplica el color del borde. Y al ver el código también entendimos que el estilo se aplica en forma de CSS como aplicamos CSS para cualquier página HTML.
Aplicar color de fondo a DataFrame
Para aplicar el color de fondo al DataFrame usaremos el método Styler.set_properties. Veamos el ejemplo:
#importing the pandas module import pandas as pd #creating a simple DataFrame Result = {'Name': ['Ram', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'], 'Subject': ['Physics', 'Maths', 'Chemistry', 'History', 'Maths', 'English', 'Civics'], 'Marks': [80, 90, 87, 65, 92, 89, 56]} df = pd.DataFrame(Result)
#applying backgound color df.style.set_properties(**{'background-color': 'black', 'color': 'cyan', 'border-color': 'white'})
Producción:
En este ejemplo, el color de fondo se establece en negro, el color de fuente se establece en cian y el color del borde es blanco. Nuevamente, el código está escrito en formato CSS.
Destacando los valores específicos:
También podemos resaltar cualquier valor específico presente en el DataFrame con estilo. Me gusta, agregue un color específico al valor o en su fondo. En este ejemplo, destacaremos las notas mínimas y máximas de los alumnos. Veamos el ejemplo:
#importing the pandas module import pandas as pd
#creating a simple DataFrame
Result = {'Name': ['Ram', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
'Subject': ['Physics', 'Maths', 'Chemistry', 'History', 'Maths', 'English', 'Civics'],
'Marks': [80, 90, 87, 65, 92, 89, 56]}
df = pd.DataFrame(Result)
#applying highlight_max()
df.style.highlight_max()
#applying highlight_min()
df.style.highlight_min()
Producción:
Podemos ver que la calificación más alta es 92 dada a Ria en Matemáticas y la calificación más baja es 56 otorgada a Tarun en Educación Cívica. Las operaciones max y min solo se pueden aplicar a columnas numéricas.
Agregar gráficos de barras en el DataFrame:
Podemos agregar gráficos de barras en el DataFrame dependiendo de los valores de la columna. En este ejemplo, tenemos información sobre los estudiantes como Nombre, Edad, Altura y Peso. Agregaremos un gráfico de barras a las columnas numéricas. Veamos el ejemplo:
#importing the pandas module import pandas as pd
#creating a simple DataFrame Info = {'Name': ['Ram', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'], 'Age': [20, 23, 25, 20, 26, 22, 19], 'Height': [5.8, 5.3, 5.0, 5.6, 5.5, 5.7, 5.0], 'Weight': [52, 56, 60, 59, 61, 55, 50]}
df = pd.DataFrame(Info)
#Show df df
#adding bar chart
df.style.bar(subset=['Age', 'Height', 'Weight'], color="lawngreen")
Producción:
Los gráficos de barras se agregan según los valores de las columnas.
Agregar fondo degradado a DataFrame:
También agregamos colores degradados al fondo del DataFrame. Para agregar colores degradados, también tenemos que importar el módulo seaborn. Veamos el ejemplo:
#importing the pandas module import pandas as pd
#creating a simple DataFrame Info = {'Name': ['Ram', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'], 'Age': [20, 23, 25, 20, 26, 22, 19], 'Height': [5.8, 5.3, 5.0, 5.6, 5.5, 5.7, 5.0], 'Weight': [52, 56, 60, 59, 61, 55, 50]}
df = pd.DataFrame(Info)
#importing seaborn module import seaborn as sns
#getting the color palette cm = sns.light_palette("orange", as_cmap=True)
#applying on dataframe
df.style.background_gradient (cmap = cm)
Output:
El estilo de color degradado agregado al fondo del DataFrame.
En este blog, hemos visto varios estilos que se pueden agregar a un DataFrame para una visualización más interactiva de DataFrames. Déjeme entender si hay algún comentario o retroalimentación.
Gracias por leer.
Los medios que se muestran en este artículo no son propiedad de DataPeaker y se utilizan a discreción del autor.