Po co programowanie w Pythonie
25.09.2022
Dzisiaj postaram się odpowiedzieć na pytanie, po co analitykowi danych programowanie w Pythonie. Opowiem Ci po krótce do czego może Ci się przydać.
We wstępie przejdziemy do konkretów, gdzie pokażę Ci ciut możliwości tego języka. Na koniec poruszę parę ważnych kwestii, które chciałbym z Tobą wyjaśnić na samym początku.
Dobra, to po co kodowanie w Python'ie analitykowi.
Zacznę od prezentacji tej pozytywnej strona Pythona. Pokaże Ci na moim przykładzie po co programowanie w Pythonie analitykowi i za co ja go lubię. Wszystko dostępne na podstawowym poziomie.
Python jest darmowy
Niby to błahostka, ale jeżeli pracujesz w firmie z ograniczonym budżetem, gdzie brakuje funduszy na narzędzia BI (te najpopularniejsze są płatne) czy dobrego Excela, to Python jest świetną możliwością zrobienia czegoś więcej. (patrz punkt poniżej)
Wykresy, wykresy, jeszcze raz wykresy! - Czyli jakie możliwości daje stworzenie wykresów w pythonie?
Z pewnością Python oferuję szereg możliwości zaawansowanej wizualizacji.
Wykresy interaktywne w pythonie - przykłady dynamicznych wykresów w Pythonie
Czy pamiętasz jak w Excelu zrobiłeś najpiękniejszy wykres, a później padło magiczne pytanie dotyczące jednego lub kilku punktu “A co to za punkt?“. W tym momencie “następuje zwolnienie blokady”.
W konsekwencji zaczyna się przeszukiwanie tabel, przerzucanie między arkuszami i próba znalezienia odpowiedzi. Do bibliotek Pythona dołączone są wykresy na przykład typu iplot, które po najechaniu na punkt podświetlają nam dany punkt i informację, które są dla nas wartościowe. Któryś z punktów A, B czy C Cię nie interesuję? Możesz w prosty sposób je wyłączyć! Prawda, że proste?
O ile ta metoda nie jest zbyt optymalna po wydruku, to już na spotkanie biznesowe taki wykres daje mnóstwo możliwości! Tego typu problemy rozwiązują narzędzie BI (Tablau, Power BI czy Qlik Sense). Jednak jak już wspomniałem to są komercyjne rozwiązania $$. Często niedostępne dla zwykłego śmiertelnika.
Python idealnie się sprawdził u mnie w momencie zmiany narzędzia BI w firmie, kiedy to nie było jeszcze ustandaryzowanego środowiska do dynamicznej wizualizacji danych.
Jak zrobić kilka wykresów obok siebie w pythonie
Tworzenie kilku wykresów obok siebie w Excelu to istne piekło. Na dodatek ile to się trzeba naklikać, wyrównywać, pokolorować. A niech przyjdzie coś zmienić np. zakres danych! Oo nie nigdy więcej! Tylko Python!
Skomplikowane wykresy w pythonie - przykład użycia wykresu pairplot
Czasami, nie znamy danych. Gdy trudno nam ocenić lub wysnuć wnioski do dalszej analizy. Do akcji wkracza Python i możliwość tworzenie prostych pairplot’ów. Na początku pomagają na przykład wychwycić różne podobieństwa, mogące służyć do dalszej analizy.
Nie jest to często może piękne i niewarte dzielenia ze światem zewnętrznym, ale jest niezwykle użyteczne.
Mógłbym zaprezentować jeszcze kilkanaście typów wykresów, które nie są dostępne w Excelu. Analiza cohorty czy Sankey plot to pierwsze typy, które przychodzą mi do głowy.
Projektowanie tabel, znajdywanie i naprawianie błędów w pythonie
- Łączenia kilku tabel, przechowywanie ich “wirtualnie” bez potrzeby tworzenia gigantycznych arkuszy.
- Wyszukiwanie pustych czy błędnych komórek. Możliwość ich elastycznego zastępowania, usuwania bez konsekwencji utraty wartościowych danych.
- Tworzenie wirtualnych pobocznych tabel/wierszy/kolumn niezbędnych na przykład do jednego czy dwóch wykresów.
Kilka słów wyjaśnienia - Po co programowanie w Pythonie analitykowi
Czy dużo zarobię na programowaniu w Pythonie?
Na zakończenie chciałbym między nami wyjaśnić parę rzeczy.
O ile nauczenie się kilku prostych formuł w Excelu czy Power Query jest dosyć proste. Może to trwać dzień, dwa, maksymalnie tydzień, o tyle zrozumienie podstawy Pythona może wymagać trochę czasu. Chciałbym Cię na początku zniechęcić i przestrzec przed tym.
Nie jestem ekspertem Pythona
Bloga traktuję jako dodatkową motywacje do nauki. W Pythonie siedzę z przerwami od dwóch lat. Poznałem szeroki wachlarz dróg jaki oferuję i za to go cenię (od analityka danych po data science i data inżyniera). Wiedzę zaczerpnąłem z książek, z kursów na UDEMY, medium.com czy kaggla (kiedyś wspomnę co i jak). Z polskich źródeł, osobiście wychowałem się na blogach dwóch Panów. Są to blogi Łukasza Prokurskiego i Mirosława Mamczura. To co chciałem zaznaczyć, nie jestem żadnym profesjonalistą.
Oho kolejny ekspert. “Nie jestem ekspertem, ale się wypowiem”. Tak możesz mnie tak nazwać. Patrzę do przodu i wiem, że przygotowując tego typu artykuły sam się doszkalam. Chociażby pod względem ortografii czy właśnie pythona. 😉
Jestem taką samą osobą jak Ty, która wieczorami zgłębia różne zakamarki “internetów” w poszukiwaniu rzeczy, które są ciekawe i mogą w przyszłości usprawnić moją pracę.
Jeżeli jesteś wymiataczem, z chęcią podpowiadaj. Z bloga nie czerpię żadnych korzyści. Od, daję ludziom możliwość nauki. Zastosowane metody, dobieram po to aby możliwie w jak najprostszy sposób przekazywać “ogólnodostępną” wiedzę. Wiem, że w Pythonie można dużo rzeczy zrobić w jednej linijce, chciałbym jednak aby to było przede wszystkim zrozumiałe.
To nie jest blog dla każdego
Przykro mi ale będę wrzucał zdjęcia kodu, a nie kod do prostego skopiowania! Dlaczego? Stwierdzam, że więcej pożytku będzie, jeżeli 2-3 osoby przepiszą ten kod ze zdjęcia i coś nieświadomie zapamiętają, niż jeżeli 10 osób, będą kopiowały i po 10 minutach nic, absolutnie nic z tego nie wyniosą. “Pisz jak najwięcej“ to rady wielu ekspertów w dziedzinie programowania, którą i ja tutaj zastosuję.
Po co programowanie w Pythonie? A co to jest R?
Są z reguły dwa główne języki stosowane w analizie danych. R i Python.
R jest częściej wybierany przez statystyków i matematyków. Pozwala na trochę bardziej zaawansowane wizualizację i matematycznie zaawansowane obliczenia (podobno), które w Pythonie nie są dostępne. Osobiście jednak uważam, że w przeciwieństwie do R, Python ma zdecydowanie mniej ograniczeń na dalszym etapie użytkowania. Przede wszystkim łatwiej się integruję na produkcji i ma bogatszy pakiet machine learningowy (ML).
R w tym temacie nie odstaje i jest nawet lepszy w przygotowywaniu tego typu zestawień ad-hock. Oba środowiska pozwalają tworzyć interaktywne wizualizacje. Python łatwiej zintegrować ze środowiskiem innych języków. Może to być istotne przy tworzeniu aplikacji mobilnych, gier czy stron internetowych. Na Pythona również jest trochę większe zapotrzebowanie prawdopodobnie przez swoją wszechstronność.
Liczba ofert pracy na portalu Linkedin z dnia 24.09.2022 na terytorium Polski. Bez podziału na model pracy.
Podsumowanie - Po co programowanie w Pythonie
Mam nadzieję, że odpowiedziałem Ci na pytanie zadane na wstępie. Za tydzień lub dwa zrobimy wprowadzenie do pythona, gdzie ściągnięmy niezbędne oprogramowanie i zrobimy prostą analizę.
Jeżeli Cię zainteresowałem, to do zobaczenia!
Pozdrawiam,
Mariusz