Data Science: Analiza danych w Python i PANDAS
- Opis
- Program
- Najczęściej zadawane pytania
- Recenzje
Ten kurs wchodzi w skład serii kursów o Pythonie. Wybierz właściwy, zależnie od stopnia znajomości Pythona i zainteresowań.
Dlaczego ten kurs?
-
Bo podstawą do stosowania Pythona w Data Science jest właśnie moduł PANDAS. W pierwszym lepszym przykładzie Machine Learning znajdziesz obiekty, które są omawiane tu na tym kursie
-
Bo dane, które wczytujesz i chcesz analizować trzeba najpierw oczyścić i przetworzyć i w tym również wykorzystuje się PANDAS
-
Bo każda lekcja ma quiz i praktyczne zadania do samodzielnego rozwiązania – zdaniem autora samo patrzenie nie wystarcza żeby się nauczyć – praktyka jest konieczna
-
Bo kurs jest dość szczegółowy – ma ponad 13 godzin nagrań a i tak porusza tylko te najważniejsze aspekty pracy z danymi
-
Bo do kursu masz dołączone materiały do wykonywania ćwiczeń – specjalnie dobrane zbiory pozwalają praktycznie stosować możliwości poznawanych poleceń
-
Bo tylko na takim praktycznym kursie masz szansę rzeczywiście czegoś się nauczyć – a sądzę, że to właśnie Twój cel!
-
Naukę możesz kontynuować na innych kursach tego samego autora
To nie jest kurs dla zupełnie początkujących. Wśród wymogów znajdziesz przynajmniej podstawową znajomość Pythona oraz chociaż ogólną wiedzę o analizie danych. Ale bez obaw!
-
Jeśli chodzi o wiedzę z zakresu programowania w Pythonie – możesz ją zdobyć na kursie „Python dla początkujących”. Jeśli już używasz Pythona, możesz przejrzeć sam spis treści tego kursu i zweryfikować, czy znasz te tematy.
-
Jeśli chodzi o podstawową znajomość analizy danych, mam na myśli typowe czynności, jakie wykonujemy np. w Excelu. Tam też dane się importuje, przetwarza i analizuje. W tym kursie generalnie robimy to samo, ale w zupełnie inny sposób. Dlatego znajomość np. Excela będzie bardzo mile widziana.
-
Po tym kursie możesz kontynuować naukę na kursie tego samego autora “Python dla średnio zaawansowanych“
Kurs dość dokładnie omawia wszystkie tematy i właściwie nie ma w nim teorii. Praktycznie tylko video, quizy i zadania do samodzielnego rozwiązania.
Kurs jest dość intensywny. Każde nagranie skupia się na innym temacie i nie tracimy czasu. Główna zaleta kursu online jest taka, że jeśli chcesz aby Ci coś powtórzyć, to nie musisz o to specjalnie prosić… wystarczy skorzystać z przycisku „cofnij 15 sekund wstecz”. Z kolei jeśli materiał już znasz i chcesz go tylko przesłuchać, możesz zwiększyć lub zmniejszyć jego prędkość. O ile tylko nie denerwuje Cię zmiana głosu na bardziej piskliwy, to… czemu nie – korzystaj!
Zaczynamy od skonfigurowania środowiska. Tutaj jest to zrobione w oparciu o system Windows. Jeżeli korzystasz z Linux lub MacOS, to kroki do wykonania są podobne, ale w materiałach ich nie znajdziesz. Jeśli masz już zainstalowane środowisko u siebie to oczywiście ten blok możesz przerobić pobieżnie. Chcę żeby pracowało Ci się wygodnie, dlatego nie tylko instalujemy Jupyter Notebook, ale jeszcze dodatkowo omawiamy jak pracować z nim wydajnie. Jak go konfigurować, dodawać do niego pakiety, jak korzystać ze skrótów klawiaturowych itp. Wiem, że kiedy „palisz się” do analizy danych ten wstęp może Ci się wydawać przydługawy. Możesz w takim przypadku przeskoczyć część tematów i kontynuować lekcje poświęcone PANDAS, a tu wrócisz później. Zdecydowałem się dodać te lekcje po to, żeby ułatwić Ci pracę z PANDAS na własną rękę. Zwłaszcza te kilka lekcji poświęcone tematyce zaawansowanej konfiguracji środowiska z linii komend przydadzą się, kiedy napotkasz jakieś problemy, a znajdowane na forach odpowiedzi będą mówiły o instalacji pakietu przez conda…
Żeby dane analizować, trzeba je mieć. Wszystkie pliki prezentowane na kursie jak i potrzebne do rozwiązywania zadań są dołączone do kursu. W większości przypadków podaję też skąd te materiały pochodzą i moim zdaniem ich dystrybucja nie jest zabroniona – korzystaj do woli, albo szukaj innych na własną rękę. W Internecie jest naprawdę mnóstwo ciekawych i darmowych zbiorów.
Potem właściwie zaczynamy najważniejszą część kursu opowiadającą o PANDAS. Pełna nazwa PANDAS to Python and data analysis i logo tego pakietu to kilka wykresików, ale… sam powiedz z czym się graficznie kojarzy nazwa PANDAS…
Kluczowa w PANDAS i analizie danych jest kolumna danych – tutaj zwana Data Series. Ten obiekt trzeba bardzo dobrze poznać, bo inne obiekty i polecenia bardzo mocno go wykorzystują. Kiedy sam uczyłem się PANDAS bardzo mnie to denerwowało, że tyle czasu uczyłem się tylko o przetwarzaniu pojedynczej kolumny, ale uwierz mi – to nie będzie stracony czas.
Potem przechodzimy do zbioru kolumn, co w PANDAS nazywa się Data Frame. Tu będzie już ciekawiej, bo da się obserwować na raz więcej kolumn a więc i więcej danych. Na tym etapie możesz już pomyśleć o budowaniu analiz własnych zbiorów danych.
Dalej opowiemy o modyfikacji danych. Można by myśleć, że przy analizie danych, nie trzeba ich modyfikować i ogólnie chyba rzeczywiście tak jest. Ale warto wiedzieć jak dodać wiersz, kolumnę, przebudować indeks, bo to też metody na przygotowanie danych do analizy.
W następnym etapie jesteśmy gotowi do pierwszych analiz. Indeksy będą mogły już składać się z wielu poziomów, będziemy je przerzucać z wierszy do kolumn i odwrotnie, zbudujemy tabele przestawne, albo właśnie przekształcimy dane z postaci tabeli danych do normalnej tabeli.
Kolejny krok to grupowanie danych i agregacja danych. Posiadając zagregowane dane możesz analizować je w mniejszych fragmentach, a dzięki temu możesz wykrywać zależności w tych danych i ich charakterystyczne dane. Bez tego wszystkie wyniki byłyby uśrednione na cały zbiór danych i przez to najprawdopodobniej zupełnie bez wartości, a tak możesz zobaczyć charakterystyczne cechy zakupów w poszczególnych regionach czy inne zainteresowania w zależności od wieku i płci itp.
Rzadko kiedy wszystko to, co jest potrzebne jest w jednym miejscu, często jedna sytuacja jest opisywana przez kilka zbiorów danych. Dlatego właśnie mamy specjalną sekcję dotyczącą łączenia danych z różnych źródeł. Myśl o tym jak o łączeniu tabel w bazie danych lub łączeniu arkuszy w skoroszycie.
Kolejny temat to wykresy. Przedstawiamy tu kilka różnych rodzajów wykresów i zmieniamy ich wygląd modyfikując ich mniej i bardziej zaawansowane parametry, ale nie ma co ukrywać – za wykresy w PANDAS odpowiadają funkcje z matplotlib. Informacje z tego kursu będą wystarczające do samodzielnego zbudowania wykresów i zaprezentowania na nich analizowanych danych, ale moduł matplotlib nie jest tutaj omawiany – to duży temat na osobny kurs.
Naukę kończymy dodatkowymi materiałami dotyczącymi pobierania i zapisywania danych na zewnątrz PANDAS, włączając w to dane pobierane z Internetu lub wczytywane i zapisywane w plikach excel.
Zapraszam do nauki. Otwórz sobie drzwi do Data Science!
-
4Instalacja środowiska Anaconda - VIDEOVideo lesson
- Pobranie i instalacja Anaconda
- Testowanie instalacji
-
5Instalacja środowiska Anaconda - QUIZQuiz
-
6Instalacja środowiska Anaconda - LABText lesson
-
7Anaconda Navigator i Anaconda Propmpt - VIDEOVideo lesson
- Jak pracować z Anaconda Navigator
- Do czego służy Anaconda Navigator
- Jak zarządzać pakietami
- Jak pracować z Anaconda Prompt
- Kiedy może się przydać Anaconda Prompt
- Struktura plików i folderów wchodzących w skład instalacji Anaconda
-
8Anaconda Navigator i Anaconda Propmpt - QUIZQuiz
-
9Anaconda Navigator i Anaconda Propmpt - LABText lesson
-
10Konfiguracja Jupyter Notebook przez Anaconda Prompt - VIDEOVideo lesson
- Gdzie domyślnie Jupyter Notebook zapisuje sktypty
- Jak wygenerować plik konfiguracyjny dla Jupyter Notebook
- Jak modyfikować ten plik
- Jak modyfikować skrót programu Jupyter Notebook
-
11Konfiguracja Jupyter Notebook przez Anaconda Prompt - QUIZQuiz
-
12Konfiguracja Jupyter Notebook przez Anaconda Prompt - LABText lesson
-
13GRATIS: Anaconda Prompt Cheat SheetText lesson
-
14Praca z Jupyter Notebook - skróty klawiaturowe - VIDEOVideo lesson
- Tryby pracy Jupyter Notebook
- Skróty klawiaturowe trybu edycji
- Skróty klawiaturowe trybu komend
- Wyszukiwanie poleceń i help
-
15Praca z Jupyter Notebook - skróty klawiaturowe - QUIZQuiz
-
16Praca z Jupyter Notebook - skróty klawiaturowe - LABText lesson
-
17Składnia Jupyter Notebook Markdown - VIDEOVideo lesson
- Tworzenie eleganckich komentarzy w Jupyter Notebook
- Korzystanie ze stylu H1, H2, listy punktowanej, listy numerowanej,, wyróżnianie fragmentu tekstu
- Wstawianie ilustracji
- Wstawianie odnośników
- Wstawianie wzrorów zapisanych w LaTeX
-
18Składnia Jupyter Notebook Markdown - QUIZQuiz
-
19Składnia Jupyter Notebook Markdown - LABText lesson
-
20Jupyter Notebook od środka - VIDEOVideo lesson
Jak Jupyter Notebook uruchamia sktypty Python
Jak resetować sesję
Problem z połączeniem do notebooka
-
21Jupyter Notebook od środka - QUIZQuiz
-
22Jupyter Notebook od środka - LABText lesson
-
23ErrataText lesson
-
24Zarządzanie pakietami z linii komend - conda - VIDEOVideo lesson
- Jak uruchomić conda
- Jak zaktualizować pojedynczy pakiet, w tym conda
- Jakie rzeczy są sprawdzane podczas aktualizacji lub instalacji pakietu
- Jak zainstalować pakiet
- Dlaczego praca z linią komend jest czasami lepsza od pracy z interfejsem graficznym
-
25Zarządzanie pakietami z linii komend - conda - QUIZQuiz
-
26Zarządzanie pakietami z linii komend - conda - LABText lesson
-
27Pliki ćwiczenioweText lesson
-
28Korzystanie z modułów - VIDEOVideo lesson
- Jak załadować moduł
- Standardowo wykorzystywane aliasy
- Korzystanie z funkcji modułu
- Korzystanie z funkcji "magicznych"
-
29Korzystanie z modułów - QUIZQuiz
-
30Korzystanie z modułów - LABText lesson
-
31Analiza danych - wprowadzenie - VIDEOVideo lesson
- Sposoby prezentacji danych
- Częste pułapki w analizie danych
- Narzędzia stosowane do analizy danych
- Data Series i Data Frame
-
32Analiza danych - wprowadzenie - QUIZQuiz
-
33Analiza danych - wprowadzenie - LABText lesson
-
34Ręczne tworzenie Data Series - VIDEOVideo lesson
- Jak utworzyć Data Series z listy
- Jak utworzyć Data Series z dictionary (hash table)
- Indeks
-
35Ręczne tworzenie Data Series - QUIZQuiz
-
36Ręczne tworzenie Data Series - LABText lesson
-
37Atrybuty Data Series - VIDEOVideo lesson
- Co to jest atrybut
- Atrybuty size, nbytes, is_unique, is_monotonic, is_monotonic_increasing, is_monotonic_decreasing, dtype, index, values, shape, axes
-
38Atrybuty Data Series - QUIZQuiz
-
39Atrybuty Data Series - LABText lesson
-
40Metody Data Series - AktualizacjaText lesson
-
41Metody Data Series - VIDEOVideo lesson
- Co to jest metoda
- Przykłady prostych metod obiektu Series
- Metody i podobnie działające indeksy
- Przekazywanie parametrów do metod
- Porównanie Data Series z Dictionary
- Uzyskiwanie pomocy dla metod
-
42Metody Data Series - QUIZQuiz
-
43Metody Data Series - LABText lesson
-
44Filtrowanie danych w serii - VIDEOVideo lesson
- Filtrowanie danych metodą where()
- Budowanie warunku filtrowania
- Praca z kopią zwróconych danych
- Eliminacja wartości NaN
- Korzystanie z parametru inplace
- Method chaining i błedy z nim związane
- Filtrowanie danych wg wartości indeksu
-
45Filtrowanie danych w serii - QUIZQuiz
-
46Filtrowanie danych w serii - LABText lesson
-
47Bardziej zaaawansowane filtrowanie - VIDEOVideo lesson
Budowanie bardziej złożonych kryteriów filtrowania
Operator & - AND bitowy
Metoda between
-
48Bardziej zaaawansowane filtrowanie - QUIZQuiz
-
49Bardziej zaaawansowane filtrowanie - LABText lesson
Zadania znajdują się w załączniku
-
50Uwaga technicznaText lesson
-
51Import danych do obiektu Series - VIDEOVideo lesson
- Import danych z pliku
- Import danych ze schowka
- Parametry usecols, i squeeze
- Konwersja kolumny DataFrame do Series
- Metody head() i tail()
- Błędy związane z method chaining
-
52Import danych do obiektu Series - QUIZQuiz
-
53Import danych do obiektu Series - LABText lesson
-
54Standardowe metody Pythona a obiekty PANDAS - VIDEOVideo lesson
- Standardowe metody w pracy z PANDAS
- type
- min max
- len
- sorter
- list dict
- atrybut name
-
55Standardowe metody Pythona a obiekty PANDAS - QUIZQuiz
-
56Standardowe metody Pythona a obiekty PANDAS - LABText lesson
-
57Sortowanie danych w data series - VIDEOVideo lesson
- Sortowanie danych
- Sortowanie indeksu
- Parametr ascending
- Parametr inplace
- Wskazówki wydajnościowe dot. sortowania serii danych
-
58Sortowanie danych w data series - QUIZQuiz
-
59Sortowanie danych w data series - LABText lesson
-
60Sprawdzanie czy element jest w serii - VIDEOVideo lesson
- Działanie operatora in z listami
- Działanie operatora in z seriami
- Sprawdzanie czy wartość jest w indeksie lub wartościach serii
-
61Sprawdzanie czy element jest w serii - QUIZQuiz
-
62Sprawdzanie czy element jest w serii - LABText lesson
-
63Pobieranie wartości po indeksie - VIDEOVideo lesson
- pobieranie wartości po indeksie
- pobieranie wartości dla kilku wartości indeksu na raz
- pobieranie zakresu danych
- pobieranie indeksem ujemnym
-
64Pobieranie wartości po indeksie - QUIZQuiz
-
65Pobieranie wartości po indeksie - LABText lesson
-
66Pobieranie wartości z serii - porównanie metod - AktualizacjaText lesson
-
67Pobieranie wartości z serii - porównanie metod - VIDEOVideo lesson
- operator [ ]
- metoda get
- metoda at[ ]
- metoda iat[ ]
- metoda loc[ ]
- metoda iloc[ ]
- metoda ix[ ]
-
68Pobieranie wartości z serii - porównanie metod - QUIZQuiz
-
69Pobieranie wartości z serii - porównanie metod - LABText lesson
Zadania znajdziesz w załączniku
-
70Reindex i intersection - VIDEOVideo lesson
- błędy powstające przy pobieraniu wartości z serii
- metoda reindex
- metoda intersection
- wykorzystanie w/w metod przy wyszukiwaniu wartości w serii
-
71Reindex i intersection - QUIZQuiz
-
72Reindex i intersection - LABText lesson
-
73Uwaga techniczna - parametr squeezeText lesson
-
74Określanie indeksu podczas importu - VIDEOVideo lesson
- określanie indeksu podczas importowania danych
- parametry usecols i index_col
- korzystanie z indeksu
-
75Określanie indeksu podczas importu - QUIZQuiz
-
76Określanie indeksu podczas importu - LABText lesson
-
77Więcej metod Data Series - VIDEOVideo lesson
- metody min max
- metody idxmin idxmax
- metody mean, median, std
-
78Więcej metod Data Series - QUIZQuiz
-
79Więcej metod Data Series - LABText lesson
-
80Modyfikacja serii danych - VIDEOVideo lesson
- Proste operacje arytmetyczne na serii danych
- Operacje na danych tekstowych
- Zaawansowane operacje na serii z wykorzystaniem metody apply
- Metoda apply z wyrażeniem lambda
-
81Modyfikacja serii danych - QUIZQuiz
-
82Modyfikacja serii danych - LABText lesson
Zadania znajdziesz w załączniku
-
83Metoda map - VIDEOVideo lesson
- Metoda map łącząca dane z dwóch serii
- Metoda map łącząca dane z serii z danymi w słowniku
-
84Metoda map - QUIZQuiz
-
85Metoda map - LABText lesson
Zadania znajdują się w pliku
