Jak działa pandas nunique w języku Python? Przykład zastosowania

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

Jeśli pracujesz z analizą danych w Pythonie, na pewno miałeś okazję korzystać z bibliotek takich jak pandas. Jedną z bardzo przydatnych funkcji dostępnych w tej bibliotece jest pandas.nunique(). Dzisiaj przyjrzymy się dokładnie temu, jak działa pandas nunique(), do czego można go użyć i jakie są praktyczne przykłady jego zastosowania.

Co robi pandas.nunique()?

Funkcja pandas.nunique() służy do zliczania unikalnych wartości w kolumnach lub wierszach obiektu Series lub DataFrame. Innymi słowy, jeśli masz zbiór danych i chcesz sprawdzić, ile różnych wartości znajduje się w określonej kolumnie, ta funkcja dostarczy Ci odpowiedzi.

Podstawowa składnia pandas.nunique()

Oto podstawowa składnia tej funkcji:

DataFrame.nunique(axis=0, dropna=True)

Argumenty, które możemy przekazać:

  • axis – domyślnie 0 (czyli liczenie unikalnych wartości w kolumnach). Jeśli ustawimy na 1, liczenie odbywa się na poziomie wierszy.
  • dropna – domyślnie True, co oznacza, że wartości NaN (brakujące) nie są liczone. Jeśli ustawimy na False, zostaną również uwzględnione.

Przykłady zastosowania pandas.nunique()

1. Liczenie unikalnych wartości w kolumnach

Załóżmy, że mamy następujący DataFrame:

import pandas as pd

data = {
    'A': [1, 2, 2, 3, 3, 3],
    'B': ['a', 'b', 'a', 'b', 'b', 'b'],
    'C': [None, 1, 2, 2, 2, None]
}

df = pd.DataFrame(data)

print(df.nunique())

Wynik:

A    3
B    2
C    2
dtype: int64

Wytłumaczenie:

  • Kolumna A ma 3 unikalne wartości: 1, 2, 3.
  • Kolumna B ma 2 unikalne wartości: a i b.
  • Kolumna C ma 2 unikalne wartości: 1 i 2 (wartości None nie są liczone).

2. Uwaga na wartości NaN

Jeśli chcemy, aby wartości NaN były liczone jako unikalne, musimy ustawić dropna=False:

print(df.nunique(dropna=False))

Wynik:

A    3
B    2
C    3
dtype: int64

Teraz kolumna C ma 3 różne wartości, ponieważ None został wzięty pod uwagę jako jeden z unikalnych elementów.

3. Liczenie unikalnych wartości w wierszach

Jeśli chcemy policzyć unikalne wartości dla każdego wiersza, musimy ustawić axis=1:

print(df.nunique(axis=1))

Wynik:

0    2
1    3
2    3
3    2
4    2
5    2
dtype: int64

Wytłumaczenie:

  • Wiersz 0: unikalne wartości to 1 i a, więc licznik zwraca 2.
  • Wiersz 1: mamy 2, b i 1 – licznik zwraca 3.
  • W pozostałych przypadkach również obliczane są unikalne wartości danych w każdym wierszu.

Porównanie pandas.value_counts() i pandas.nunique()

Warto także wspomnieć o podobnej funkcji, jaką jest pandas.value_counts(). O ile nunique() zwraca tylko liczbę unikalnych wartości, value_counts() zwraca dokładną liczbę wystąpień każdej wartości w danej kolumnie.

Przykład:

print(df['B'].value_counts())

Wynik:

b    4
a    2
Name: B, dtype: int64

Podsumowanie

Funkcja pandas.nunique() to jedno z przydatnych narzędzi do analizy danych w bibliotece pandas. Dzięki niej możemy:

  • Sprawdzić, ile unikalnych wartości znajduje się w kolumnie.
  • Określić, czy w zbiorze danych znajdują się duplikaty wartości.
  • Analizować zmienność danych w wierszach.
  • W łatwy sposób porównywać różne kolumny pod kątem ich różnorodności.

Teraz już wiesz, jak działa pandas nunique w języku Python i jak możesz wykorzystać tę funkcję w praktyce!

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