Pandas DataFrame DataFrame.reindex() Fonction

Minahil Noor 30 janvier 2023
  1. Syntaxe de pandas.DataFrame.reindex()
  2. Exemples de codes: DataFrame.reindex()
  3. Exemples de codes: DataFrame.reindex() pour réindexer les colonnes
  4. Exemples de codes: DataFrame.reindex() Méthode pour remplir les valeurs manquantes avec fill_value
  5. Exemples de codes: DataFrame.reindex() pour remplir les valeurs manquantes à l’aide du paramètre method
Pandas DataFrame DataFrame.reindex() Fonction

Python Pandas DataFrame.reindex() modifie l’index d’une DataFrame. Il modifie les index sur l’axe spécifié. Les nouveaux index ne contiennent pas de valeurs. Il fournit des paramètres facultatifs pour remplir ces valeurs.

Syntaxe de pandas.DataFrame.reindex()

DataFrame.dropna(
    labels, index, columns, axis, method, copy, level, fill_value, limit, tolerance
)

Paramètres

labels Il s’agit d’une structure de type tableau qui contient les noms des nouveaux index.
index, columns Il s’agit d’une structure de type tableau qui contient les noms des nouveaux index. Il doit être spécifié à l’aide du mot clé index ou columns.
axis Il s’agit d’un “entier” ou d’une string. Il indique l’axe cible soit des lignes soit des colonnes. Il peut s’agir de 0 ou index et 1 ou columns.
method Ce paramètre spécifie la méthode pour remplir les valeurs manquantes dans le DataFrame réindexé.
Il a quatre possibilités: None, backfill / bfill, pad / ffill, Nearest.
Cela ne s’applique que si notre DataFrame ou Series a une séquence d’index croissant ou décroissant.
copy Boolean. Par défaut, c’est True. Il retourne un nouvel objet.
level C’est un entier ou un nom. Il fait correspondre les valeurs d’index à un niveau multi-index réussi.
fill_value Il a une valeur scalaire. C’est la valeur pour remplir les valeurs manquantes.
limit C’est un entier. Il indique la limite des éléments consécutifs tout en remplissant les valeurs manquantes.
tolerance Il indique la différence entre l’original et les nouvelles étiquettes en cas de correspondances inexactes.

Revenir

Il retourne un DataFrame avec les index modifiés.

Exemples de codes: DataFrame.reindex()

Par défaut, l’axe est 0, c’est-à-dire les lignes, donc les lignes seront réindexées.

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 75, 4: 95},
                    'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
                    'Obtained Marks': {0: 56, 1: 75, 2: 82, 3: 64, 4: 67}})
print(dataframe)

La trame de données de démonstration est la suivante.

   Attendance    Name  Obtained Marks
0          60  Olivia              56
1         100    John              75
2          80   Laura              82
3          75     Ben              64
4          95   Kevin              67

Les index en Python commencent à partir de 0. Nous allons réindexer notre DataFrame et les nouveaux index commenceront à partir de 1.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
    }
)

dataframe1 = dataframe.reindex([1, 2, 3, 4, 5])
print(dataframe1)

Production:

   Attendance   Name  Obtained Marks
1       100.0   John            75.0
2        80.0  Laura            82.0
3        75.0    Ben            64.0
4        95.0  Kevin            67.0
5         NaN    NaN             NaN

Ici, 5 est un nouvel index. Ainsi, les valeurs du nouvel index sont NaN.

Exemples de codes: DataFrame.reindex() pour réindexer les colonnes

Il existe deux façons de réindexer les colonnes. L’une consiste à spécifier des étiquettes avec le mot clé column et l’autre à l’aide du paramètre axis. Le mieux est de spécifier les étiquettes avec le mot-clé de la colonne.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
    }
)

dataframe1 = dataframe.reindex(columns=["Presents", "Name", "Marks"])

print(dataframe1)

Production:

   Presents    Name  Marks
0       NaN  Olivia    NaN
1       NaN    John    NaN
2       NaN   Laura    NaN
3       NaN     Ben    NaN
4       NaN   Kevin    NaN

L’ancien index est affecté avec les anciennes valeurs. Les nouveaux index ont des valeurs NaN.

Nous pourrions également réindexer les colonnes avec le paramètre axis.

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
    }
)

dataframe1 = dataframe.reindex(["Presents", "Name", "Marks"], axis="columns")

print(dataframe1)

Exemples de codes: DataFrame.reindex() Méthode pour remplir les valeurs manquantes avec fill_value

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
    }
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], fill_value=0)
print(dataframe1)

Production:

   Attendance   Name  Obtained Marks
1         100   John              75
2          80  Laura              82
3          75    Ben              64
4          95  Kevin              67
5           0      0               0

Les valeurs manquantes sont maintenant remplies de 0.

Exemples de codes: DataFrame.reindex() pour remplir les valeurs manquantes à l’aide du paramètre method

import pandas as pd

dataframe = pd.DataFrame(
    {
        "Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
        "Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
        "Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
    }
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], method="ffill")
print(dataframe1)

Production:

 Attendance   Name  Obtained Marks
1         100   John              75
2          80  Laura              82
3          75    Ben              64
4          95  Kevin              67
5          95  Kevin              67

La méthode ffill a rempli les valeurs manquantes avant avec la dernière valeur disponible.

Article connexe - Pandas DataFrame