Загрузить файлы в «/»
This commit is contained in:
commit
ea239812f6
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.venv/
|
||||||
69
README.md
Normal file
69
README.md
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
# Анализ данных игроков Clash Royale
|
||||||
|
|
||||||
|
## Описание проекта
|
||||||
|
Программа анализирует статистику игроков Clash Royale (уровни, трофеи, ранги, арены) и визуализирует ключевые метрики с помощью библиотек Python.
|
||||||
|
|
||||||
|
## Технологии
|
||||||
|
- **Python 3.x**
|
||||||
|
- **pandas** — загрузка и обработка данных
|
||||||
|
- **numpy** — математические операции
|
||||||
|
- **matplotlib** — построение графиков
|
||||||
|
- **seaborn** — визуализация
|
||||||
|
- **tqdm** — отображение прогресса загрузки
|
||||||
|
|
||||||
|
## Процесс работы программы
|
||||||
|
|
||||||
|
### 1. Загрузка данных
|
||||||
|
- Программа считывает CSV-файл `clash_royale_players.csv` (или аналогичный).
|
||||||
|
- Файл содержит данные игроков со следующими столбцами:
|
||||||
|
- **name_pais** — страна игрока
|
||||||
|
- **name** — имя игрока
|
||||||
|
- **tag** — уникальный тег
|
||||||
|
- **rank** — текущий ранг
|
||||||
|
- **expLevel** — уровень опыта
|
||||||
|
- **trophies** — количество трофеев
|
||||||
|
- **name_clan** — название клана
|
||||||
|
- **tag_clan** — тег клана
|
||||||
|
- **id_arena** — идентификатор арены
|
||||||
|
- **name_arena** — название арены
|
||||||
|
|
||||||
|
### 2. Визуализация загрузки
|
||||||
|
- Используется библиотека `tqdm` для отображения прогресс-бара при обработке строк.
|
||||||
|
- Пользователь видит процесс обработки данных в реальном времени (одна строка прогресса).
|
||||||
|
|
||||||
|
### 3. Базовый анализ данных
|
||||||
|
- Выводится информация о структуре данных (`df.info()`):
|
||||||
|
- Типы столбцов
|
||||||
|
- Количество непустых значений
|
||||||
|
- Отображается статистика по числовым столбцам (`df.describe()`):
|
||||||
|
- Среднее значение трофеев и уровня опыта
|
||||||
|
- Стандартное отклонение
|
||||||
|
- Минимальные и максимальные значения
|
||||||
|
- Квартили (25%, 50%, 75%)
|
||||||
|
- Выводится проверка пропущенных значений (`df.isnull().sum()`).
|
||||||
|
|
||||||
|
### 4. Визуализация данных
|
||||||
|
|
||||||
|
#### График 1: Гистограмма распределения трофеев
|
||||||
|
- **Цель:** Показать, как часто встречаются разные диапазоны трофеев среди игроков.
|
||||||
|
- **Ось X:** Количество трофеев.
|
||||||
|
- **Ось Y:** Количество игроков (частота).
|
||||||
|
- **Характеристики:** Синие столбцы, 30 интервалов, сглаживающая кривая KDE, сетка.
|
||||||
|
|
||||||
|
#### График 2: Диаграмма рассеяния (уровень опыта vs трофеи)
|
||||||
|
- **Цель:** Выявить взаимосвязь между уровнем опыта игрока и количеством трофеев, с цветовым кодированием по рангу.
|
||||||
|
- **Ось X:** Уровень опыта (expLevel).
|
||||||
|
- **Ось Y:** Трофеи.
|
||||||
|
- **Точки:** Цвет и размер зависят от ранга, полупрозрачные для лучшей читаемости.
|
||||||
|
- **Дополнительно:** Легенда вынесена за пределы графика.
|
||||||
|
|
||||||
|
#### График 3: Boxplot распределения трофеев по аренам
|
||||||
|
- **Цель:** Сравнить распределение трофеев на разных аренах (боксплоты позволяют увидеть медиану, квартили и выбросы).
|
||||||
|
- **Ось X:** Названия арен (упорядочены по id_arena).
|
||||||
|
- **Ось Y:** Трофеи.
|
||||||
|
- **Элементы boxplot:**
|
||||||
|
- Красная линия (в цветах по умолчанию) — медиана (50% данных)
|
||||||
|
- Коробка — интервал между 25% и 75%
|
||||||
|
- «Усы» — нормальный диапазон значений
|
||||||
|
- Точки — выбросы (аномальные значения)
|
||||||
|
- **Поворот подписей:** Названия арен повёрнуты на 45° для удобства чтения.
|
||||||
794
week2_analysis.ipynb
Normal file
794
week2_analysis.ipynb
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user