EM Poleca (#39) William Ayd, Matthew Harrison – „Pandas. Receptury”

Najlepszą rekomendacją książki o jakimś dziele jest pochwała jego twórcy. Tak jest w tym przypadku. Wes McKinney, twórca otwartoźródłowej biblioteki Pandas służącej do analizy danych, we wstępie do omawianej książki szczerze ją poleca. Mógłbym więc odpuścić i nie pisać tej recenzji. Jednak piszę dla portalu Eksperyment Myślowy, gdzie bardziej od opinii liczy się przekazanie szczypty (albo dwóch) wiedzy, dlatego dodam co nieco od siebie.
Analityka danych rozumiana jako proces zbierania, przetwarzania, analizowania i interpretowania dużych ilości danych, w celu wyciągnięcia wniosków, identyfikacji wzorców i trendów, wspierając tym samym podejmowanie świadomych decyzji, często przy użyciu statystyki, uczenia maszynowego i wizualizacji danych istnieje od początku ery komputerów. Można powiedzieć, że do przetwarzania danych komputery zostały stworzone: do obliczania trajektorii rakiet, modelowania pogody, analizy rozpadów promieniotwórczych i innych podobnych zadań, gdzie mózg ludzki nie gwarantuje odpowiedniej wydajności.
Do zbierania i przetwarzania danych służyły i służą bazy danych. Z czasem okazało się jednak, że język zapytań SQL i język R to trochę za mało. Jednocześnie rozkwitał Python jako uniwersalny język programowania, łatwy do opanowania i szybki, idealny kandydat na język do obróbki dużych ilości danych. Wspomniany Wes McKinney zaczął w 2008 roku tworzyć Pandas jako osobisty zestaw narzędzi, nie przypuszczając nawet, jaką popularność jego dzieło zdobędzie. To dzięki Pandasowi Python stał się na długie lata głównym językiem do analizy danych, a Pandas najbardziej znaną biblioteką o otwartch źródłach. Sam używałem Pandas do analiz danych w czasie pandemii Covid-19 i mogę powiedzieć z własnego doświadczenia, że jest naprawdę dobrze zaprojektowany, doskonale wpasowujący się w analityczną „linię produkcyjną” aplikacji. Inne elementy tej linii produkcyjnej, czyli Python i framework FastAPI będą tematami najbliższych recenzji na łamach Eksperymentu Myślowego.
Co jest zachęcającego w Pandasie?
Wiele rzeczy. Jak pisałem Wes McKinney zaczął pisać Pandasa na własne potrzeby. Dlaczego podkreślam ten właśnie aspekt? To proste, Kinney jako programista i analityk danych posługując się istniejącymi narzędziami poczuł narastający dyskomfort pracy. W tym, czym się posługiwał czegoś było za dużo, czegoś za mało, coś uwierało, a jeszcze coś innego, pozornie prostego, musiał robić stosując sztuczki i obejścia. W końcu doszedł do wniosku, że lepiej będzie, jak sam „uszyje na miarę” pakiet narzędziowy jakiego potrzebuje. To jest właśnie synergia wyzwalająca się z układu, w którym użytkownik (usługobiorca) jest jednocześnie rzemieślnikiem (usługobiorcą). I tak powstał Pandas.
Pandas nie jest przeznaczony do przetwarzania ogromnych ilości danych, powiedzmy to jasno. Głównym założeniem Pandasa była prostota i szybkość działania. Dlatego Pandas wszystkie operacje wykonuje w pamięci operacyjnej, nie korzysta z buforowania dyskowego ani z zewnętrznych baz danych. Od tego typu i skali prac są inne pakiety, bardziej wyszukane, ale i trudniejsze do nauczenia i wymagające dłuższej, systematycznej nauki, aby wycisnąć z narzędzia maksimum możliwości. Nie znaczy to, że Pandasem można obrabiać tylko małe ilości danych. Pamięć operacyjna współczesnych komputerów, idąca w setki gigabajtów, to naprawdę dużo miejsca i trzeba się porządnie napracować, żeby się chciaż otrzeć o pandasowe ograniczenia.
Po co więc książka skoro Pandas jest taki łatwy?
Jest łatwy do zrozumienia, logiczny i poukładany, ale jak każda platforma programistyczna (bo Pandas jest frameworkiem zanurzonym w Pythonie), wymaga umiejętności i biegłości w posługiwaniu się. Nie chodzi o składnię wywołań i parametrów, ta jest dość oczywista, konstrukcje są proste i intuicyjne. Bardziej chodzi o optymalność przetwarzania danych, maksymalne wykorzystanie możliwości biblioteki, aby osiągnąć maksymalną wydajność. A różnice mogą być naprawdę duże, sięgające 10-krotności. Oznacza to, że prosta zmiana kolejności lub indeksowania, wybranie takiej struktury danych a nie innej, może przyspieszyć działanie programu o >1000%. To nie czarna magia, to kilkunastoletnie starania twórców biblioteki sprawiły, że Pandas został liderem w analitycznym przetwarzaniu danych w skali, powiedzmy, nieekstremalnej.
Słowo „Receptury” w tytule oznacza, że treścią książki jest praktyczny Pandas od A do Z, czyli od podstawowych obiektów typu Series i DataFrame, poprzez typy danych, wejście-wyjście, podstawowe algorytmy, grupowanie danych, szeregi czasowe aż do sposobów na poprawienie wydajności przetwarzania.
Końcowy rozdział to skrótowe omówienie ekosystemu Pandas, czyli pakietów współpracująch, służących do wizualizacji, przetwarzania statystycznego i naukowego, bazy danych, a także pakietów „konkurencyjnych”, jak na przykład Polars.
Dodam jeszcze, że Helion (wydawca) wydał także książkę „Python w analizie danych. Przetwarzanie danych za pomocą pakietów Pandas i NumPy oraz środowiska Jupyter” wspomnianego twórcy Pandasa, Wesa McKinneya.
„Pandas. Receptury. Obliczenia naukowe, szeregi czasowe i eksploracyjna analiza danych w Pythonie. Wydanie III”, William Ayd, Matthew Harrison. Wydawnitwo Helion 2025
Notki o autorach:
William Ayd, jeden z głównych opiekunów projektu pandas. Odpowiadając na pytania użytkowników jest twórcą popularności i potęgi pandasa.
Matt Harrison, konsultant i właściciel firmy szkoleniowej w zakresie Pythona i analizy danych. Autor książek: Machine Learning Pocket Reference, Illustrated Guide to Python 3 oraz Learning the Pandas Library.
Autor

- Jestem informatykiem i analitykiem. Przez trzy lata analizowałem i prezentowałem dane epidemiczne na Twitterze jako @docent_ws. W gronie pasjonatów z Twitterowej Akademii Nauk (TAN) uzupełniamy wiedzę na temat Covid-19. Na BlueSky jako @wieslawseweryn.bsky.social. Piszę o informatyce i Kosmosie, recenzuję i polecam książki popularnonaukowe. Walczę z dezinformacją, którą uważam za największe zagrożenie ery social-mediów.
Ostatnie wpisy
EM poleca14 stycznia 2026EM poleca (#41) Ryan Day „Interfejsy API w AI i Data Science. Programowanie w Pythonie z użyciem FastAPI”
EM poleca31 grudnia 2025EM Poleca (#40) Mark Lutz „Python. Wprowadzenie. Wydanie VI”
EM poleca24 grudnia 2025EM Poleca (#39) William Ayd, Matthew Harrison – „Pandas. Receptury”
astronomia17 grudnia 2025EM Poleca (#38) – Neil deGrasse Tyson „Z Merlinem przez wszechświat”




