1.2. Program

  1. Biblioteki używane w analizie numerycznej i Data Science

    • Scipy: wprowadzenie do ekosystemu narzędzi

    • Jupyter: instalacja, uruchamianie, korzystanie, latex, zaawansowane opcje

    • Markdown: krótkie wprowadzenie do składni i możliwości

  2. (opcjonalnie) Python i wprowadzenie do programowania

    • Składnia: komentarze, docstring, doctest, zmienne, print

    • Typy: int, float, str, bool, None

    • Sekwencje: tuple, list, set, zagnieżdżone struktury danych

    • Mapy: dict

    • Operatory: numeryczne, logiczne

    • Konstrukcje warunkowe: if, else, elif

    • Pętle: for, while, comprehensions

    • Instrukcje przepływu: exception, pliki, rozpakowywanie

    • Funkcje: zwracanie wartości, argumenty pozycyjne, nazwane, wymagane, domyślne, args, kwargs

    • Programowanie obiektowe: klasy, atrybuty, metody, dziedziczenie, przeciążanie operatorów

    • Pakiety: instalacja, używanie, venv

    • Matematyka: precyzja, liczby losowe, statystyka, liczby zespolone

    • Daty i czas: parsowanie i formatowanie, strefy czasowe

    • Ekstrakcja danych z różnych formatów (JSON, CSV, HTML, SQL)

  3. Zagadnienia wydajnościowe

    • Micro-benchmarking

    • Złożoność obliczeniowa i pamięciowa

    • Pamięć: Architektura RAM, kopiowanie i referencje

    • Techniki pracy z danymi większymi niż ilość RAMu

    • Generatory i Iteratory

    • Triki zwiększające wydajność

  1. Numpy i analiza numeryczna

    • Typy wbudowane i stałe: array, poly1d, nan, inf

    • Import i export danych, serializacja, łączenie

    • Definiowanie tablic: tworzenie, generowanie, opis typu

    • Pseudolosowość: Problematyka, ziarno, sampling, tasowanie

    • Atrybuty: typy danych, kształt, wielkość, rozmiar danych, osie

    • Wybieranie: indeksacja, wycinanie, fancy indexing

    • Iteracja: operacje zwektoryzowane, funkcje uniwersalne, zmiana wymiarów, spłaszczanie

    • Manipulacja: zaokrąglanie, przycinanie, wstawianie, wypełnianie, transpozycja, sortowanie

    • Arytmetyka: operacje arytmetyczne i macierzowe, wyznaczniki

    • Statystyka: ekstrema, wariancja, odchylenie standardowe, średnie, mody, kowariancje, korelacje

    • Logika: operatory, wybieranie, maski, where

    • Trygonometria: funkcje, konwersje, stałe

    • Wielomiany: współczynniki, miejsca zerowe, pierwiastki, dopasowanie wielomianów, arytmetyka, pochodne, całki

  2. Pandas i obróbka danych

    • Konfiguracja biblioteki oraz wyświetlania

    • Import i export danych, serializacja, łączenie

    • Typy danych: Series, DataFrame, SparseArray, Interval, Categorical

    • Daty: frequency, Timestamp, strefy czasowe, Timedelta, DateOffset, Date Ranges

    • Indeksy: numeryczne, alfabetyczne, szeregi czasowe

    • Series: tworzenie, atrybuty, indeksy, slice, wypełnianie, podmiana, usuwanie, arytmetyka, sampling, tasowanie

    • DataFrame podstawy: tworzenie, indeksy, kolumny, slice, wybieranie wartości, locate, at, sampling, tasowanie

    • DataFrame zaawansowane: statystyki, grupowanie, agregacje, join, wykresy

    • Architektura i plany rozwoju Pandas

  3. Matplotlib i wizualizacja

    • Porównanie z Bokeh, Seaborn, Plot.ly

    • Anatomia wykresu i możliwości modyfikacji, dostosowywanie wykresów

    • Proste wykresy, przykłady wykresów

    • Eksport i formaty wyjściowe

    • Praca z wieloma wykresami na jednym obrazku

    • Wykresy: punktowe, liniowe, box, słupkowe, pie, 3D,

    • Stylowanie wykresów