W zeszłym tygodniu pisałam o tym jak NumPy ułatwia nam życie. Dziś będzie jeszcze troszkę w tym temacie. Co jeszcze fajnego dostarcza nam NumPy?
Na przykład wygodnego filtrowania danych. Załóżmy, że mamy jakąś tablicę:
some_numbers = numpy_array([0, 10, 100, 200, 201]);
I chcemy z niej wyciągnąć tylko wartości, które dzielą się przez 100.
W zwykłym Pythonie oczywiście musielibyśmy przejść pętlą przez całą tablicę i po kolei sprawdzać poszczególne wartości. Z pomocą NumPy możemy to zrobić dużo sprawniej. Zapiszemy sobie coś takiego:
divisible_by_one_hundred = (some_numbers % 100)
Ale to tylko krok pośredni. W tablicy divisible_by_one_hundred będziemy mieli obecnie coś takiego:
[false, false, true, true, false]
Co możemy z tym zrobić dalej by uzyskać pożądany wynik? Otóż możemy tablicy divisible_by_one_hundred użyć jako filtra w ten oto sposób:
numbers_divisible_by_one_hundred = some_numbers[divisible_by_one_hundred]
To stworzy nam taką oto tablicę:
[100, 200]
Proste i takie wygodne! Analiza danych w takich warunkach to naprawdę fajna sprawa:)