
Biblioteka pandas to jedno z najważniejszych narzędzi dla osób pracujących z danymi w języku Python. Umożliwia wygodne operowanie na tabelach danych, wykonywanie różnorodnych analiz i manipulacji. Jedną z jej bardzo przydatnych metod jest idxmin(). W tym artykule przyjrzymy się jej dokładnie i zobaczymy, jak działa pandas idxmin w języku Python, a także przedstawimy przykład jej zastosowania.
Co robi pandas.idxmin()?
Metoda idxmin() zwraca indeks pierwszego wystąpienia minimalnej wartości w serii lub kolumnie w ramce danych. Innymi słowy, pozwala szybko znaleźć indeks, pod którym znajduje się najmniejsza wartość.
Jest to szczególnie przydatne, gdy pracujemy na dużych zbiorach danych i chcemy szybko odnaleźć lokalizację wartości minimalnej, zamiast tylko jej wartość.
Składnia pandas.idxmin()
Metoda idxmin() jest dostępna zarówno dla obiektów Series, jak i DataFrame. Oto jej ogólna składnia:
Series.idxmin(axis=0, skipna=True)
DataFrame.idxmin(axis=0, skipna=True)
Gdzie:
axis– określa, wzdłuż której osi szukać minimalnej wartości:axis=0(domyślnie) – wyszukiwanie w kolumnach (dlaDataFrame).axis=1– wyszukiwanie w wierszach (dlaDataFrame).
skipna– jeśliTrue(domyślnie), ignoruje wartościNaN.
Przykład zastosowania pandas.idxmin()
Aby lepiej zrozumieć działanie tej metody, przyjrzyjmy się przykładowemu kodowi:
import pandas as pd
# Tworzymy serię danych z przykładowymi wartościami
seria = pd.Series([10, 3, 5, 2, 8, 2])
# Zwracamy indeks pierwszego minimalnego elementu w serii
indeks_min = seria.idxmin()
print(f"Indeks pierwszej minimalnej wartości: {indeks_min}")
Wynik:
Indeks pierwszej minimalnej wartości: 3
Oznacza to, że najmniejsza wartość (2) znajduje się pod indeksem 3.
Wyszukiwanie minimalnej wartości w DataFrame
Teraz zobaczmy, jak idxmin() działa na ramce danych (DataFrame):
import pandas as pd
# Tworzymy przykładowy DataFrame
df = pd.DataFrame({
'A': [10, 3, 5, 8, 2],
'B': [1, 9, 4, 6, 2]
})
# Znajdujemy indeksy minimalnych wartości dla każdej kolumny
indeksy_min = df.idxmin()
print(indeksy_min)
Wynik:
| A | B | |
|---|---|---|
| 0 | 4 | 0 |
Oznacza to, że w kolumnie A najmniejsza wartość 2 znajduje się pod indeksem 4, a w kolumnie B najmniejsza wartość 1 występuje w wierszu 0.
Wyszukiwanie minimalnych wartości w wierszach
Podobną operację możemy wykonać w innych wymiarach, np. sprawdzając minimalne wartości w wierszach poprzez ustawienie parametru axis=1:
indeksy_min_wiersze = df.idxmin(axis=1)
print(indeksy_min_wiersze)
W tym przypadku zwracana jest seria z nazwami kolumn, w których znajdują się minimalne wartości dla poszczególnych wierszy.
Obsługa wartości brakujących (NaN)
Jeśli w danych znajdują się wartości brakujące (NaN), metoda idxmin() domyślnie je ignoruje. Możemy to zobaczyć w poniższym przykładzie:
df_nan = pd.DataFrame({
'A': [10, None, 5, 8, 2],
'B': [1, 9, None, 6, 2]
})
print(df_nan.idxmin())
Jeśli jednak ustawimy skipna=False, a w danej kolumnie wszystkie wartości są NaN, otrzymamy błąd.
Podsumowanie
Metoda idxmin() w pandas to bardzo przydatne narzędzie do szybkiego odnajdywania indeksów minimalnych wartości w ramach danych. Warto pamiętać o kilku kluczowych kwestiach:
idxmin()działa zarówno naSeries, jak iDataFrame.- Domyślnie szuka minimalnych wartości wzdłuż kolumn (
axis=0). - Możemy zmienić wyszukiwanie na wiersze, ustawiając
axis=1. - Metoda ignoruje wartości
NaN, chyba że ustawimyskipna=False.
Znajomość idxmin() może znacznie ułatwić analizę danych, zwłaszcza gdy pracujemy na dużych zbiorach i potrzebujemy szybko odnaleźć indeksy najmniejszych wartości.
Inny ciekawy artykuł:
Jak działa pandas idxmax w języku Python? Przykład zastosowania
Opanuj analizę danych w Pythonie z moim kursem!
Opanujesz podstawy programowania w Pythonie, w tym typy danych, zmienne, listy, słowniki, funkcje oraz obsługę błędów. Nauczysz się korzystać z biblioteki pandas do zaawansowanej analizy danych i pracy z różnymi rodzajami danych. Zrozumiesz proces analizy, eksploracji (EDA) i wizualizacji. Tworzenie własnych funkcji przygotuje Cię do rozmów kwalifikacyjnych i rozwiązywania rzeczywistych problemów biznesowych.
Zostań analitykiem danych – dołącz do KajoDataSpace!
Najlepsza ścieżka do zawodu analityka danych. Dostęp do pełnych wersji kursów online z Excela, SQLa, PowerBI, Tableau i Pythona z certyfikatami!
🟨 Ekskluzywana ale pomagająca sobie społeczność.
🟩 Ponad 75 godzin materiałów video.
🟨 Spotkania LIVE co miesiąc.
🟩 Mój osobisty mentoring.

