Maison >développement back-end >Tutoriel Python >Comment transformer une table de données dans Pandas avec les valeurs de la colonne « Indicateur » devenant de nouvelles colonnes ?

Comment transformer une table de données dans Pandas avec les valeurs de la colonne « Indicateur » devenant de nouvelles colonnes ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-04 20:30:15401parcourir

How do I transform a data table in Pandas with the 'Indicator' column values becoming new columns?

Faire pivoter une trame de données dans Pandas

La tâche consiste à transposer une table de données au format CSV, où les valeurs de la colonne "Indicateur" deviennent les nouvelles colonnes. Le résultat souhaité est un format aplati dans lequel les lignes sont définies par « Pays » et « Année », et les colonnes sont des valeurs « Indicateur ».

Utilisation de .pivot

Pour réaliser l'opération pivot, on peut utiliser la méthode .pivot comme suit :

out = df.pivot(index=['Country', 'Year'], columns='Indicator', values='Value')

Cette méthode réorganise les données de telle sorte que le « Pays » et l'« Année » deviennent les indices de ligne et les valeurs de « l'Indicateur » deviennent les colonnes. La variable « out » résultante contient les données pivotées.

Pour renvoyer les données dans un format de tableau plat, vous pouvez utiliser .rename_axis pour éliminer l'étiquette « Indicateur » des colonnes et utiliser .reset_index pour restaurer « Pays ». et 'Année' sous forme de colonnes.

print(out.rename_axis(columns=None).reset_index())

Cela produit un tableau aplati avec 'Pays', 'Année', et les valeurs « Indicateur » sous forme de colonnes.

Utilisation de .pivot_table

En cas de combinaisons « Pays », « Année » et « Indicateur » en double dans le l'ensemble de données original, .pivot_table peut être utilisé. Il effectue une agrégation (moyenne par défaut) sur les valeurs en double.

out = df.pivot_table(
    index=['Country', 'Year'],
    columns='Indicator',
    values='Value')
print(out.rename_axis(columns=None).reset_index())

Cette approche aboutit à un tableau aplati dans lequel les valeurs en double sont moyennées et l'étiquette « Indicateur » est omise dans les colonnes.

Documentation pertinente

Pour plus de détails sur la refonte et les tableaux croisés dynamiques dans Pandas, reportez-vous aux ressources suivantes :

  • Guide d'utilisation du remodelage et des tableaux croisés dynamiques
  • Documentation Pandas : Remodelage et pivotement

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