
Jeśli programujesz w języku Python i pracujesz z danymi, to na pewno natknąłeś się na bibliotekę pandas. Jest to jedno z najważniejszych narzędzi do analizy danych w ekosystemie Pythona. Kluczowym elementem tej biblioteki jest struktura Series
, która pozwala na łatwe przechowywanie i manipulowanie jednowymiarowymi danymi.
Czym jest pandas.Series?
Obiekt pandas.Series
to jednowymiarowa struktura danych, która przypomina list
lub numpy array
, ale ma istotną różnicę – każdy element jest indeksowany. Możemy myśleć o Series jako o kolumnie w tabeli, gdzie każda wartość ma swój unikalny indeks.
Jak stworzyć obiekt pandas Series?
Aby utworzyć obiekt Series
, musimy skorzystać z klasy pd.Series()
. Możemy do niego przekazać:
- listę wartości,
- tablicę NumPy,
- słownik.
Oto kilka przykładów:
import pandas as pd
import numpy as np
# Tworzenie Series z listy
s1 = pd.Series([10, 20, 30, 40])
print(s1)
# Tworzenie Series z tablicy numpy
s2 = pd.Series(np.array([1.1, 2.2, 3.3, 4.4]))
print(s2)
# Tworzenie Series ze słownika
s3 = pd.Series({'a': 100, 'b': 200, 'c': 300})
print(s3)
Indeksowanie w pandas Series
Serie w pandas są indeksowane automatycznie liczbami od zera, ale można nadawać im własne indeksy.
# Tworzenie Series z niestandardowym indeksem
s4 = pd.Series([10, 20, 30], index=['x', 'y', 'z'])
print(s4)
Teraz wartości są przyporządkowane do indeksów 'x'
, 'y'
i 'z'
, a nie domyślnych 0, 1, 2.
Odczytywanie danych z Series
Odczytanie wartości jest proste – można korzystać zarówno z indeksu numerycznego, jak i własnego.
# Odczytanie wartości przez domyślny indeks
print(s4[0]) # Wynik: 10
# Odczytanie wartości przez etykietę indeksu
print(s4['y']) # Wynik: 20
Podstawowe operacje na pandas Series
Obiekty Series wspierają wiele operacji matematycznych i statystycznych:
print(s1.mean()) # Średnia wartość
print(s1.sum()) # Suma wszystkich wartości
print(s1.max()) # Maksymalna wartość
print(s1.min()) # Minimalna wartość
Filtrowanie wartości
Możemy łatwo filtrować wartości w obiekcie Series
, stosując warunki logiczne.
# Filtrowanie wartości większych od 20
filtered_s1 = s1[s1 > 20]
print(filtered_s1)
Łączenie dwóch obiektów Series
Możemy łatwo łączyć dwie różne serie, a przy tym indeksy zostaną odpowiednio dopasowane.
s5 = pd.Series([50, 60], index=['y', 'z'])
merged_series = s4 + s5
print(merged_series)
Jeśli indeksy się pokrywają, wartości zostaną dodane. W przeciwnym razie wynik będzie NaN
.
Konwersja Series na listę lub słownik
Jeśli chcemy przekształcić Series na inną strukturę danych, możemy użyć metody .to_list()
lub .to_dict()
.
series_list = s1.to_list()
series_dict = s3.to_dict()
print(series_list) # [10, 20, 30, 40]
print(series_dict) # {'a': 100, 'b': 200, 'c': 300}
Praktyczny przykład zastosowania pandas Series
Załóżmy, że mamy sklep i przechowujemy miesięczną sprzedaż w tysiącach złotych. Chcemy przeanalizować, które miesiące miały najwyższą sprzedaż.
sales = pd.Series(
[50, 45, 60, 72, 65, 80, 90, 85, 78, 62, 55, 50],
index=['styczeń', 'luty', 'marzec', 'kwiecień', 'maj', 'czerwiec',
'lipiec', 'sierpień', 'wrzesień', 'październik', 'listopad', 'grudzień']
)
# Miesiąc z największą sprzedażą
best_month = sales.idxmax()
max_sales = sales.max()
print(f'Najlepszy miesiąc: {best_month} - sprzedaż: {max_sales} tys. zł')
Podsumowanie
Obiekt pandas.Series
to niezwykle przydatne narzędzie do pracy z jednowymiarowymi danymi. Dzięki swoim funkcjom pozwala na:
- łatwe tworzenie i indeksowanie danych,
- wykonywanie operacji matematycznych,
- filtrowanie wartości,
- łączenie różnych serii,
- sprawne przekształcanie danych.
Teraz wiesz już, jak działa pandas series w języku Python i znasz przykład zastosowania. To potężne narzędzie, które znajdzie swoje miejsce w wielu projektach analitycznych.
„` Inny ciekawy artykuł: Jak działa pandas dataframe w języku Python? Przykład zastosowaniaOpanuj 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, Tableau i Pythona z certyfikatami + specjalistycznych webinarów z PowerBI.
Ekskluzywana ale pomagająca sobie społeczność.
Ponad 61 godzin materiałów video.
Spotkania LIVE co miesiąc.
Mój osobisty mentoring.