| .idea | ||
| .gitignore | ||
| data_science_job.csv | ||
| README.md | ||
| week2_analysis.ipynb | ||
Анализ зарплат в сфере Data Science
Программа анализирует статистику зарплат в сфере Data Science (уровни опыта, типы занятости, года, зарплаты) и визуализирует ключевые метрики с помощью библиотек Python.
Технологии
- Python 3.14
- pandas — загрузка и обработка данных
- numpy — математические операции
- matplotlib — построение графиков
- seaborn — визуализация
- tqdm — отображение прогресса загрузки
Процесс работы программы
1. Загрузка данных
Программа считывает CSV-файл data_science_job.csv.
Файл содержит данные о вакансиях в сфере Data Science со следующими столбцами:
| Столбец | Описание |
|---|---|
work_year |
Год публикации вакансии |
job_title |
Название должности |
job_category |
Категория должности (Analysis, ML/AI, Engineering, Data Science) |
salary_currency |
Валюта зарплаты |
salary |
Зарплата в местной валюте |
salary_in_usd |
Зарплата в долларах США (для единообразия) |
employee_residence |
Страна проживания сотрудника |
experience_level |
Уровень опыта (EN — начальный, MI — средний, SE — старший, EX — эксперт) |
employment_type |
Тип занятости (FT — полный день, PT — частичная, CT — контракт, FL — фриланс) |
work_setting |
Формат работы (Remote — удалённо, In-person — в офисе, Hybrid — гибридный) |
company_location |
Страна расположения компании |
company_size |
Размер компании (S — малая, M — средняя, L — крупная) |
2. Визуализация загрузки
Используется библиотека tqdm для отображения прогресс-бара при обработке строк.
Пользователь видит процесс обработки данных в реальном времени (одна строка прогресса).
3. Базовый анализ данных
-
Выводится информация о структуре данных (
df.info()):- Типы столбцов
- Количество непустых значений
-
Отображается статистика по числовым столбцам (
df.describe()):- Среднее значение зарплаты и года
- Стандартное отклонение
- Минимальные и максимальные значения
- Квартили (25%, 50%, 75%)
-
Выводится проверка пропущенных значений (
df.isnull().sum()) -
Отображаются уникальные значения в категориальных колонках
4. Визуализация данных
График 1: Гистограмма распределения зарплат
Цель: Показать, как часто встречаются разные диапазоны зарплат среди вакансий в сфере Data Science.
- Ось X: Зарплата (в долларах США)
- Ось Y: Количество вакансий (частота)
- Характеристики: Синие столбцы, 30 интервалов, сглаживающая кривая KDE, сетка
График 2: Диаграмма рассеяния (год vs зарплата)
Цель: Выявить взаимосвязь между годом публикации вакансии и уровнем зарплаты, с цветовым кодированием по уровню опыта.
- Ось X: Год публикации (
work_year) - Ось Y: Зарплата в USD
- Точки: Цвет зависит от уровня опыта (
experience_level), полупрозрачные для лучшей читаемости - Дополнительно: Легенда вынесена за пределы графика
График 3: Boxplot распределения зарплат по уровням опыта
Цель: Сравнить распределение зарплат для разных уровней опыта (боксплоты позволяют увидеть медиану, квартили и выбросы).
- Ось X: Уровень опыта (EN — начальный, MI — средний, SE — старший, EX — эксперт)
- Ось Y: Зарплата в USD
Элементы boxplot:
- Красная линия (в цветах по умолчанию) — медиана (50% данных)
- Коробка — интервал между 25% и 75%
- «Усы» — нормальный диапазон значений
- Точки — выбросы (аномальные зарплаты)
Дополнительный график 4: Количество вакансий по годам
Цель: Показать динамику количества вакансий в сфере Data Science по годам.
- Ось X: Год
- Ось Y: Количество вакансий
- Характеристики: Столбчатая диаграмма с градиентной цветовой схемой
Итог
Программа позволяет:
- Быстро загрузить и проанализировать датасет с вакансиями
- Узнать основные статистические показатели зарплат
- Визуально оценить распределение зарплат и их зависимость от опыта и года
- Выявить выбросы и аномалии в данных