Aan de slagGa gratis aan de slag

Outliers verwijderen op basis van percentage

Een manier om te zorgen dat een klein deel van de data geen buitensporig negatief effect heeft, is door een bepaald percentage van de grootste en/of kleinste waarden in de kolom te verwijderen. Dit doe je door het relevante kwantiel te bepalen en de data daarmee te trimmen met een mask. Deze aanpak is vooral handig als je vermoedt dat de hoogste waarden in je gegevensset beter vermeden kunnen worden. Houd er bij deze aanpak wel rekening mee dat dit, zelfs als er geen outliers zijn, nog steeds dezelfde hoogste N procent uit de gegevensset verwijdert.

Deze oefening maakt deel uit van de cursus

Feature engineering voor Machine Learning in Python

Cursus bekijken

Oefeninstructies

  • Bepaal het 95e kwantiel van de kolom ConvertedSalary.
  • Trim de DataFrame so_numeric_df zodat alle rijen behouden blijven waarvoor ConvertedSalary kleiner is dan het 95e kwantiel.
  • Plot het histogram van so_numeric_df[['ConvertedSalary']].
  • Plot het histogram van trimmed_df[['ConvertedSalary']].

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Find the 95th quantile
quantile = so_numeric_df['ConvertedSalary'].____(____)

# Trim the outliers
trimmed_df = so_numeric_df[so_numeric_df['ConvertedSalary'] < ____]

# The original histogram
so_numeric_df[['ConvertedSalary']].____()
plt.show()
plt.clf()

# The trimmed histogram
trimmed_df[['ConvertedSalary']].____()
plt.show()
Code bewerken en uitvoeren