Общее задание:
Решите с помощью библиотечной реализации дерева решений 
задачу из лабораторной работы «Веб-сервис «Дерево решений» по предмету 
«Методы искусственного интеллекта» на 99% ваших данных. Проверьте 
работу модели на оставшемся проценте, сделайте вывод.

Задание по вариантам:
Тема: Анализ данных игр Epic Games Store
Датасет: Epic Games Store Dataset
Ссылки:
https://www.kaggle.com/datasets/mexwell/epic-games-store-dataset?select=games.csv,
https://www.kaggle.com/datasets/mexwell/epic-games-store-dataset?select=open_critic.csv
Там один пак с несколькими наборами данных связанные с этой темой, поэтому мне нужно 2 набора данных из всего пака наборов данных для данной цели

Задача для древа решений:

Задача классификации успешности игр:

Цель: Классифицировать игры на успешные и неуспешные на основе их характеристик.
Признаки:
Рейтинг (Rating)
Цена игры (Price of game)
Жанры (Genres)
Дата релиза (Release date)
Целевая переменная: Успешность игры (Successful/Unsuccessful), которая может определяться, например, на основе пороговых значений продаж или оценок.

Запуск приложения осуществляется запуском файла app.py

Использованные технологии:
Среда программирования Pycharm
Версия языка python: 3.11
Flask: Flask - это веб-фреймворк для Python, который используется для создания веб-приложения. Он обеспечивает обработку HTTP-запросов, маршрутизацию и создание веб-страниц.

Pandas: Pandas - это библиотека для анализа данных в Python. Она использовалась для загрузки, обработки и манипуляции данными из CSV-файлов.

scikit-learn: Scikit-learn - это библиотека для машинного обучения в Python. Она включает в себя реализации различных алгоритмов машинного обучения, таких как DecisionTreeClassifier, который был использован для создания модели дерева решений.

HTML и Jinja2: Веб-страницы создавались с использованием HTML. Шаблоны HTML дополнялись с использованием шаблонизатора Jinja2, что позволяло встраивать переменные и логику Python в HTML-код.

Формы HTML: Формы HTML использовались для ввода данных пользователем (цена игры, жанры и дата релиза) и их отправки на сервер для обработки.

Модуль datetime: Модуль datetime использовался для обработки даты релиза игры и преобразования ее в формат Unix-времени.

Краткое описание работы программы:
Загрузка данных: Программа загружает данные из двух CSV-файлов ("games.csv" и "open_critic.csv") и объединяет их в один набор данных.

Подготовка данных: Данные обогащаются, преобразуется формат даты, и жанры кодируются в бинарные признаки.

Обучение модели: Создается модель дерева решений для классификации игр на успешные и неуспешные на основе обучающего набора данных.

Оценка модели: Модель оценивается на тестовом наборе данных, и точность модели сохраняется.

Веб-интерфейс: Пользователь видит веб-страницу, содержащую форму для ввода данных о цене, жанрах и дате релиза игры.

Классификация: Пользователь вводит данные и отправляет форму. Программа использует обученную модель для классификации игры на успешную или неуспешную и отображает результат на веб-странице.

Дополнительная информация: Пользователь также видит дополнительную информацию, такую как точность модели, количество успешных и неуспешных игр, и важность признаков.

Локальный сервер: Программа запускается на локальном сервере с хостом "localhost" и портом 5000, что позволяет пользователям взаимодействовать с ней через веб-браузер.

Пример входных данных:
Данные из файлов "games.csv" и "open_critic.csv" Цена игры (Price of game), Жанры (Genres), Дата релиза (Release date), Рейтинг (Rating)

Пример выходных данных:
результат классификации, точность модели, количество успешных и неуспешных игр и важность признаков.