ÎncepețiÎncepe gratuit

Eliminarea valorilor aberante statistice

Deși eliminarea primelor N% din date este utilă pentru a scăpa de punctele cu adevărat eronate, are dezavantajul că îndepărtează întotdeauna aceeași proporție de puncte, chiar dacă datele sunt corecte. O alternativă frecvent utilizată este eliminarea datelor situate la mai mult de trei abateri standard față de medie. Poți implementa această abordare calculând mai întâi media și abaterea standard ale coloanei relevante pentru a determina limitele superioară și inferioară, apoi aplicând aceste limite ca mască pe DataFrame. Această metodă garantează că sunt eliminate doar datele cu adevărat diferite de restul și va elimina mai puține puncte atunci când datele sunt grupate strâns.

Acest exercițiu face parte din cursul

Ingineria caracteristicilor pentru Machine Learning în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează abaterea standard și media coloanei ConvertedSalary din so_numeric_df.
  • Calculează limitele superioară și inferioară ca trei abateri standard față de medie, în ambele direcții.
  • Filtrează DataFrame-ul so_numeric_df pentru a păstra doar rândurile în care ConvertedSalary se încadrează între limitele lower și upper.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Find the mean and standard dev
std = so_numeric_df['ConvertedSalary'].____
mean = so_numeric_df['ConvertedSalary'].____

# Calculate the cutoff
cut_off = std * 3
lower, upper = mean - cut_off, ____

# Trim the outliers
trimmed_df = so_numeric_df[(so_numeric_df['ConvertedSalary'] < ____) \ 
                           & (so_numeric_df['ConvertedSalary'] > ____)]

# The trimmed box plot
trimmed_df[['ConvertedSalary']].boxplot()
plt.show()
Editează și rulează codul