Pandas remodelant les formats longs et larges selon deux variables
La manipulation des données entre les formats longs et larges est une tâche courante dans l'analyse des données. Dans la bibliothèque Pandas de Python, les opérations de fusion et d'empilement/dépilage sont couramment utilisées à cette fin. Cependant, certains scénarios peuvent survenir dans lesquels une approche plus simple est souhaitée.
L'un de ces scénarios consiste à remodeler des données qui incluent deux variables (par exemple, une variable numérique comme les ventes et une variable catégorielle comme le produit) dans un format large. . L'utilisation des méthodes de fusion/empilage/dépilage seule peut ne pas fournir le résultat souhaité.
Dans cet exemple, nous avons des données « longues » avec les colonnes suivantes : Vendeur, Taille, produit et prix. Notre objectif est de remodeler ces données dans un format « large » avec des colonnes pour chaque produit unique, y compris son prix correspondant.
Salesman Height product price Knut 6 bat 5 Knut 6 ball 1 Knut 6 wand 3 Steve 5 pen 2
Pour y parvenir, nous pouvons tirer parti de la fonction pivot de Pandas, qui fournit un moyen de créer des tableaux croisés dynamiques. Nous spécifions la colonne d'index (Vendeur), les colonnes pivot (obs) et la colonne de valeurs (prix).
Voici le code Python pour remodeler les données :
<code class="python">wide_df = df.pivot(index='Salesman', columns='product', values='price')</code>
Cela produira le format "large" souhaité :
Salesman Height product_1 price_1 product_2 price_2 product_3 price_3 Knut 6 bat 5 ball 1 wand 3 Steve 5 pen 2 NA NA NA NA
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!