Supprimer des colonnes ou lignes avec GeoDataFrame.drop()
Lors du traitement de données géospatiales avec GeoPandas, il est fréquent de devoir supprimer certaines colonnes ou lignes devenues inutiles, redondantes, ou incorrectes. Pour cela, la méthode drop()
du GeoDataFrame
est l’outil approprié.
Cette méthode permet de retirer :
- Des colonnes, en spécifiant leur nom avec le paramètre
axis=1
oucolumns=
- Des lignes, en spécifiant leur index avec
axis=0
ouindex=
La suppression peut se faire soit :
- de manière temporaire (en conservant l’original),
- soit de manière permanente en ajoutant
inplace=True
.
Voici quelques cas d’usage courants :
- Éliminer une colonne d’information inutile comme un identifiant interne
- Supprimer les lignes contenant des valeurs anormales ou aberrantes
- Nettoyer un jeu de données avant analyse ou visualisation
La méthode drop()
offre ainsi une grande flexibilité pour ajuster et affiner les GeoDataFrame
selon les besoins de l’analyse géospatiale.
Fonctions :
-
GeoDataFrame.drop()
La méthode GeoDataFrame.drop() permet de supprimer des colonnes ou des lignes d’un GeoDataFrame. Cette fonction est identique à celle de pandas.DataFrame.drop(), mais elle conserve la géométrie du GeoDataFrame et peut supprimer des colonnes de données géospatiales.
Importation :
import geopandas as gpd
Attributs :
Paramètre Type Description Valeur par défaut labels
str ou list Nom(s) de la ou des colonnes ou index à supprimer. None
axis
int, str Si 0
, supprime les lignes ; si1
, supprime les colonnes.0
inplace
bool Si True
, modifie le GeoDataFrame en place, sinon retourne un nouveau GeoDataFrame.False
errors
str Si 'raise'
, lève une erreur si la colonne ou ligne n'existe pas. Si'ignore'
, ne fait rien si la colonne ou ligne n'existe pas.'raise'
Exemple de code :
import geopandas as gpd from shapely.geometry import Point # Création d’un GeoDataFrame avec des géométries gdf = gpd.GeoDataFrame({ 'id': [1, 2, 3], 'geometry': [Point(0, 0), Point(1, 1), Point(2, 2)], 'name': ['A', 'B', 'C'] }) # Suppression de la colonne 'name' gdf_dropped = gdf.drop('name', axis=1) # Affichage du GeoDataFrame après suppression print(gdf_dropped)
Explication du code :
Nous créons un
GeoDataFrame
avec des colonnesid
,geometry
etname
. Ensuite, on supprime la colonnename
du GeoDataFrame, en conservant les géométries.
Avantages :
-
Utile pour nettoyer un
GeoDataFrame
en supprimant des colonnes non nécessaires ou des lignes indésirables. -
Conserve la géométrie lors de la suppression.
-
Option
inplace=True
permet de modifier directement le GeoDataFrame sans avoir à créer une nouvelle variable.
-