Problem
Mamy tablicę zawierającą elementy logiczne. Celem jest ustalenie, ile z tych elementów w tablicy jest prawdziwe.
Rozwiązanie 1
Podejście naiwne stworzyłoby licznik sumowy i pętlę, która iteruje każdy element w tablicy. Następnie sprawdzamy, czy ten element jest prawdziwy, a jeśli tak, dodajemy go do licznika.
Po zakończeniu otrzymujemy wartość zmiennej sumy, liczba prawdziwych elementów w tablicy.
Rozwiązanie 2
Możemy inteligentnie podejść do problemu, ponieważ nie patrzymy na naiwne podejście.
Wiemy, że Python traktuje fałszywą wartość jako 0, a dowolną inną wartość jako prawdziwa. Więc jeśli tak jest, możemy użyć funkcji Numpy count_nonzero (), aby rozwiązać problem.
Funkcja Numpy Count_nonzero () pozwala nam obliczyć wszystkie niezerowe wartości w danej tablicy. Lub, czy powiem, pozwoli nam to zliczyć liczbę prawdziwych wartości w tablicy.
Składnia funkcji jest jak pokazana:
1 | Numpy.count_nonzero (a, axis = none, *, klepedims = false) |
Przykład 1
Rozważ poniższy przykład, który używa funkcji count_nonzero (), aby określić liczbę niezerowych elementów w tablicy.
ARR = [1,2,0,3,4,0,5,6,7]
Drukuj („niezerowy”, NP.count_nonzero (ARR))
Kod powyżej powinien określić liczbę wartości niezerowych i wydrukować wynik, jak pokazano:
1 | niezerowy 7 |
Przykład 2
Ten sam przypadek dotyczy wartości logicznych, jak pokazano w poniższej tablicy:
1 2 | arr = [[true, false, true], [true, false, false]] Drukuj („niezerowy”, NP.count_nonzero (ARR)) |
Wynik wyjściowy jest taki jak pokazany:
1 | niezerowe 3 |
I dzięki temu rozwiązaliśmy nasz początkowy problem.
Wniosek
Dziękujemy za podążanie wraz z tym samouczkiem, w którym omówiliśmy, jak korzystać z funkcji Count_nonzero (), aby określić liczbę prawdziwych elementów w tablicy.
Szczęśliwe kodowanie!!