Praktyczne zastosowanie języka Python 2400-ZEWW1052
Przedmiot „Praktyczne zastosowanie języka Python” jest kontynuacją kursu „Wprowadzenie do programowania w języku Python”. Jego celem jest przygotowanie studentów do samodzielnego wykorzystania Pythona w analizie danych – w pracy dyplomowej i w pracy zawodowej. Kurs obejmuje cały proces analizy: pozyskanie danych, ich przygotowanie i kontrolę jakości, analizę, wizualizację i przedstawienie wyników.
Zajęcia mają charakter warsztatowy i odbywają się w pracowni komputerowej. W kolejnych blokach tematycznych omawiane będą następujące zagadnienia:
Organizacja projektu analitycznego – struktura folderów projektu (dane surowe i przetworzone), ścieżki względne, własne moduły, koncepcja danych uporządkowanych (tidy data).
Pozyskiwanie danych ze źródeł oficjalnych – interfejsy API Eurostatu i Banku Danych Lokalnych GUS, dane w formatach CSV i JSON.
Pandas I: przekształcanie struktury danych – format długi i szeroki (pivot, pivot_table, melt), indeksy wielopoziomowe.
Pandas II: łączenie danych i kontrola jakości, ujednolicanie nazw z użyciem wyrażeń regularnych, weryfikacja połączeń (validate, indicator, anti-join), testy poprawności danych.
Pandas III: szeregi czasowe i operacje na grupach – daty i indeks czasowy, zmiana częstotliwości danych, średnie kroczące, obliczenia w grupach (groupby, transform).
Wizualizacja danych – zasady doboru wykresu do pytania badawczego, budowa i dopracowanie wykresu w matplotlib (etykiety, adnotacje, formatowanie osi, wspólny styl), wykresy statystyczne w seaborn: rozkłady, zależności, przedziały ufności, wykresy wielopanelowe.
Wizualizacje geograficzne – dane przestrzenne (GeoJSON, układy współrzędnych), łączenie danych statystycznych z mapą, kartogramy, mapy interaktywne (folium).
Wizualizacje interaktywne – biblioteka plotly: podpowiedzi, panele, animacje w czasie.
Dashboardy – budowa aplikacji z filtrami i wykresami w Streamlit oraz w Dash (układ strony, callbacki).
Wstęp do uczenia maszynowego – podział na zbiór treningowy i testowy, walidacja krzyżowa, pipeline w scikit-learn, klasyfikacja i miary jej jakości, dobór parametrów modelu, ważność zmiennych.
Automatyzacja i raportowanie – zamiana notebooka w skrypt z parametrami, zapis wyników do sformatowanego pliku Excel, automatycznie generowany raport HTML.
Prezentacje projektów – studenci przedstawiają prace zaliczeniowe (dwa spotkania).
Szacunkowy nakład pracy studenta: 3 ECTS x 25h = 75h
(K) - godziny kontaktowe (S) - godziny pracy samodzielnej
wykład (zajęcia): 0h (K) 0h (S)
ćwiczenia (zajęcia): 30h (K) 0h (S)
egzamin: 0h (K) 0h (S)
konsultacje: 2h (K) 0h (S)
przygotowanie do ćwiczeń: 0h (K) 15h (S)
praca z materiałami dodatkowymi umieszczanymi na platformie Moodle: 0h (K) 13h (S)
przygotowanie projektu zaliczeniowego: 0h (K) 15h (S)
Razem: 32h (K) + 43h (S) = 75h
Koordynatorzy przedmiotu
Rodzaj przedmiotu
Efekty uczenia się
Po ukończeniu przedmiotu student:
W ZAKRESIE WIEDZY:
zna i rozumie zasady organizacji danych do analizy (dane uporządkowane, format długi i szeroki) oraz typowe problemy jakości danych ekonomicznych (braki, flagi, niespójne klucze i klasyfikacje);
zna najważniejsze źródła oficjalnych danych statystycznych (Eurostat, GUS BDL, NBP, Bank Światowy) i zasady korzystania z ich interfejsów API;
zna zasady doboru i konstrukcji wykresów, map i wizualizacji interaktywnych;
rozumie różnicę między modelowaniem objaśniającym (regresja) a predykcyjnym (uczenie maszynowe) oraz ograniczenia wnioskowania z danych obserwacyjnych.
W ZAKRESIE UMIEJĘTNOŚCI:
potrafi pobrać dane przez API, zapisać je i wczytać w powtarzalny sposób;
potrafi przekształcać, łączyć i weryfikować zbiory danych w bibliotece pandas, w tym szeregi czasowe i dane panelowe;
potrafi przygotować czytelne wykresy statystyczne, mapy, wizualizacje interaktywne oraz prosty dashboard;
potrafi zbudować i ocenić prosty model uczenia maszynowego;
potrafi zautomatyzować analizę (skrypt, raport) i przedstawić jej wyniki w formie prezentacji.
W ZAKRESIE KOMPETENCJI:
jest gotów do krytycznej oceny jakości danych i wyników analiz, także własnych;
dba o przejrzystość i powtarzalność analiz oraz rzetelne przedstawianie wyników;
potrafi udzielać i przyjmować informację zwrotną na temat analizy i wizualizacji danych;
jest gotów do odpowiedzialnego korzystania z narzędzi informatycznych, w tym narzędzi AI, w pracy z danymi.
Kryteria oceniania
Uzyskanie zaliczenia przedmiotu wymaga:
1. obecności na zajęciach (dopuszczalne są dwie nieobecności);
2. wykonania prac domowych – 5 prac po 5 pkt (łącznie 25 pkt);
3. przygotowania i przedstawienia projektu zaliczeniowego – 75 pkt.
Skala ocen:
[0%-50%) – ndst
[50%-60%) – dst
[60%-70%) – dst +
[70%-80%) – db
[80%-90%) – db+
[90%-100%] - bdb
Literatura
Własne materiały dydaktyczne przygotowane na podstawie różnych źródeł (np. dokumentacji bibliotek)