Retourner au courant

Pandas : Ajouter une ligne à la fin d'un DataFrame

Cet article présente comment ajouter une ligne à la fin d'un Pandas DataFrame

ENFR

Avec Pandas, il n’y a pas de méthode qui permet d’ajouter seulement une ligne (une liste) à un DataFrame. Il faut donc créer un nouveau DataFrame avec la ligne à ajouter et concaténer les deux DataFrames. Si vous comptez ajouter ligne par ligne, il serait peut-être plus judicieux d’utiliser initialement un dictionnaire, des listes ou bien des tableaux numpy.

Ajouter une ligne au début ou à la fin d’un DataFrame

La méthode prise en charge consiste à créer un DataFrame d’une ligne puis à le combiner avec concat().

Il y a en effet plusieurs moyens de faire cela. Ici, je vous propose un exemple simple avec le dataframe suivant :

abc
123
456
789

Nous souhaitons ajouter la ligne suivante :

abc
101112

Avec la fonction concat()

La fonction concat() permet également de fusionner deux DataFrames.

DataFrame.append() a été supprimée dans pandas 2.0 : les anciens exemples qui l’utilisent doivent être remplacés par concat().

Nous allons donc créer un DataFrame avec la ligne à ajouter et le fusionner avec le DataFrame initial :

import pandas as pd

# Création du DataFrame initial
df = pd.DataFrame([[1,2,3], [4,5,6], [7,8,9]], columns=['a','b','c'])

# Création du DataFrame contenant la ligne à ajouter
df2 = pd.DataFrame([[10,11,12]], columns=['a','b','c'])

# Fusion des deux DataFrame
df = pd.concat([df, df2], ignore_index=True)

# Affichage du résultat
print(df)

Le DataFrame obtenu contient la nouvelle ligne à l’index 3.