Uniwersytet Warszawski - Centralny System UwierzytelnianiaNie jesteś zalogowany | zaloguj się
katalog przedmiotów - pomoc

Narzędzia programistyczne w Pythonie wspierające analizę danych

Informacje ogólne

Kod przedmiotu: 1000-1M20NPD Kod Erasmus / ISCED: 11.3 / (0612) Database and network design and administration
Nazwa przedmiotu: Narzędzia programistyczne w Pythonie wspierające analizę danych
Jednostka: Wydział Matematyki, Informatyki i Mechaniki
Grupy: Przedmioty monograficzne dla IV - V roku matematyki
Punkty ECTS i inne: 6.00
zobacz reguły punktacji
Język prowadzenia: angielski
Rodzaj przedmiotu:

monograficzne

Skrócony opis:

Wprowadzenie w techniki i narzędzia programistyczne w Pythonie ze szczególnym uwzględnieniem zastosowania w projektach z zakresu analizy danych.

Pełny opis:

1. Wstęp do języka Python, standardy pisania kodu.

2. Praca z wierszem poleceń w systemie Linux - często potrzebnym np. do zdalnej pracy na komputerach.

3. Git - repozytoria kodu, wersjonowanie i synchronizowanie kodu.

4. Moduły - lepsza organizacja kodu, większa czytelność i łatwość utrzymania kodu.

5. Biblioteka argparse i inne możliwości konfigurowania stanu programu, obsługa plików konfiguracyjnych - jak móc używać programu dla różnych danych (i dostać czytelne komunikaty o nieprawidłowych parametrach) bez potrzeby modyfikacji programu.

6. Jupyter - interaktywna konsola w przeglądarce, umożliwia wygodną pracę zdalną, łatwy podgląd i wygodną prezentację wyników.

7. Testowanie oprogramowania - dobre praktyki i nauka narzędzi.

8. Zastosowanie debugera przy użyciu testów - czyli jak przyspieszyć znajdowanie i zrozumienie błędów w programie.

9. Paczka pythonowa - czyli jak przygotować kod do dzielenie między projektami.

10. Biblioteka numpy - obsługa macierzy wielowymiarowych.

11. Biblioteka pandas - obsługa danych tabelowych.

12. Profiler - czyli jak znaleźć to miejsce, które naprawdę spowalnia wykonanie programu.

13. Ciągła integracja (ang. continuous integration) i tox - czyli jak sprawdzić, że projekt jest dobrze zdefiniowany i opisany, automatyczne sprawdzanie, czy nie zostały wprowadzone błędy do projektu (np. przy dodawaniu nowych funkcji do programu).

14. Cython, numba.jit - czyli co zrobić, by przyspieszyć wykonywanie programu lub użyć biblioteki napisanej w języku C, która nie ma interfejsu dla Pythona.

Literatura:

- Python for Data Analysis, Wes McKinney, 2. wyd., 2017,

- Python Crash Course, a hands-on, project-based introduction to programming, 2. wyd., Eric Matthes, 2019.

- Programming Python, Mark Lutz, 4. wyd., 2011.

- Pro Git , Scott Chacon i Ben Straub, 2. wyd., 2014.

- https://docs.python.org/.

- dokumentacja internetowa do poszczególnych narzędzi omawianych w kursie.

Efekty uczenia się:

Po ukończeniu zajęć student zna:

- język Python w stopniu wystarcającym do tworzenia własnych aplikacji średniej wielkości,

- powszecnie używane narzędzia wykorzystywane przy analizie danych,

- powszecnie używane narzędzia wykorzystywane w pracy zespołowej.

Metody i kryteria oceniania:

Oceny cząstkowe z małych zadań programistycznuch zadawanych w trakcie semsetru (30%).

Egzamin w formie omówienia końcowego zadania zaliczeniowego (70%)

Zajęcia w cyklu "Semestr zimowy 2020/21" (w trakcie)

Okres: 2020-10-01 - 2021-01-31
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Janusz Jabłonowski
Prowadzący grup: Grzegorz Bokota, Janusz Jabłonowski, Jarosław Paszek
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski.