Estilo de quadro de dados Pandas usando Pandas.Styler

Conteúdo

Este artigo foi publicado como parte do Data Science Blogathon

Introdução

Matriz bidimensional ou uma tabela com linhas e colunas. DataFrames são mais amplamente usados ​​em ciência de dados, aprendizado de máquina, computação científica e muitos outros campos, como mineração de dados, analise de dados, tomada de decisão e muito mais.

Os DataFrames do Pandas estão em formato tabular e também podemos aplicar estilos a esses DataFrames para torná-los mais interativos e fáceis de entender.. Por exemplo, se quisermos destacar qualquer valor particular ou tupla presente no DataFrame, podemos projetá-lo com a ajuda da classe de estilo Pandas DataFrame.

Pandas DataFrame style

Podemos aplicar qualquer tipo de formatação condicional ao DataFrame e exibir o estilo de um DataFrame dependendo da condição dos dados dentro, usando a propriedade DataFrame.Style. Esta propriedade retorna pandas. Objeto estilizador que possui várias maneiras úteis de formatar dados e exibir DataFrames.

O estilo é obtido por CSS. Vamos escrever “funções de estilo” que seriam tomados como escalares (valores únicos que representam uma unidade de dados), DataFrame ou string, e nós reembolsaremos indexado como DataFrames ou Series junto com pares “atributo: valor” CSS para esses valores.

Essas funções são gradualmente passadas para a classe Styler, que coleta todos os estilos por meio das funções antes da renderização.

Vamos entender os vários estilos para adicionar ao Pandas DataFrame, um por um:

Por exemplo, vamos criar um DataFrame que contém o resultado dos alunos como seus nomes, Matéria e Marcas Registradas. Vamos aplicar os diferentes tipos de estilos ao DataFrame e seus valores. Comecemos.

Definir o estilo da tabela DataFrame

Para adicionar estilo à tabela, usaremos o método set_table_style () da classe Styler no módulo Pandas. Vamos ver o exemplo:

#importando o módulo pandas
importar pandas como pd
#criando um DataFrame simples
Resultado = {'Nome': ['RAM', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
          'Sujeito': ['Física', 'Matemáticas', 'Química', 'História', 'Matemáticas', 'Inglês', 'Educação cívica'],
      'Marcas': [80, 90, 87, 65, 92, 89, 56]}
df = pd.DataFrame(Resultado)
#Mostrar df
df
#adicionando cor à borda da tabela
df.style.set_table_styles([{'seletor' : '','adereços' : [('fronteira','5px solid green')]}])

Produção:

350771-2834583
562292-5233323

No exemplo, podemos ver que a cor da borda é aplicada. E quando vimos o código, também entendemos que o estilo é aplicado na forma de CSS da mesma forma que aplicamos CSS a qualquer página HTML.

Aplicar cor de fundo ao DataFrame

Para aplicar a cor de fundo ao DataFrame, usaremos o método Styler.set_properties. Vamos ver o exemplo:

#importando o módulo pandas
importar pandas como pd
#criando um DataFrame simples
Resultado = {'Nome': ['RAM', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
          'Sujeito': ['Física', 'Matemáticas', 'Química', 'História', 'Matemáticas', 'Inglês', 'Educação cívica'],
      'Marcas': [80, 90, 87, 65, 92, 89, 56]}
df = pd.DataFrame(Resultado)
#aplicando a cor do fundo
df.style.set_properties(**{'cor de fundo': 'Preto',
                           'cor': 'ciano',
                           'Cor da borda': 'Branco'})

Produção:

932453-9279882

Neste exemplo, a cor de fundo é definida para preto, a cor da fonte está definida como ciano e a cor da borda é branca. Novamente, o código é escrito em formato CSS.

Destacando valores específicos:

Também podemos destacar qualquer valor específico presente no DataFrame com estilo. Eu gosto, adicione uma cor específica ao valor ou ao seu fundo. Neste exemplo, vamos destacar as notas mínimas e máximas dos alunos. Vamos ver o exemplo:

#importando o módulo pandas
importar pandas como pd
#criar um DataFrame simples
Resultado = {'Nome': ['RAM', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
          'Sujeito': ['Física', 'Matemáticas', 'Química', 'História', 'Matemáticas', 'Inglês', 'Educação cívica'],
      'Marcas': [80, 90, 87, 65, 92, 89, 56]}
df = pd.DataFrame(Resultado)

#aplicando destaque_max()
df.style.highlight_max()
#aplicando realce_min()
df.style.highlight_min()

Produção:

662175-3484552
Notas mais altas
115494-6148878
Marcas inferiores

Podemos ver que a classificação mais alta é 92 dado a Ria em Matemática e a nota mais baixa é 56 concedido a Tarun em Educação Cívica. As operações máximas e mínimas só podem ser aplicadas a colunas numéricas.

Adicione gráficos de barras ao DataFrame:

Podemos adicionar gráficos de barras no DataFrame dependendo dos valores da coluna. Neste exemplo, temos informações sobre os alunos como Nome, Era, Altura e peso. Agregaremos un gráfico de barras a las columnas numéricas. Vamos ver o exemplo:

#importando o módulo pandas
importar pandas como pd
#criar um DataFrame simples
Info = {'Nome': ['RAM', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
        'Era': [20, 23, 25, 20, 26, 22, 19],
        'Altura': [5.8, 5.3, 5.0, 5.6, 5.5, 5.7, 5.0],
        'Peso': [52, 56, 60, 59, 61, 55, 50]}
df = pd.DataFrame(Informações)
#Mostrar df
df
#adicionando gráfico de barras
df.style.bar(subconjunto =['Era', 'Altura', 'Peso'], color ="Lawngreen")

Produção:

607876-4505880
459009-8757113

Os gráficos de barras são agregados com base nos valores da coluna.

Adicionar fundo gradiente ao DataFrame:

Também adicionamos cores gradientes ao fundo do DataFrame. Para adicionar cores gradientes, também temos que importar o módulo do mar. Vamos ver o exemplo:

#importando o módulo pandas
importar pandas como pd
#criar um DataFrame simples
Info = {'Nome': ['RAM', 'Shyam', 'David', 'Albert', 'Riya', 'Jiya', 'Tarun'],
        'Era': [20, 23, 25, 20, 26, 22, 19],
        'Altura': [5.8, 5.3, 5.0, 5.6, 5.5, 5.7, 5.0],
        'Peso': [52, 56, 60, 59, 61, 55, 50]}
df = pd.DataFrame(Informações)
#importando módulo de origem marítima
importado do mar como sns
#obtendo a paleta de cores
cm = sns.light_palette("laranja", as_cmap = True)

#aplicando no dataframe

df.style.background_gradient (cmap = cm)

Saída:
150457-4959241

O estilo de cor gradiente adicionado ao plano de fundo do DataFrame.

Neste blog, vimos vários estilos que podem ser adicionados a um DataFrame para uma exibição mais interativa de DataFrames. Deixe-me entender se houver algum comentário ou feedback.

Obrigado pela leitura.

A mídia mostrada neste artigo não é propriedade da DataPeaker e é usada a critério do autor.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.