Pandas remodeler

Pandas remodeler
«Les données existent dans une variété de tailles et de formes. Nous devons souvent remodeler les données lorsque vous y traitez afin qu'elle soit idéalement assimilée pour la tâche actuelle. Nous examinerons 2 méthodes simples pour remodeler une dataframe dans cet article."

Nous pouvons utiliser le «PD.Pivot () ”Fonction pour remodeler le dataframe du format long existant à un long. Un nouveau dataframe peut être produit en utilisant la fonction de pivot à partir d'une fonction existante. Le «PD.pivot () »accepte trois arguments. Pour utiliser cette méthode, nous devons utiliser la syntaxe suivante:

Le «PD.La méthode MELT () »peut être utilisée pour convertir le dataframe de large au format long. Lorsqu'il est nécessaire d'utiliser une colonne particulière comme identifiant, cette fonction peut être utilisée. La syntaxe pour utiliser cette méthode est donnée ici:

La mise en œuvre pratique de ces deux techniques sera apprise dans ce tutoriel à l'aide de programmes Python.

Exemple 1: Utilisation de la méthode Pandas Pivot () pour remodeler le dataframe de long à large

La première illustration mettra en œuvre le concept d'utilisation des pandas «PD.PIVOT () ”Méthode pour remodeler le dataframe d'un long format en un large. Voyons voir comment ça fonctionne.

L'outil «Spyder» est lancé pour compiler le programme Python en utilisant son environnement. Le code a commencé par importer la bibliothèque Pandas. De plus, nous avons fait de «Pd» l'alias pour «pandas».

Pour construire un dataframe, nous utiliserons la méthode Pandas «PD.Trame de données()". Cette méthode crée une dataframe avec des valeurs fournies. Le «PD.La méthode DataFrame () »est invoquée pour créer un DataFrame avec 3 colonnes« groupe »,« tâche »et« score ». Les colonnes peuvent stocker des valeurs avec des données de données différentes, mais la longueur des valeurs restera égale pour toutes les colonnes. La première colonne, «groupe», contient des types de valeurs de chaîne qui sont «x», «x», «x», «y», «y», «y», «z», «z» et «z ". La deuxième colonne, «tâche», a des valeurs entières; «4», «5», «6», «4», «5», «6», «4», «5» et «6». Pour la dernière colonne, «Score», nous avons spécifié des valeurs comme «13», «18», «3», «9», «11», «15», «5», «14» et «21».

Le «PD.La méthode DataFrame () »générera un DataFrame avec ces valeurs fournies. Pour stocker le contenu de ce DataFrame, nous avons créé un objet DataFrame, «Concours». Cet objet empêchera le dataframe à utiliser par la suite. Ensuite, pour le voir, la méthode de Python est utilisée, qui est «print ()». La méthode «print ()» prendra l'objet DataFrame «Concours» en entrée et montrera son contenu sur la fenêtre de sortie.

Pour exécuter le script, nous devons simplement appuyer sur l'option «Exécuter le fichier» et la sortie sera affichée. Ici, nous avons obtenu un dataframe avec 3 colonnes qui détiennent 9 lignes. Nous pouvons voir que la colonne «Groupe» a trois valeurs uniques, qui sont «X», «Y» et «Z». Et la colonne «Tâche» contient également trois valeurs distinctes «4», «5» et «6».

Par conséquent, pour remodeler cette longue frabe de données à un large, nous utiliserons la fonction fournie par Pandas «PD.pivot()". Nous avons invoqué le «PD.PIVOT () ”Méthode et a passé 4 paramètres qui sont« df »,« index »,« colonnes »et« valeurs ». Le «DF» est le nom du DataFrame que nous avons fourni en tant que «concurrence». «L'index» prendra la colonne, qui doit être utilisée comme colonne d'index. Ici, nous avons spécifié la colonne «Groupe» comme «Index». L'attribut «colonnes» obtient une colonne dont il utilisera les données comme les étiquettes de la colonne. Nous avons fourni la colonne «tâche» pour l'attribut «colonnes». Il prendra les valeurs distinctes de la «tâche» et en fera des colonnes. Les «valeurs» extraire les valeurs de la colonne fournie, i.e., la colonne «score» et les mettre dans les colonnes créées correspondant à l'indice de ces valeurs. Le résultat sera présenté en appelant la fonction «print ()».

Ici, nous pouvons voir que les valeurs distinctes de la colonne «Groupe» sont définies comme une colonne d'index, les valeurs uniques de la colonne «Tâche» sont utilisées comme titres de colonne, et les valeurs sont tirées de la colonne «Score». Le DataFrame est comprise dans un format large en le rompant à partir d'un long arrangement.

Exemple 2: Utilisation de la méthode Pandas Melt () pour remodeler le dataframe de large à long

La technique ci-dessus a remodelé le dataframe de long à large; Nous verrons son contraire, qui transforme le dataframe d'un format large à un long. Cette instance emploiera les pandas «PD.Fonction Melt () ”pour remodeler nos données fournies fournies dans un long format.

Pour implémenter cette méthode, nous devons initialement construire le dataframe. Puisque Pandas nous offre une méthode intégrée «PD.DataFrame () ”pour générer un dataframe. Nous avons donc invoqué cette fonction et l'avons lancé avec 5 colonnes. Les colonnes sont «jetons» avec type de données de chaîne, «voiture», «camion», «bus» et «moto» avec un type de données entier. Les valeurs de la colonne «Token» sont «P01», «P02», «P03» et «P04». Pour la colonne «voiture», les valeurs sont «18», «41», «39» et «24». La liste des valeurs «11», «33», «17» et «25» est stockée dans la colonne «Truck». Le «bus» a ces valeurs «42», «38», «10» et «21». La dernière colonne, «Motorbike», tient les entrées «16», «34», «21» et «45».

Pour préserver le dataframe, nous avons généré un objet DataFrame, «Transport». Pour afficher ce contenu, la méthode «print ()» est invoquée avec l'objet DataFrame comme entrée.

Notre dataframe avec un large arrangement de valeurs est présenté sur la console Python ayant 5 colonnes et 4 lignes.

Dans cette démonstration, nous exercerons le «PD.Méthode Melt () »pour atteindre le résultat attendu.

Le «PD.La fonction melt () ”est appelée. Ici, l'attribut qu'il possède est «df_name», que nous avons fourni comme «transport», et le «id_vars» prend la colonne, qui sera utilisée comme identifiant autour de laquelle nous ferons fondre le dataframe. Nous avons sélectionné la colonne «Token» pour «id_var». Le "Value_Var" obtient des colonnes qu'il doit unpivot; Si nous ne spécifions pas de colonnes, elle prendra toutes les colonnes sauf celle-ci en tant qu'identifiant. Ainsi, les colonnes que nous avons fournies pour modifier une «voiture», «camion», «bus» et «moto». Nous avons créé une variable «transport» et lui avons attribué la sortie générée en invoquant le «PD.Fonction Melt () ”. Enfin, le résultat est présenté à la vue en utilisant la méthode «print ()».

Le dataframe transformé que nous obtenons a été affiché en les remodelant en un format long. Le long dataframe a 3 colonnes «jeton», «variable» et «valeurs». Le «jeton» est utilisé comme identifiant pour le reste des valeurs de la colonne. La «variable» stocke les étiquettes de la colonne en correspondance avec l'identifiant. Et la «valeur» a les valeurs pour chaque entrée.

Conclusion

Il pourrait y avoir une situation où la forme du dataframe pourrait ne pas convenir à votre tâche. Le dataframe peut être dans un format long ou un format large. Le large éventail de données à formater peut être remodelé en un long, et la longueur de données formatée peut être modifiée en une disposition longue en utilisant les méthodes de pandas. Pour convertir le dataframe en un format large, nous avons utilisé le «PD.Fonction pivot () ”en l'implémentant pratiquement sur l'outil Spyder. De même, pour remodeler la longueur de données de forme large, nous avons utilisé le «PD.Fonction Melt () ”dans le 2nd exemple. Ces deux méthodes sont exécutables et très utiles chaque fois que vous trouvez la nécessité de remodeler votre dataframe.