Ga naar hoofdinhoud

Pandas Drop Duplicates-tutorial

Leer hoe je duplicaten verwijdert in Python met pandas.
Bijgewerkt 2 okt 2026  · 4 min lezen

Verken met AI

ChatGPTClaudePerplexity

Duplicaten verwijderen is essentieel om accurate tellingen te krijgen, omdat je vaak niet hetzelfde item meerdere keren wilt meetellen. In Python kun je dit doen met de Pandas-module, die een methode heeft genaamd drop_duplicates.

Laten we met een paar voorbeelden bekijken hoe je deze gebruikt.

Duplicaatnamen verwijderen

Stel, je hebt een dataframe met dierenartsbezoeken en de dierenartspraktijk wil weten hoeveel honden van elk ras hun praktijk hebben bezocht. In je dataset staan echter honden zoals Max en Stella die meer dan eens bij de dierenarts zijn geweest. Je kunt dus niet simpelweg het aantal van elk ras in de kolom breed tellen.

print(vet_visits)
          date     name        breed  weight_kg
0   2018-09-02    Bella     Labrador      24.87
1   2019-06-07      Max     Labrador      28.35
2   2018-01-17   Stella    Chihuahua       1.51
3   2019-10-19     Lucy    Chow Chow      24.07
..         ...      ...          ...        ...
71  2018-01-20   Stella    Chihuahua       2.83
72  2019-06-07      Max    Chow Chow      24.01
73  2018-08-20     Lucy    Chow Chow      24.40
74  2019-04-22      Max     Labrador      28.54

Om dit te bereiken, verwijder je rijen die een hondennaam bevatten die eerder al voorkomt; met andere woorden: je haalt elke hondennaam slechts één keer uit de dataset.

Dit doe je met de methode drop_duplicates. Die neemt een argument subset, de kolom waarop we duplicaten willen vinden. In dit geval willen we alle unieke namen.

vet_visits.drop_duplicates(subset="name")
          date     name        breed  weight_kg
0   2018-09-02    Bella     Labrador      24.87
1   2019-06-07      Max    Chow Chow      24.01
2   2019-03-19  Charlie       Poodle      24.95
3   2018-01-17   Stella    Chihuahua       1.51
4   2019-10-19     Lucy    Chow Chow      24.07
7   2019-03-30   Cooper    Schnauzer      16.91
10  2019-01-04   Bernie  St. Bernard      74.98
(6  2019-06-07      Max     Labrador      28.35)

Maar wat als we honden met dezelfde naam hebben?

Dubbele paren verwijderen

In dat geval moeten we naar meer kijken dan alleen name bij het verwijderen van duplicaten. Aangezien Max en Max verschillende rassen zijn, kunnen we de rijen verwijderen met paren van namen en rassen die eerder in de dataset voorkomen.

unique_dogs = vet_visits.drop_duplicates(subset=["name", "breed"])
print(unique_dogs)
          date     name        breed  weight_kg
0   2018-09-02    Bella     Labrador      24.87
1   2019-03-13      Max    Chow Chow      24.13
2   2019-03-19  Charlie       Poodle      24.95
3   2018-01-17   Stella    Chihuahua       1.51
4   2019-10-19     Lucy    Chow Chow      24.07
6   2019-06-07      Max     Labrador      28.35
7   2019-03-30   Cooper    Schnauzer      16.91
10  2019-01-04   Bernie  St. Bernard      74.98

Om het verwijderen van duplicaten op meerdere kolommen te baseren, geven we een lijst met kolomnamen door aan het argument subset, in dit geval name en breed.

Nu zijn beide Maxen opgenomen.

Interactief voorbeeld

In deze oefening maak je een paar nieuwe DataFrames met unieke waarden uit sales. sales is beschikbaar en pandas is geïmporteerd als pd.

Je voert de volgende stappen uit:

  • Verwijder eerst rijen uit sales met dubbele paren van store en type, sla dit op als store_types en print de head.
  • Verwijder daarna rijen uit sales met dubbele paren van store en department, sla dit op als store_depts en print de head.
  • Subset de rijen die feestdagweken zijn en verwijder de dubbele dates; sla dit op als holiday_dates.
  • Selecteer tot slot de kolom date van holiday_dates en print de dataframe holiday_dates.
# Drop duplicate store/type combinations
store_types = sales.drop_duplicates(subset=["store", "type"])
print(store_types.head())

# Drop duplicate store/department combinations
store_depts = sales.drop_duplicates(subset=["store", "department"])
print(store_depts.head())

# Subset the rows that are holiday weeks and drop duplicate dates
holiday_dates = sales[sales["is_holiday"]].drop_duplicates(subset="date")

# Print date col of holiday_dates
print(holiday_dates["date"])

Als we bovenstaande code uitvoeren, krijgen we het volgende resultaat:

      store type  department       date  weekly_sales  is_holiday  temperature_c  fuel_price_usd_per_l  unemployment
0         1    A           1 2010-02-05      24924.50       False          5.728                 0.679         8.106
901       2    A           1 2010-02-05      35034.06       False          4.550                 0.679         8.324
1798      4    A           1 2010-02-05      38724.42       False          6.533                 0.686         8.623
2699      6    A           1 2010-02-05      25619.00       False          4.683                 0.679         7.259
3593     10    B           1 2010-02-05      40212.84       False         12.411                 0.782         9.765
    store type  department       date  weekly_sales  is_holiday  temperature_c  fuel_price_usd_per_l  unemployment
0       1    A           1 2010-02-05      24924.50       False          5.728                 0.679         8.106
12      1    A           2 2010-02-05      50605.27       False          5.728                 0.679         8.106
24      1    A           3 2010-02-05      13740.12       False          5.728                 0.679         8.106
36      1    A           4 2010-02-05      39954.04       False          5.728                 0.679         8.106
48      1    A           5 2010-02-05      32229.38       False          5.728                 0.679         8.106
498    2010-09-10
691    2011-11-25
2315   2010-02-12
6735   2012-09-07
6810   2010-12-31
6815   2012-02-10
6820   2011-09-09
Name: date, dtype: datetime64[ns]

Probeer het zelf.

Wil je meer leren over het tellen en aggregeren van data? Bekijk dan deze video uit onze cursus Data Manipulation with pandas.

Deze content is afkomstig uit DataCamp’s cursus Data Manipulation with pandas van Maggie Matsui en Richie Cotton.

Onderwerpen
Python

Leer meer over Python en pandas

{count, plural, one {Cursus} other {Cursussen}}

Datamanipulatie met pandas

{hours} uur
566.7K
Leer hoe je data importeert en opschoont, statistieken berekent en visualisaties maakt met pandas.
Bekijk detailsRight Arrow
Start Cursus
Meer bekijkenRight Arrow
Gerelateerd

{count, plural, one {blog} other {blogs}}

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer BekijkenMeer Bekijken