HOW TO FIX ATTRIBUTERROR: ‘DATAFRAME’ OBJECT HAS NO ATTRIBUTE ‘APPEND’
Depuis la sortie d’une nouvelle version importante de pandas, certaines fonctionnalités obsolètes dans les anciennes versions ne fonctionneront plus. L’une de ces méthodes est la méthode pandas.DataFrame.append() qui a été obsolète depuis la version pandas 1.4.0 (il en va de même pour l’API Series, pandas.Series.append()). À partir de la version pandas 2.0.0, la méthode append() a été complètement supprimée. Le code faisant référence à cette méthode signalera désormais l’erreur suivante : AttributeError: ‘DataFrame’ object has no attribute ‘append’.
COMMENT CONCATÉNER DES DATAFRAMES PANDAS DANS PANDAS V2.0.0+
Dans les anciennes versions de pandas, la concaténation de DataFrames pouvait être réalisée à l’aide de la méthode append(). Cependant, depuis la version pandas 2.0, pour concaténer plusieurs DataFrames ou Series ensemble, vous devriez plutôt appeler la méthode concat(). Voici un exemple illustrant la nouvelle syntaxe compatible avec pandas v2.0 :
“`
# Nouvelle syntaxe, compatible avec pandas v2.0
import pandas as pd
# DataFrames
df1 = pd.DataFrame([[1, 2], [3, 4]], columns=list(‘AB’))
df2 = pd.DataFrame([[5, 6], [7, 8]], columns=list(‘AB’))
pd.concat([df1, df2])
# Series
pd.concat([pd.Series([1, 2]), pd.Series([3, 4])])
“`
Si vous avez des doutes sur la version de pandas que vous utilisez, vous pouvez le faire en appelant le snippet suivant :
“`
import pandas as pd
print(pd.__version__)
“`
En résumé, la méthode append() étant obsolète depuis pandas v1.4.0 et étant complètement supprimée depuis pandas v2.0, vous devriez plutôt utiliser la méthode concat() pour concaténer plusieurs DataFrames ou Series ensemble.
### CONCLUSION
La mise à jour de pandas peut entraîner des erreurs lors de la concaténation de DataFrames, surtout lorsqu’on utilise l’ancienne méthode append(). Cependant, la nouvelle méthode concat() peut facilement prendre sa place. En fin de compte, il est important d’être conscient de la version de pandas que vous utilisez et d’appliquer les méthodes recommandées en conséquence.
### SOURCES
– [Documentation de pandas](https://pandas.pydata.org/docs/user_guide/whatsnew/v2.0.0.html#removed-apis)
– [Stack Overflow – Concatenating Pandas dataframes using a new syntax](https://stackoverflow.com/questions/65566154/concatenating-pandas-dataframes-using-a-new-syntax)
– [Towards Data Science – Concatenating DataFrames with Pandas](https://towardsdatascience.com/concatenating-dataframes-with-pandas-83b18d4b1194)