Définir les colonnes comme un index dans Pandas DataFrame

  1. Utilisation de set_index() pour faire de la colonne l’index dans les Pandas DataFrame
  2. Utiliser le paramètre index_col dans read_excel ou read_csv pour définir une colonne comme index dans Pandas DataFrame

Habituellement, dans une Pandas Dataframe, nous avons des numéros de série allant de 0 à la longueur de l’objet comme index par défaut. Nous pouvons également faire d’une colonne spécifique d’une dataframe son index. Pour cela, nous pouvons utiliser la fonction set_index() fournie dans Pandas, et nous pouvons également spécifier l’index de la colonne lors de l’importation d’une dataframe à partir d’un fichier Excel ou CSV.

Utilisation de set_index() pour faire de la colonne l’index dans les Pandas DataFrame

set_index() peut être appliqué à des listes, des séries, ou des cadres de données pour modifier leur index. Pour les Dataframes, set_index() peut aussi faire de multiples colonnes comme leur index.

Exemple :

import pandas as pd
import numpy as np

colnames = ['Name','Time','Course']
df = pd.DataFrame([['Jay',10,'B.Tech'],
                   ['Raj',12,'BBA'],
                   ['Jack',11,'B.Sc']], columns = colnames)

print(df)

Production :

   Name  Time  Course
0   Jay    10  B.Tech
1   Raj    12     BBA
2  Jack    11    B.Sc

La syntaxe pour faire des colonnes en tant qu’index :

dataframe.set_index(Column_name,inplace = True)

Créer une seule colonne comme index en utilisant set_index() :

import pandas as pd
import numpy as np

colnames = ['Name','Time','Course']
df = pd.DataFrame([['Jay',10,'B.Tech'],
                   ['Raj',12,'BBA'],
                   ['Jack',11,'B.Sc']], columns = colnames)

df.set_index('Name', inplace = True)

print(df)

Production :

      Time  Course
Name              
Jay     10  B.Tech
Raj     12     BBA
Jack    11    B.Sc

Faire plusieurs colonnes comme index :

import pandas as pd
import numpy as np

colnames = ['Name','Time','Course']
df = pd.DataFrame([['Jay',10,'B.Tech'],
                   ['Raj',12,'BBA'],
                   ['Jack',11,'B.Sc']], columns = colnames)

df.set_index(['Name','Course'], inplace = True)

print(df)

Production :

             Time
Name Course      
Jay  B.Tech    10
Raj  BBA       12
Jack B.Sc      11

Utiliser le paramètre index_col dans read_excel ou read_csv pour définir une colonne comme index dans Pandas DataFrame

Lors de la lecture d’une trame de données à partir d’un fichier Excel ou CSV, nous pouvons spécifier la colonne que nous voulons comme index du DataFrame.

Exemple :

import pandas as pd
import numpy as np
df = pd.read_excel("data.xlsx",index_col = 2)
print(df)

Production :

        Name  Time
Course            
B.Tech  Mark    12
BBA     Jack    10
B.Sc     Jay    11

Article connexe - Pandas DataFrame

  • Comment définir la valeur d'une cellule particulière dans Pandas DataFrame à l'aide de l'index
  • Comment convertir le dictionnaire Python en Pandas DataFrame