Jak działa numpy argmin w języku Python? Przykład zastosowania

Jak działa numpy argmin w języku Python? Przykład zastosowania
„`html

Jedną z przydatniejszych funkcji w bibliotece NumPy jest numpy.argmin(). Pozwala ona znaleźć indeks najmniejszej wartości w tablicy NumPy, co jest niezwykle przydatne przy analizie danych. Dzisiaj wyjaśnię, jak dokładnie działa ta funkcja, jakie ma zastosowania i jak można jej używać w praktyce.

Czym jest numpy.argmin()?

Funkcja numpy.argmin() zwraca indeks najmniejszego elementu w tablicy NumPy. Jeśli mamy tablicę jedno- lub wielowymiarową i chcemy znaleźć lokalizację najmniejszej wartości, to właśnie ta funkcja nam w tym pomoże.

Składnia i argumenty funkcji numpy.argmin()

Oto podstawowa składnia funkcji:

numpy.argmin(a, axis=None, out=None)

Gdzie:

  • a – tablica NumPy, w której szukamy indeksu minimalnej wartości.
  • axis (opcjonalny) – określa oś, wzdłuż której zostanie wykonane wyszukiwanie.
  • out (opcjonalny) – tablica wyjściowa, do której zapisany zostanie wynik.

Przykład zastosowania numpy.argmin()

Zacznijmy od prostego przykładu, w którym znajdujemy indeks najmniejszego elementu w jednowymiarowej tablicy:

import numpy as np

arr = np.array([10, 2, 5, 1, 8])
index = np.argmin(arr)

print(index)  # Output: 3

W powyższym przykładzie najmniejsza wartość wynosi 1, a jej indeks to 3.

Jak działa numpy.argmin() w przypadku tablic wielowymiarowych?

W przypadku tablic wielowymiarowych możemy określić oś, wzdłuż której chcemy znaleźć indeks minimalnej wartości. Przykładowo:

arr = np.array([[4, 9, 1], 
                [7, 2, 6]])

index = np.argmin(arr, axis=0)
print(index)  # Output: [0 1 0]

Oznacza to, że:

  • Dla pierwszej kolumny ([4, 7]) najmniejsza wartość to 4, indeks 0.
  • Dla drugiej kolumny ([9, 2]) najmniejsza wartość to 2, indeks 1.
  • Dla trzeciej kolumny ([1, 6]) najmniejsza wartość to 1, indeks 0.

Podobnie możemy użyć axis=1, aby znaleźć indeksy najmniejszych wartości wzdłuż wierszy.

Różnice między numpy.argmin() a numpy.min()

Często funkcja numpy.argmin() jest mylona z numpy.min(). Oto kluczowe różnice:

Funkcja Opis Przykład
numpy.min() Zwraca najmniejszą wartość w tablicy. np.min([10, 2, 5, 1, 8])1
numpy.argmin() Zwraca indeks najmniejszej wartości. np.argmin([10, 2, 5, 1, 8])3

Obsługa wartości NaN w numpy.argmin()

Jeśli w tablicy znajdują się wartości NaN (Not a Number), wynik może być nieoczekiwany. NumPy uznaje NaN za wartość „większą” niż liczby rzeczywiste. Zobaczmy to na przykładzie:

arr = np.array([3, np.nan, 1, 5])
index = np.argmin(arr)

print(index)  # Output: 2

Funkcja ignoruje NaN i zwraca indeks najmniejszej liczby rzeczywistej.

Podsumowanie

Funkcja numpy.argmin() jest niezwykle przydatna w analizie danych, pozwalając szybko znaleźć indeks najmniejszej wartości w tablicy NumPy.

Najważniejsze rzeczy, które warto zapamiętać:

  1. Funkcja działa zarówno na jednowymiarowych, jak i wielowymiarowych tablicach.
  2. Parametr axis pozwala kontrolować kierunek wyszukiwania w tablicach wielowymiarowych.
  3. W odróżnieniu od numpy.min(), funkcja zwraca indeks, a nie samą wartość.
  4. Obecność NaN może wpłynąć na wynik i warto na to uważać podczas pracy z danymi.

Teraz, znając szczegóły działania numpy.argmin(), można go z powodzeniem wykorzystać w analizie danych i algorytmach w Pythonie.

„` Inny ciekawy artykuł: Jak działa numpy argmax w języku Python? Przykład zastosowania
KajoDataSpace