Přemapování kategorií
Abys lépe porozuměl/a respondentům průzkumu z datasetu airlines, chceš zjistit, jestli existuje vztah mezi některými odpověďmi a dnem v týdnu či čekací dobou u brány.
DataFrame airlines obsahuje sloupce day a wait_min, které jsou kategorické, resp. numerické. Sloupec day obsahuje přesný den, kdy let proběhl, a wait_min udává počet minut, které cestující čekali u brány. Pro snazší analýzu chceš vytvořit dvě nové kategorické proměnné:
wait_type:'short'pro 0–60 min,'medium'pro 60–180 min alongpro 180+day_week:'weekday'pokud den připadá na pracovní den,'weekend'pokud připadá na víkend.
Balíčky pandas a numpy jsou importované jako pd a np. Pojďme vytvořit nová kategorická data!
Toto cvičení je součástí kurzu
Čištění dat v Pythonu
Pokyny k cvičení
- Vytvoř rozsahy a popisky pro sloupec
wait_typepodle popisu zadání. - Vytvoř sloupec
wait_typeze sloupcewait_minpomocípd.cut()– jako argumenty předejlabel_rangesalabel_namesna správná místa. - Vytvoř slovník
mapping, který mapuje pracovní dny na'weekday'a víkendové dny na'weekend'. - Vytvoř sloupec
day_weekpomocí.replace().
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Create ranges for categories
label_ranges = [0, 60, ____, np.inf]
label_names = ['short', ____, ____]
# Create wait_type column
airlines['wait_type'] = pd.____(____, bins = ____,
labels = ____)
# Create mappings and replace
mappings = {'Monday':'weekday', 'Tuesday':'____', 'Wednesday': '____',
'Thursday': '____', '____': '____',
'Saturday': 'weekend', '____': '____'}
airlines['day_week'] = airlines['day'].____(mappings)