IIS_2023_1/savenkov_alexander_lab_4/readme.md

60 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Общее задание:
Использовать метод кластеризации к данным из курсовой работы, самостоятельно сформулировав задачу.
Интерпретировать результаты и оценить, насколько хорошо он подходит для решения сформулированной вами задачи.
Задание по вариантам:
Тема: Анализ данных игр Epic Games Store
Датасет: Epic Games Store Dataset
Ссылки:
https://www.kaggle.com/datasets/mexwell/epic-games-store-dataset?select=games.csv,
Задача для кластарезации:
Кластеризация игр на основе их характеристик (например: жанра, цены, платформы, компаний-разработчиков) для выявления схожих групп игр.
Переменные: Жанр(ACTION,RPG; ACTION; INDIE,PUZZLE; SHOOTER,FPS; ACTION,FIGHTING,STEALTH), цена(1999, 1499, 999), платформа(Windows; Windows,Mac; Windows,Mac,Win32), компания-разработчик(Ubisoft, Traveller's Tales, 2D Boy)
Запуск приложения осуществляется запуском файла app.py
Использованные технологии:
Среда программирования Pycharm
Версия языка python: 3.11
Flask: Flask - это фреймворк для создания веб-приложений на Python. Он обрабатывает запросы, управляет маршрутами и взаимодействием с клиентом.
Pandas: Pandas - это библиотека для анализа данных. Она используется для загрузки данных из файла games.csv и для подготовки данных для кластеризации.
scipy: SciPy - это библиотека для научных вычислений в Python. В вашем приложении она используется для выполнения иерархической кластеризации и построения дендрограммы.
seaborn: Seaborn - это библиотека для визуализации данных. Она используется для создания и отображения дендрограммы на основе данных иерархической кластеризации.
HTML и шаблоны: Для создания веб-страницы и отображения данных используются HTML и шаблоны Flask, например, dendrogram.html, который определяет структуру страницы и вставляет изображение дендрограммы.
Краткое описание работы программы:
Загрузка данных: Программа загружает данные из CSV-файла "games.csv"
Flask приложение запускается и начинает прослушивать локальный порт 5000.
Программа загружает данные из файла games.csv, в котором содержатся характеристики видеоигр, такие как жанр, цена, платформа и компания-разработчик.
Данные из файла обрабатываются с использованием библиотеки Pandas, чтобы подготовить их для кластеризации.
Используя библиотеку scipy, программа выполняет иерархическую кластеризацию данных и строит дендрограмму, которая представляет собой дерево, отображающее связи между видеоиграми.
После построения дендрограммы, программа создает изображение дендрограммы с помощью библиотек Seaborn и Matplotlib.
Изображение дендрограммы сохраняется в формате PNG и преобразуется в строку base64.
Веб-приложение использует Flask для отображения этой изображения дендрограммы на веб-странице.
Пользователь может открыть веб-страницу в своем браузере и увидеть отображенную дендрограмму, которая помогает выявить схожие группы видеоигр на основе их характеристик.
Пример входных данных:
Данные из файла "games.csv" Цена игры (Price of game), Жанры (Genres), Платформы (Platform), компаний-разработчиков (Developer)
Название игры Жанр Цена Платформа Разработчик
Игра 1 Action 19.99 Windows Ubisoft
Игра 2 RPG 29.99 Windows, Mac Electronic Arts
Игра 3 Puzzle 9.99 Windows, Mac 2D Boy
Игра 4 Action 14.99 Windows Ubisoft
Игра 5 Shooter 24.99 Windows, Win32 Electronic Arts
Пример выходных данных:
дендрограмма, которая показывает как видеоигры группируются в зависимости от их схожести в отношении выбранных характеристик (жанры, цены, платформы и компаний-разработчиков)