Maison  >  Article  >  interface Web  >  Comment pouvez-vous utiliser le style Pandas DataFrame pour coder en couleur des éléments spécifiques d'un tableau et améliorer la visualisation des données ?

Comment pouvez-vous utiliser le style Pandas DataFrame pour coder en couleur des éléments spécifiques d'un tableau et améliorer la visualisation des données ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-03 17:52:29655parcourir

How can you use Pandas DataFrame styling to color code specific elements of a table and enhance data visualization?

Styling des DataFrames Pandas pour une coloration de tableau personnalisable

Dans le domaine de l'analyse de données, Pandas est devenu la pierre angulaire de ses capacités complètes de manipulation de données. . Ses dernières itérations ont introduit une nouvelle fonctionnalité puissante : le style DataFrame. Cette fonctionnalité permet aux utilisateurs d'améliorer la présentation visuelle de leurs trames de données, en fournissant des repères visuels et de la clarté grâce à la personnalisation des couleurs.

Pour démontrer cette nouvelle puissance, considérons le problème de la transformation d'une trame de données pandas standard en un tableau avec des couleurs spécifiées. éléments codés :

Problème :

Étant donné une trame de données contenant à la fois des données et des informations d'index, la tâche consiste à modifier l'apparence du tableau en appliquant des couleurs à des lignes spécifiques, les valeurs d'index et les en-têtes. Dans ce cas, il est souhaité de mettre en évidence toutes les valeurs des lignes correspondant à « MOS » dans une certaine couleur, tout en différenciant également la ligne d'en-tête, les colonnes d'index les plus à gauche et le reste des cellules du tableau avec des couleurs d'arrière-plan distinctes.

Solution :

Pour répondre à ce besoin, la nouvelle fonctionnalité de style des pandas entre en jeu. La méthode DataFrame.style.apply() fournit une interface flexible pour appliquer des règles de style personnalisées au dataframe. En définissant une fonction de style, nous pouvons manipuler l'apparence visuelle de cellules individuelles en fonction de leur contenu ou de leurs métadonnées.

Dans ce cas, nous créons une fonction de style personnalisée qui vérifie si la valeur d'index d'une cellule pour le deuxième niveau est 'MOS'. Si c'est le cas, nous appliquons la couleur « orange foncé » au texte. Sinon, nous utilisons 'darkblue'.

<code class="python">import pandas as pd

# Create dataframe
arrays = [['Midland', 'Midland', 'Hereford', 'Hereford', 'Hobbs','Hobbs', 'Childress',
           'Childress', 'Reese', 'Reese', 'San Angelo', 'San Angelo'],
          ['WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples)
df = pd.DataFrame(np.random.randn(12, 4), index=arrays,
                  columns=['00 UTC', '06 UTC', '12 UTC', '18 UTC'])

# Define custom style function
def highlight_MOS(s):
    is_mos = s.index.get_level_values(1) == 'MOS'
    return ['color: darkorange' if v else 'color: darkblue' for v in is_mos]

# Apply style function
s = df.style.apply(highlight_MOS)</code>

La trame de données stylisée résultante (disponible à la fin de l'appel style.apply()) donne un tableau avec des lignes 'MOS' colorées en orange foncé, tandis que le la ligne d'en-tête, les colonnes d'index les plus à gauche et les cellules restantes conservent leurs couleurs d'origine. Cette personnalisation ajoute une distinction visuelle au tableau, facilitant l'identification et l'analyse de points de données spécifiques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn