Uniciteitsbeperkingen

Data opschonen in Python

Adel Nehme

VP of AI Curriculum, DataCamp

Wat zijn dubbele waarden?

Alle kolommen hebben dezelfde waarden

first_name last_name address height weight
Justin Saddlemyer Boulevard du Jardin Botanique 3, Bruxelles 193 cm 87 kg
Justin Saddlemyer Boulevard du Jardin Botanique 3, Bruxelles 193 cm 87 kg
Data opschonen in Python

Wat zijn dubbele waarden?

De meeste kolommen hebben dezelfde waarden

first_name last_name address height weight
Justin Saddlemyer Boulevard du Jardin Botanique 3, Bruxelles 193 cm 87 kg
Justin Saddlemyer Boulevard du Jardin Botanique 3, Bruxelles 194 cm 87 kg
Data opschonen in Python

Waarom komen ze voor?

duplicaat_1

Data opschonen in Python

Waarom komen ze voor?

duplicaat_2

Data opschonen in Python

Waarom komen ze voor?

duplicaat_3

Data opschonen in Python

Hoe vind je dubbele waarden?

# Print de kop
height_weight.head()
  first_name last_name                       address  height  weight
0       Lane     Reese              534-1559 Nam St.     181      64
1       Ivor    Pierce             102-3364 Non Road     168      66
2      Roary    Gibson   P.O. Box 344, 7785 Nisi Ave     191      99
3    Shannon    Little  691-2550 Consectetuer Street     185      65
4      Abdul       Fry                4565 Risus St.     169      65
Data opschonen in Python

Hoe vind je dubbele waarden?

# Duplicaten over alle kolommen
duplicates = height_weight.duplicated()
print(duplicates)
1       False
...     ....
22      True
23      False
...     ...
Data opschonen in Python

Hoe vind je dubbele waarden?

# Dubbele rijen ophalen
duplicates = height_weight.duplicated()
height_weight[duplicates]
    first_name last_name                               address  height  weight
100       Mary     Colon                           4674 Ut Rd.     179      75
101       Ivor    Pierce                     102-3364 Non Road     168      88
102       Cole    Palmer                       8366 At, Street     178      91
103    Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     196      83
Data opschonen in Python

Hoe vind je dubbele rijen?

De methode .duplicated()

subset: Lijst met kolomnamen om op duplicaten te checken.

keep: Bewaar de eerste ('first'), laatste ('last') of alle (False) duplicaten.

# Kolomnamen om op duplicatie te checken
column_names = ['first_name','last_name','address']
duplicates = height_weight.duplicated(subset = column_names, keep = False)
Data opschonen in Python

Hoe vind je dubbele rijen?

# Dubbele waarden weergeven
height_weight[duplicates]
    first_name last_name                               address  height  weight
1         Ivor    Pierce                     102-3364 Non Road     168      66
22        Cole    Palmer                       8366 At, Street     178      91
28     Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     195      83
37        Mary     Colon                           4674 Ut Rd.     179      75
100       Mary     Colon                           4674 Ut Rd.     179      75
101       Ivor    Pierce                     102-3364 Non Road     168      88
102       Cole    Palmer                       8366 At, Street     178      91
103    Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     196      83
Data opschonen in Python

Hoe vind je dubbele rijen?

# Dubbele waarden weergeven
height_weight[duplicates].sort_values(by = 'first_name')
    first_name last_name                               address  height  weight
22        Cole    Palmer                       8366 At, Street     178      91
102       Cole    Palmer                       8366 At, Street     178      91
28     Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     195      83
103    Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     196      83
1         Ivor    Pierce                     102-3364 Non Road     168      66
101       Ivor    Pierce                     102-3364 Non Road     168      88
37        Mary     Colon                           4674 Ut Rd.     179      75
100       Mary     Colon                           4674 Ut Rd.     179      75
Data opschonen in Python

Hoe vind je dubbele rijen?

# Dubbele waarden weergeven
height_weight[duplicates].sort_values(by = 'first_name')

1_3_full_duplicates.png

Data opschonen in Python

Hoe vind je dubbele rijen?

# Dubbele waarden weergeven
height_weight[duplicates].sort_values(by = 'first_name')

1_3_partial_duplicates.png

Data opschonen in Python

Hoe ga je om met dubbele waarden?

# Dubbele waarden weergeven
height_weight[duplicates].sort_values(by = 'first_name')

1_3_full_duplicates.png

Data opschonen in Python

Hoe ga je om met dubbele waarden?

De methode .drop_duplicates()

subset: Lijst met kolomnamen om op duplicaten te checken.

keep: Bewaar de eerste ('first'), laatste ('last') of alle (False) duplicaten.

inplace: Verwijder dubbele rijen direct in de DataFrame zonder nieuw object te maken (True).

# Duplicaten verwijderen
height_weight.drop_duplicates(inplace = True)
Data opschonen in Python

Hoe ga je om met dubbele waarden?

# Dubbele waarden weergeven
column_names = ['first_name','last_name','address']
duplicates = height_weight.duplicated(subset = column_names, keep = False)
height_weight[duplicates].sort_values(by = 'first_name')
    first_name last_name                               address  height  weight
28     Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     195      83
103    Desirae   Shannon  P.O. Box 643, 5251 Consectetuer, Rd.     196      83
1         Ivor    Pierce                     102-3364 Non Road     168      66
101       Ivor    Pierce                     102-3364 Non Road     168      88
Data opschonen in Python

Hoe ga je om met dubbele waarden?

# Dubbele waarden weergeven
column_names = ['first_name','last_name','address']
duplicates = height_weight.duplicated(subset = column_names, keep = False)
height_weight[duplicates].sort_values(by = 'first_name')

1_3_duplicate_aggregation.png

Data opschonen in Python

Hoe ga je om met dubbele waarden?

De methoden .groupby() en .agg()

# Groepeer op kolomnamen en maak statistische samenvattingen
column_names = ['first_name','last_name','address']
summaries = {'height': 'max', 'weight': 'mean'}
height_weight = height_weight.groupby(by = column_names).agg(summaries).reset_index()

# Controleren of de aggregatie is gedaan duplicates = height_weight.duplicated(subset = column_names, keep = False) height_weight[duplicates].sort_values(by = 'first_name')
first_name    last_name    address    height    weight

Data opschonen in Python

Laten we oefenen!

Data opschonen in Python

Preparing Video For Download...