Загрузить файлы в «/»

This commit is contained in:
Никита Гунбин 2026-05-06 13:40:31 +00:00
commit ea239812f6
3 changed files with 864 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.venv/

69
README.md Normal file
View 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

File diff suppressed because one or more lines are too long