Przemapowanie kategorii
Chcesz lepiej zrozumieć respondentów ankiety z ramki danych airlines – konkretnie zbadać, czy istnieje związek między niektórymi odpowiedziami a dniem tygodnia i czasem oczekiwania przy bramce.
Ramka danych airlines zawiera kolumny day i wait_min, które są odpowiednio kategoryczne i liczbowe. Kolumna day przechowuje dokładny dzień, w którym odbył się lot, a wait_min – liczbę minut spędzonych przez pasażerów na oczekiwanie przy bramce. Aby uprościć analizę, chcesz utworzyć dwie nowe zmienne kategoryczne:
wait_type:'short'dla 0–60 min,'medium'dla 60–180 min ilongdla 180+ minday_week:'weekday', jeśli dzień jest dniem roboczym, lub'weekend', jeśli jest dniem weekendowym.
Biblioteki pandas i numpy zostały zaimportowane jako pd i np. Czas stworzyć nowe dane kategoryczne!
To ćwiczenie jest częścią kursu
Czyszczenie danych w Pythonie
Instrukcje do ćwiczenia
- Utwórz zakresy i etykiety dla kolumny
wait_typeopisane w treści ćwiczenia. - Utwórz kolumnę
wait_typena podstawie kolumnywait_min, używającpd.cut()i podająclabel_rangesorazlabel_namesw odpowiednich argumentach. - Utwórz słownik
mappingprzypisujący dni robocze do'weekday', a dni weekendowe do'weekend'. - Utwórz kolumnę
day_week, używając metody.replace().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)