Čištění dat je proces identifikace a opravy (nebo odstranění) chybných, poškozených, nesprávně formátovaných, duplicitních nebo neúplných dat v rámci datasetu. Cílem je vytvořit čistou, konzistentní sadu dat připravenou pro analýzu a trénování modelů.
Duplicitní záznamy vznikají při spojování databází, chybami při sběru nebo opakovaným odesláním formulářů.
Data často chybí (uživatel nevyplnil pole, senzor měl výpadek). Máme tři hlavní cesty:
Nekonzistence znemožňují správné seskupování a analýzu.
Odlehlé hodnoty mohou být buď chyby (výška 300 cm), nebo legitimní extrémy.
Zahrnují nesprávné pojmenování sloupců, prázdné mezery na začátku/konci textu (trimming) nebo nesmyslné hodnoty (např. věk -5).
| Krok | Akce |
|---|---|
| 1. Průzkum (EDA) | Prohlédnutí statistik, grafů a nalezení zjevných chyb. |
| 2. Filtrace | Odstranění nerelevantních sloupců a duplicit. |
| 3. Oprava typu | Převod datových typů (string na float, object na datetime). |
| 4. Handling Missing | Vyplnění nebo smazání prázdných hodnot. |
| 5. Validace | Kontrola, zda data po vyčištění dávají smysl a splňují integritní omezení. |
import pandas as pd # Načtení dat df = pd.read_csv('data.csv') # Odstranění duplicit df.drop_duplicates(inplace=True) # Nahrazení chybějících hodnot mediánem df['vek'] = df['vek'].fillna(df['vek'].median()) # Sjednocení textu na malá písmena a odstranění mezer df['mesto'] = df['mesto'].str.lower().str.strip() # Odstranění řádků s nesmyslnými hodnotami df = df[df['vek'] > 0]
Související články:
Tagy: ml preprocessing data_cleaning pandas data_science