# Аналітика даних — Лабораторні роботи Лабораторна складова дисципліни **«Аналітика даних»**. Кожна робота **відповідає лекції з тим самим номером** і закріплює її метод спершу «руками», а потім програмно. > **Дві частини кожної роботи.** Відповідно до формату курсу кожна лабораторна > містить **обидві** складові: > > 1. **Аудиторні задачі — математичне обчислення** ([`3classroom.md`](#структура-роботи)): > типові задачі теми, які розбирають **в аудиторії** «руками», з **повними > розв'язаннями**. Вони показують метод на невеликих даних, перш ніж > автоматизувати його. > 2. **Домашнє завдання — написання програми** ([`4task.md`](#структура-роботи)): > індивідуальна реалізація методу у вигляді **програми** (мову студент обирає > самостійно). Це завдання взято **з методичних матеріалів курсу**; розв'язку > (готового коду) до нього **не наведено**. ## Розташування По одній підтеці на роботу — `Laboratory/` — безпосередньо в цій теці. Кожна містить `main.md` (зміст) та частини: ### Структура роботи | Файл | Призначення | |---|---| | `main.md` | Зміст роботи та навігація | | `1purpose.md` | Мета роботи | | `2method.md` | Методичні вказівки: самодостатня теорія + демонстраційний приклад методу | | `3classroom.md` | **Аудиторні задачі з розв'язаннями** (математичне обчислення) | | `4task.md` | **Домашнє завдання** — написання програми (без розв'язку) | | `5report.md` | Зміст звіту | | `6questions.md` | Контрольні запитання | плюс теку `img/` для ілюстрацій (додаватимуться пізніше). ## Роботи | № | Аудиторна частина (обчислення) | Домашня частина (програма) | |:--:|---|---| | [1](Laboratory1/main.md) | Ймовірність і комбінаторика: класична ймовірність, теорема Байєса, перестановки/розміщення/сполучення | Комбінаторні задачі **за варіантами** (обчислення; з архіву) | | [2](Laboratory2/main.md) | Числові характеристики випадкової величини «руками» | Програма: середнє, дисперсія, СКВ вибірки з CSV | | [3](Laboratory3/main.md) | Побудова довірчих інтервалів для середнього та дисперсії | Програма: довірчі інтервали (рівень значущості ззовні: 0.1 / 0.05 / 0.01) | | [4](Laboratory4/main.md) | Перевірка гіпотез $z$-, $t$-, $\chi^2$-, $F$-критеріями | Програма: $F$-критерій рівності дисперсій → $t$-критерій рівності середніх | | [5](Laboratory5/main.md) | Коефіцієнт кореляції, метод найменших квадратів, $R^2$ | Програма: перевірка кореляції, графік лінійної регресії, $R^2$ | | [6](Laboratory6/main.md) | Класифікація об'єкта методом kNN «руками» | Програма: класифікація методом kNN з навчальної вибірки (CSV) | | [7](Laboratory7/main.md) | Ентропія, приріст інформації, індекс Джині; побудова дерева | Програма: побудова дерева рішень алгоритмом ID3 (CSV) | | [8](Laboratory8/main.md) | Наївний баєсів класифікатор «руками» | Програма: баєсів класифікатор; порівняння з ID3 | | [9](Laboratory9/main.md) | Ітерації методу $k$-середніх «руками» | Програма: $k$-середніх; результат у файл | | [10](Laboratory10/main.md) | Агломеративна кластеризація й дендрограма «руками» | Програма: ієрархічна кластеризація знизу-догори; порівняння з $k$-середніх | | [11](Laboratory11/main.md) | Підтримка, достовірність, підйом; прогін Apriori «руками» | Програма: пошук частих наборів і асоціативних правил (Apriori) | | [12](Laboratory12/main.md) | Побудова FP-дерева та умовних FP-дерев «руками» | Програма: FP-Growth; порівняння з Apriori (Лаб 11) | | [13](Laboratory13/main.md) | Коваріаційна матриця, власні вектори, проєкція на головні компоненти | Програма: PCA — зведення CSV до 2 компонент, частка поясненої дисперсії | | [14](Laboratory14/main.md) | Ковзне середнє, експоненційне згладжування, MAE/RMSE/MAPE | Програма: згладжування й прогноз часового ряду з CSV, оцінка похибки | ## Оцінювання Кожна робота — частина поточного контролю й має **три рівні складності** (базовий **60–74**, середній **75–89**, високий **90–100**); оцінка відповідає найвищому повністю виконаному рівню. Зараховуються **обидві** частини: розв'язані аудиторні задачі та **захищене** домашнє завдання (працездатна програма). Умови рівнів наведено у `4task.md` кожної роботи. ## Інструменти - **Мова програмування — на вибір студента** (Python, C#, Java, C++ тощо). Для Python зручні `numpy`, `pandas`, `scipy`, `matplotlib`; готові реалізації з `scikit-learn` можна використовувати **лише для перевірки** власного коду, якщо інше не зазначено в завданні. - **Формат даних — CSV.** Навчальні вибірки беруть із завдання або з відкритих джерел (напр., [Kaggle](https://www.kaggle.com/datasets)). - **Аудиторні обчислення** виконують «руками» (калькулятор, таблиці значень розподілів) — щоб зрозуміти метод, перш ніж його програмувати.