Začněte nyníZačněte zdarma

Ošetření odlehlých hodnot pomocí winsorizace

K dispozici máš basetable se dvěma proměnnými: "sum\_donations" a "donor\_id". Proměnná "sum_donations" může obsahovat odlehlé hodnoty v případech, kdy dárci přispěli výjimečně vysokými částkami. Proto chceš tuto proměnnou winsorizovat tak, aby bylo 5 % nejvyšších hodnot nahrazeno hodnotou horního 5% percentilu.

Toto cvičení je součástí kurzu

Intermediate Predictive Analytics in Python

Zobrazit kurz

Pokyny k cvičení

  • Vypiš minimální hodnotu sum_donations a ověř, že je alespoň 0. Poté vypiš maximální hodnotu sum_donations.
  • Doplň vhodný dolní percentilový limit. Protože všechny hodnoty vyšší než 0 jsou realistické a vyskytují se běžně, není nutné nahrazovat hodnoty pod dolním percentilovým limitem.
  • Vytvoř novou proměnnou „sum_donations_winsorized", která bude winsorizovanou verzí proměnné „sum_donations".
  • Vypiš maximální hodnotu sum_donations_winsorized.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

from scipy.stats.mstats import winsorize

# Check minimum sum of donations
print(____["____"].____())
print(____["____"].____())

# Fill out the lower limit
lower_limit = ____

# Winsorize the variable sum_donations
basetable["sum_donations_winsorized"] = ____(____["____"], limits=[lower_limit, 0.05])

# Check maximum sum of donations after winsorization
print(____["____"].____())
Upravit a spustit kód