Normalizacja min-max z użyciem .transform()
Bardzo popularną operacją jest normalizacja min-max. Polega ona na przeskalowaniu interesującej nas wartości: odejmujemy od niej wartość minimalną, a wynik dzielimy przez różnicę między wartością maksymalną a minimalną. Na przykład, aby przeskalować dane dotyczące wagi studentów z zakresu od 160 do 200 funtów, odejmujemy 160 od wagi każdego studenta i dzielimy wynik przez 40 (200 – 160).
Zdefiniujesz i zastosujesz normalizację min-max do wszystkich zmiennych liczbowych w zbiorze danych dotyczącym restauracji. Najpierw pogrupujesz wpisy według pory posiłku (lunch lub kolacja), a następnie zastosujesz normalizację osobno do każdej grupy.
Pamiętaj, że w dowolnym momencie możesz eksplorować zbiór danych w powłoce IPython i śledzić wprowadzane zmiany. Możesz też korzystać ze slajdów dostępnych w zakładce Slajdy.
To ćwiczenie jest częścią kursu
Wydajne programowanie z pandas
Instrukcje do ćwiczenia
- Zdefiniuj normalizację min-max przy użyciu metody lambda.
- Pogrupuj dane według pory posiłku.
- Zastosuj transformację do pogrupowanych danych.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Define the min-max transformation
min_max_tr = lambda x: (x - ____) / (____ - x.min())
# Group the data according to the time
restaurant_grouped = restaurant_data.____(____)
# Apply the transformation
restaurant_min_max_group = restaurant_grouped.____(____)
print(restaurant_min_max_group.head())