Postępowanie z obserwacjami odstającymi
Część sekcji Statystyka w uczeniu maszynowym ścieżki Machine Learning w Coddy. Lekcja 27 z 64.
Dziesięć mieszkań zużywało po około 10 m³ wody, ale przez wyciek w jednym z nich zużycie wzrosło do 64. Możesz je usunąć albo ograniczyć do najbliższej granicy:
np.clip(a, low, high) ogranicza wartości w całej tablicy:
water = np.array([8, 11, 9, 10, 12, 9, 64, 10, 11, 8])
low, high = 6.0, 14.0 # granice IQR
dropped = water[(water >= low) & (water <= high)]
capped = np.clip(water, low, high)
print(len(dropped), len(capped))
print(capped)To wypisuje:
9 10
[ 8. 11. 9. 10. 12. 9. 14. 10. 11. 8.]Model dopasowałby się do tej pojedynczej wartości, więc zdecyduj przed treningiem. Popraw lub usuń literówki; zachowaj prawdziwe wartości skrajne albo ogranicz je. Nigdy nie usuwaj ich po cichu: podaj, ile ich zmieniono.
Wyzwanie
ŚredniAplikacja rowerowa zapisała średnie prędkości z 15 przejazdów w speeds; dwie wyglądają nietypowo. Kod początkowy umieścił granice IQR w low i high.
- Utwórz
dropped— prędkości mieszczące się w granicach (włącznie z nimi) — orazcapped. - Wypisz po jednym wierszu dla zachowanych, odrzuconych i ograniczonych wartości: liczbę przejazdów, ich średnią i
.std(), zaokrąglone do 2 miejsc po przecinku. - Wypisz, ile przejazdów zmieniło ograniczenie wartości.
Dla 10 przejazdów innego rowerzysty:
Keep: 10 rides, mean 21.38, std 6.58
Drop: 9 rides, mean 19.2, std 0.77
Cap: 10 rides, mean 19.45, std 1.04
Capping changed 1 of 10 ridesSpróbuj swoich sił
import numpy as np
# Zwraca dolną i górną granicę IQR dla tablicy
def iqr_fences(a):
q1 = np.percentile(a, 25)
q3 = np.percentile(a, 75)
iqr = q3 - q1
return q1 - 1.5 * iqr, q3 + 1.5 * iqr
speeds = np.array([24.5, 22.8, 26.1, 23.9, 3.1, 25.4, 21.7, 24.2, 27.3, 78.4, 23.1, 25.8, 22.4, 24.9, 26.6])
low, high = iqr_fences(speeds)
# Napisz swój kod poniżej
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Statystyka w uczeniu maszynowym
1Położenie i rozproszenie
Średnia i medianaPercentyle i kwartyleWariancja i odchylenie standardowePróba czy populacja?Najczęściej występująca wartośćPodsumowanie: czasy dostaw4Próby i populacje
Populacja i próbaŚrednie z prób się różniąRozkład próbkowaniaWiększe próby, mniej szumuPodsumowanie: ankietowanie mieszkańców2Rozkłady
Histogramy gęstościKształty danychKrzywa normalnaReguła 68-95-99,7Wyniki standaryzowane (Z-scores)Podsumowanie: czas pracy baterii5Obserwacje odstające
Wykresy pudełkoweReguła IQRReguła Z-scorePostępowanie z obserwacjami odstającymiPodsumowanie: błędy czujników3Prawdopodobieństwo przez symulację
Prawdopodobieństwo jako częstośćPrawo wielkich liczbSumy oczekWartość oczekiwanaPrawdopodobieństwo warunkowePodsumowanie: szanse na stoisku z kośćmi6Relacje
Odczytywanie wykresów punktowychKorelacjaMacierz korelacjiMapy cieplne korelacjiKorelacja nie oznacza przyczynowościPodsumowanie: lody i słońcePoćwicz samodzielnie: Kompilator Python online