Réindexation dans Pandas DataFrame

La réindexation dans Pandas peut être utilisée pour modifier l`index des lignes et des colonnes dans un DataFrame. Les index peuvent être utilisés en référence à plusieurs index DataStructure associés à plusieurs séries panda ou panda DataFrame. Voyons comment nous pouvons réindexer les colonnes et les lignes dans un Pandas DataFrame.

Réindexer les lignes

Vous pouvez réindexer une ou plusieurs lignes en utilisant reindex () . Les valeurs par défaut ‚Äã‚Äãdans le nouvel index qui ne sont pas dans le bloc de données se voient attribuer NaN.

Exemple n° 1 :


# module d`importation numpy et pandas

import pandas comme pd

import numpy comme np


colonne = [ `a ` , ` b` , `c` , ` d` , `e` ]

index = [ `A` , ` B` , `C ` , ` D` , `E` ]


# créer une trame de données de valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ),

colonnes = colonne, index = index )

imprimer (df1)


print ( `Dataframe after reindexing rows:` ,

df1.reindex ([ `B` , ` D` , `A` , `C` , `E` ]))

Sortie :

Exemple n°2 :


# importer les modules numpy et pandas

importer pandas en tant que pd

importer numpy comme np


colonne = [ `a` , ` b` , `c` , ` d` , `e` ]

index = [ `A` , `B` , ` C` , `D` , ` E ` ]


# créer des données en nom des valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ),

colonnes = colonne, index = index )


# créer un nouvel index pour les lignes

new_index = [ `U` , ` A` , `B` , ` C` , `Z ` ]


imprimer (df1.reindex (new_index))

Sortie :

Réindexation des colonnes à l`aide du mot-clé axis

Il est possible de réindexer une ou plusieurs colonnes colonnes en utilisant reindex () et en spécifiant l`axe que nous voulons réindexer. Les valeurs par défaut ‚Äã‚Äãdans le nouvel index qui ne sont pas dans le bloc de données se voient attribuer NaN.

Exemple n° 1 :


# module d`importation numpy et pandas

import pandas comme pd

import numpy comme np


colonne = [ `a ` , ` b` , `c` , ` d` , `e` ]

index = [ `A` , ` B` , `C ` , ` D` , `E` ]


# créer une trame de données de valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ),

colonnes = colonne, index = index )

colonne = [ `e` , ` a` , `b` , `c` , ` d` ]


# créer un nouvel index pour les colonnes

imprimer (df1.reindex (colum, axis = ` colonnes` ))

Sortie :

Exemple n° 2 :


# import module numpy et pandas

import pandas as pd

import numpy as np


colonne = [ `a` , `b` , ` c` , ` d` , `e` ]

index = [ `A` , ` B` , `C` , ` D` , `E` ]


# créer une trame de données de valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ),

colonnes = colonne, index = index)


colonne = [ `a` , ` b` , `c` , ` g` , ` h` ]


# créer un nouvel index pour les colonnes

imprimer (df1.reindex (colum, axis = `columns` ))

Sortie :

Remplacement des valeurs manquantes ​​

Code # 1 : Vous pouvez renseigner les valeurs manquantes ‚Äã‚Äãd`un bloc de données en passant une valeur au mot-clé fill_value . Ce mot-clé remplace les valeurs NaN.


# import numpy and pandas module

importer pandas en tant que pd

importer numpy as np


colonne = [ ` a` , `b` , ` c` , ` d` , ` e` ]

index = [ ` A` , `B` , ` C` , `D` , ` E` ]


# créer une trame de données de valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ) ,

colonnes = colonne, index = index)


colonne = [ `a` , ` b` , `c` , `g` , `h` ]


# créer un nouvel index pour les colonnes

print (df1.reindex (colum, axis = `columns` , fill_value = 1.5 ))

Sortie :

Code # 2 : Remplacez les données manquantes par une chaîne.


# importer le module numpy et pandas

importer pandas en tant que pd

importer numpy comme np


colonne = [ `a` , ` b` , ` c` , ` d` , `e` ]

index = [ `A` , `B` , ` C` , `D` , `E` ]


# créer une trame de données de valeurs de tableau aléatoires ‚Äã‚Äã

df1 = pd.DataFrame (np.random.rand ( 5 , 5 ),

colonnes = colonne, index = index)


colonne = [ `a` , `b` , ` c` , ` g` , `h` ]


# créer un nouvel index pour les colonnes

print (df1.reindex (colum, axis = `columns` , fill_value = ` données missing` ))

Sortie :