AIM-PIbd-32-Kaznacheeva-E-K/lab_1/Lab1.ipynb
2024-10-12 09:49:04 +04:00

126 KiB
Raw Blame History

Начало лабораторной

Выгрузка данных из csv файла в датафрейм

In [1]:
import pandas as pd
df = pd.read_csv("..//static//csv//ds_salaries.csv")
print(df.columns)
Index(['work_year', 'experience_level', 'employment_type', 'job_title',
       'salary', 'salary_currency', 'salary_in_usd', 'employee_residence',
       'remote_ratio', 'company_location', 'company_size'],
      dtype='object')
In [6]:
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
df = pd.read_csv("..//static//csv//ds_salaries.csv")
print(df.columns)

# Группировка данных по уровню опыта и вычисление средней зарплаты
avg_salary_by_exp = df.groupby('experience_level')['salary_in_usd'].mean().reset_index()

# Создание столбчатой диаграммы
plt.figure(figsize=(10, 6))
sns.barplot(x='experience_level', y='salary_in_usd', data=avg_salary_by_exp)
plt.title('Средняя зарплата по уровню опыта')
plt.xlabel('Уровень опыта')
plt.ylabel('Средняя зарплата (USD)')
plt.show()
Index(['work_year', 'experience_level', 'employment_type', 'job_title',
       'salary', 'salary_currency', 'salary_in_usd', 'employee_residence',
       'remote_ratio', 'company_location', 'company_size'],
      dtype='object')
No description has been provided for this image

По данной диаграмме можно сделать вывод, что у работников Executive-level зарплата выше всех, а у Entry-level зарплата ниже всех

In [7]:
import matplotlib.pyplot as plt
import seaborn as sns

plt.figure(figsize=(10, 6))
sns.histplot(df['salary_in_usd'], bins=30, kde=True)
plt.title('Распределение зарплат')
plt.xlabel('Зарплата (USD)')
plt.ylabel('Частота')
plt.show()
No description has been provided for this image

Средняя зарплата составляет 150000 USD

In [9]:
import matplotlib.pyplot as plt
import seaborn as sns

# Подсчет количества работников по уровню опыта
experience_counts = df['experience_level'].value_counts()

# Создание круговой диаграммы
plt.figure(figsize=(8, 8))
plt.pie(experience_counts, labels=experience_counts.index, autopct='%1.1f%%', startangle=140)

# Настройка заголовка
plt.title('Распределение работников по уровню опыта')

# Отображение диаграммы
plt.show()
No description has been provided for this image

По данной диаграмме можно сделать вывод, что большую часть сотрудников составляют Senior-level