Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.5 kB
4
Indexable
Never
# создадим функцию для вывода графиков
def plot_and_corr(x):
    data_temp_1 = data_actual[(data_actual['platform'] == x) & data_actual['critic_score'].notna()] \
    .pivot_table(index='critic_score', values='total_sales') \
    .plot(style='o', grid=True)
    plt.xlabel('Оценка критиков')
    plt.ylabel('Суммарные продажи')
    plt.title(f'Диаграмма рассеяния: {x}')
    plt.show()
    print(f"Коэффициент корреляции мнения критиков и продаж: {data['critic_score'].corr(data['total_sales'])}")
    
    data_temp_2 = data_actual[(data_actual['platform'] == x) & (data_actual['user_score'] > 0)] \
    .pivot_table(index='user_score', values='total_sales') \
    .plot(style='o', grid=True)
    plt.xlabel('Оценка пользователей')
    plt.ylabel('Суммарные продажи')
    plt.title(f'Диаграмма рассеяния: {x}')
    plt.show()
    print(f"Коэффициент корреляции мнения пользователей и продаж: {data['user_score'].corr(data['total_sales'])}")

# Проходимся цклом по всем платформам
platforms = data_actual.query('platform != "X360"')['platform'].unique()
for platform in platforms:
    try:
        plot_and_corr(platform)
    except TypeError:
        print(f"Ошибка: нет числовых данных для платформы {platform}")