Kontrola příslušnosti

Čištění dat v R

Maggie Matsui

Content Developer @ DataCamp

Kategorická data

  • Kategorické proměnné mají pevnou a známou sadu možných hodnot
Data Příklad hodnot
Rodinný stav unmarried, married
Kategorie příjmu domácnosti 0-20K, 20-40K, ...
Velikost trička S, M, L, XL
Čištění dat v R

Faktory

  • Ve factoru je každá kategorie uložena jako číslo s odpovídajícím popiskem
Data Popisky Číselné vyjádření
Rodinný stav unmarried, married 1, 2
Kategorie příjmu domácnosti 0-20K, 20-40K, ... 1, 2, ...
Velikost trička S, M, L, XL 1, 2, 3, 4
Čištění dat v R

Úrovně faktoru

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"
Čištění dat v R

Hodnoty, které nepatří

  • factory nemohou obsahovat hodnoty mimo předem definované
Data Úrovně Nepovoleno
Rodinný stav unmarried, married divorced
Kategorie příjmu domácnosti 0-20K, 20-40K, ... 10-30K
Velikost trička S, M, L, XL S/M
Čištění dat v R

Jak k takovým hodnotám dochází?

 

Vlevo: Chyby při zadávání dat – textové pole s kurzorem a rozbalovací nabídka. Vpravo: Chyby při parsování – databáze.

Čištění dat v R

Filtrující joiny: rychlé opakování

  • Zachovává nebo odstraňuje záznamy z první tabulky bez přidání sloupců

Název: Semi-join. Podtitul: Která pozorování X jsou také v Y? Vlevo jednosloupcová tabulka X s hodnotami a, b a c. Vpravo jednosloupcová tabulka Y s hodnotami a, c a d. Hodnoty a a c jsou propojeny čarami. V tabulce X jsou buňky a a c zvýrazněny.

Čištění dat v R

Filtrující joiny: rychlé opakování

  • Zachovává nebo odstraňuje záznamy z první tabulky bez přidání sloupců

Název: Anti-join. Podtitul: Která pozorování X nejsou v Y? Vlevo jednosloupcová tabulka X s hodnotami a, b a c. Vpravo jednosloupcová tabulka Y s hodnotami a, c a d. Hodnoty a a c jsou propojeny čarami. V tabulce X je buňka b zvýrazněna.

Čištění dat v R

Příklad krevních skupin

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-
Čištění dat v R

Příklad krevních skupin

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-
Čištění dat v R

Hledání nepříslušných hodnot

Vennův diagram. Levý kruh představuje study_data, pravý blood_types. Vlevo je Z+. Uprostřed jsou A-, O-, AB+, A+, O+ a B-. Vpravo jsou B+ a AB-. Hodnota Z+ vlevo je červeně.

Čištění dat v R

Anti-join

study_data %>%
  anti_join(blood_types, by = "blood_type")
      name   birthday blood_type
1 Jennifer 2019-12-17         Z+
Čištění dat v R

Odstranění nepříslušných hodnot

Vennův diagram. Levý kruh představuje study_data, pravý blood_types. Vlevo je Z+. Uprostřed jsou A-, O-, AB+, A+, O+ a B-. Vpravo jsou B+ a AB-. Krevní skupiny uprostřed jsou modře.

Čištění dat v 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+
Čištění dat v R

Pojďme si procvičit!

Čištění dat v R

Preparing Video For Download...