Dane, dane, dane! Dane są esencją tego bloga. A w zasadzie głównie praca z danymi. Bo dane same w sobie, mimo iż fajne, raczej nie stanowią efektu pracy analityka. Najbardziej interesuje nas to, co możemy wydobyć z danych i jak to coś możemy przekuć na analizę, proces lub produkt. Rozumiesz, nie? Po co nam więc jakieś pandy? Otóż Pandas — bo tak nazywa się biblioteka z tego artykułu — to podstawowe narzędzie z ekosystemu Python służące do przekształcania danych. I dowiesz się zaraz, dlaczego uważam, że to kolejne narzędzie, które gorąco polecam.
Złe dane
Dane, jakimi raczy nas świat są obecne praktycznie i teoretycznie we wszystkich formach i postaciach. Ilość ziarenek piasku w doniczce, długość fali elektromagnetycznej wyemitowanej przez kryształ, poziom bólu zęba w czasie leczenia kanałowego, piękno zaobserwowanej po burzy tęczy. Ciężko nam jednak pracować z taki niemalże poetyckimi informacjami. Musimy je jakoś sensownie przekształcić do formatu przystępnego dla komputera. Nie szukając daleko, trafiamy na … arkusz kalkulacyjny.
Dobre dane — ramka danych
Arkusz kalkulacyjny nie jest niczym nowym. Śmiem nawet traktować go jako jeden z elementów przyczyniających się do popularyzacji komputerów osobistych. Bo całkiem wygodnie pozwalał na umieszczanie różnych danych w komputerze. Arkusz kalkulacyjny powstał jednak dla ludzi, którzy nie są programistami. A co gdyby wziąć taki arkusz kalkulacyjny i przerobić go na coś bardziej programistycznego?
Czymś takim jest ramka danych. Ramka danych to taka sprytna tabela, której główną ideą jest to, żeby każdy wiersz stanowił jedną obserwację, a każda kolumna była cechą takiej obserwacji. Jeśli mamy taką ramkę danych, to świat stoi przed nami otworem.
Droga do ramki danych
No i tutaj pojawia się problem. Jak z tęczy i leczenia kanałowego dojść do ramki danych? Nie jest to łatwa sprawa, ale jeśli programujesz z językiem Python, to Pandas może Ci się przydać. Biblioteka ta pozwala między innymi na:
- wczytywanie różnych formatów plików
- tworzenie ramek danych
- operacje przekształceń tekstu
- operacje matematyczne na kolumnach danych
- agregacje danych
- proste wizualizacje
- wielopoziomowe indeksowanie obserwacji
- filtrowanie danych
- łączenie i dzielenie zbiorów danych
- pracę z szeregami czasowymi
- stosowanie własnych funkcji przekształcających
Wszystkie te elementy możemy sobie zaprogramować samodzielnie bez Pandas. Problemy jednak zaczną się bardzo szybko, szczególnie jeśli nasze dane są wartościowe, ale nieco zanieczyszczone. Czyli np. będą wybrakowane, będą posiadać nieprawidłowe wartości (np. waga: -15 KG), lub w ogóle będą błędne (np. wiek: zielony). Wtedy warto zdać się na doświadczenie programistów Pandas i spróbować ugryźć to w bardziej usystematyzowany sposób. Bo wszystkie te problemy da się rozwiązać na masową skalę właśnie przy pomocy biblioteki Pandas.
Pandas — Podsumowanie
Prawie zawsze dane, z którymi pracujemy, nie nadają się od razu do pracy. Musimy więc poświęcić trochę czasu na doprowadzenie ich do użytecznej formy, a najlepiej do ramki danych. Niemałą pomocą w tym procesie będzie biblioteka Pandas. Jeśli więc do tej pory jeszcze jej nie poznałeś, to gorąco polecam.