Lidmaatschap controleren

Data opschonen in R

Maggie Matsui

Content Developer @ DataCamp

Categorische data

  • Categorische variabelen hebben een vaste, bekende set mogelijke waarden
Gegevens Voorbeeldwaarden
Huwelijkse status unmarried, married
Inkomenscategorie huishouden 0-20K, 20-40K, ...
T-shirtmaat S, M, L, XL
Data opschonen in R

Factors

  • In een factor wordt elke categorie als een getal opgeslagen en heeft een bijbehorend label
Gegevens Labels Numerieke weergave
Huwelijkse status unmarried, married 1, 2
Inkomenscategorie huishouden 0-20K, 20-40K, ... 1, 2, ...
T-shirtmaat S, M, L, XL 1, 2, 3, 4
Data opschonen in R

Factorlevels

tshirt_size
L  XL XL L  M  M  M  L  XL L  S  M  M  S  S  M  XL S  L  S ... 
Levels: S M L XL
levels(tshirt_size)
"S"  "M"  "L"  "XL"
Data opschonen in R

Waarden die niet passen

  • factors kunnen geen waarden hebben buiten de vooraf gedefinieerde set
Gegevens Levels Niet toegestaan
Huwelijkse status unmarried, married divorced
Inkomenscategorie huishouden 0-20K, 20-40K, ... 10-30K
T-shirtmaat S, M, L, XL S/M
Data opschonen in R

Hoe krijgen we deze waarden?

 

Links: invoerfouten voorgesteld door een tekstvak met cursor voor vrije tekst en een vervolgkeuzemenu. Rechts: parsefouten voorgesteld door een database.

Data opschonen in R

Filter-joins: korte herhaling

  • Behoudt of verwijdert observaties uit de eerste tabel zonder kolommen toe te voegen

Titel: Semi-join. Ondertitel: Welke observaties van X staan ook in Y? Links een eenkolomstabel X met waarden a, b en c. Rechts een eenkolomstabel Y met waarden a, c en d. De a's en c's in elke tabel zijn met lijnen verbonden. In X zijn de cellen voor a en c gemarkeerd.

Data opschonen in R

Filter-joins: korte herhaling

  • Behoudt of verwijdert observaties uit de eerste tabel zonder kolommen toe te voegen

Titel: Anti-join. Ondertitel: Welke observaties van X staan niet in Y? Links een eenkolomstabel X met waarden a, b en c. Rechts een eenkolomstabel Y met waarden a, c en d. De a's en c's in elke tabel zijn met lijnen verbonden. In X is de cel voor b gemarkeerd.

Data opschonen in R

Voorbeeld: bloedgroep

study_data
      name   birthday blood_type
1     Beth 2019-10-20         B-
2 Ignatius 2020-07-08         A-
3     Paul 2019-08-12         O+
4    Helen 2019-03-17         O-
5 Jennifer 2019-12-17         Z+
6  Kennedy 2020-04-27         A+
7    Keith 2019-04-19        AB+
blood_types
  blood_type
1         O-
2         O+
3         A-
4         A+
5         B+
6         B-
7        AB+
8        AB-
Data opschonen in R

Voorbeeld: bloedgroep

study_data
      name   birthday blood_type
1     Beth 2019-10-20         B-
2 Ignatius 2020-07-08         A-
3     Paul 2019-08-12         O+
4    Helen 2019-03-17         O-
5 Jennifer 2019-12-17         Z+  <--
6  Kennedy 2020-04-27         A+
7    Keith 2019-04-19        AB+
blood_types
  blood_type
1         O-
2         O+
3         A-
4         A+
5         B+
6         B-
7        AB+
8        AB-
Data opschonen in R

Niet-leden vinden

Venn-diagram. Linkercirkel stelt study_data voor en rechtercirkel blood types. Links staat Z+. In het midden A-, O-, AB+, A+, O+ en B-. Rechts B+ en AB-. De Z+ links is rood gemarkeerd.

Data opschonen in R

Anti-join

study_data %>%
  anti_join(blood_types, by = "blood_type")
      name   birthday blood_type
1 Jennifer 2019-12-17         Z+
Data opschonen in R

Niet-leden verwijderen

Venn-diagram. Linkercirkel stelt study_data voor en rechtercirkel blood types. Links staat Z+. In het midden A-, O-, AB+, A+, O+ en B-. Rechts B+ en AB-. De bloedgroepen in het midden zijn blauw gemarkeerd.

Data opschonen in R

Semi-join

study_data %>%
  semi_join(blood_types, by = "blood_type")
      name   birthday blood_type
1     Beth 2019-10-20         B-
2 Ignatius 2020-07-08         A-
3     Paul 2019-08-12         O+
4    Helen 2019-03-17         O-
5  Kennedy 2020-04-27         A+
6    Keith 2019-04-19        AB+
Data opschonen in R

Laten we oefenen!

Data opschonen in R

Preparing Video For Download...