Indeksowanie logiczne
Lekcja 14 z 18 w kursie Podstawy NumPy w Coddy.
Numpy oferuje możliwość wybierania elementów za pomocą warunków.
Użyj następującej składni: ary[ary operator number]
ary[ary > 5]ary[ary == 5]ary[ary <= 5]- itd.
Przykład 1
Pobierz wszystkie liczby mniejsze niż 5
x = np.array([1, 5, 2, 4, 9 ,10 ,13, 7])
x[x < 5]
>>> [1, 2, 4]Przykład 2
Co się dzieje przy większej liczbie wymiarów?
x = np.array([[1, 5], [2, 4], [9 ,10] ,[13, 7]])
x[x < 5] # --> [1, 2, 4]
x[x >= 5] # --> [5, 9, 10, 13, 7]
x[x == 6] # --> []Widzisz? Zwrócona została pojedyncza tablica zawierająca wszystkie elementy spełniające warunek
Gdy zastosujemy warunek do x, otrzymamy tablicę wartości boolean, która wskazuje dla każdego indeksu, czy spełnia on warunek.
Przykład 3
Tym razem sprawdzimy, co się stanie, jeśli użyjemy samego warunku bez nawiasów []
x = np.array([1, 2, 3])
x < 2
>>> [True, False, False]Zwraca listę wszystkich indeksów spełniających warunek
Przykład 4
Zamiast umieszczać warunek w nawiasach [], możemy umieścić tam listę wartości logicznych, taką jak ta otrzymana w poprzednim przykładzie, aby pobrać żądane elementy.
x = np.array([8, 4, 10])
x[[False, True, False]] # --> [4]
x[[True, True, False]] # --> [8, 4]
x[[True, False, True]] # --> [8, 10]
x[[False, False, False]] # --> []
Przykłady 3 i 4 wyjaśniają, dlaczego x[x < 5] działa.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wyzwanie
ŁatwyNapisz funkcję o nazwie small_five, która przyjmuje listę i zwraca sumę wszystkich elementów mniejszych niż 5
Spróbuj swoich sił
import numpy as np
def small_five(lst):
# Complete your codeWszystkie lekcje w sekcji Podstawy NumPy
2Tworzenie tablic wielowymiarowych
Wyższy wymiarZrozumienie kształtówWypełnianie stałymi wartościamiTypy NumPyZakresZmiana kształtu3Indeksowanie tablic NumPy
Podstawowe indeksowanieWycinanieIndeksowanie tablicIndeksowanie według wymiarówIndeksowanie logiczneIndeksowanie z wieloma warunkamiPoćwicz samodzielnie: Kompilator Python online