Untitled

 avatar
unknown
plain_text
2 years ago
2.0 kB
5
Indexable
# Строим функцию для вывода диаграмм рассения для суммарных продаж и оценки критиков/оценки пользователей.
def plot_and_corr(x):
    data_temp_1 = data_actual_without_userscore[(data_actual_without_userscore['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('Коэффициент корреляции мнения критиков и продаж:')
    print(
    data_actual_without_userscore.query('platform == "x"')['critic_score']\
    .corr(data_actual_without_userscore.query('platform == "x"')['total_sales'])\
    )
    
    
    data_temp_2 = data_actual_without_userscore[data_actual_without_userscore['platform'] == x] \
    .pivot_table(index='user_score', values='total_sales') \
    .plot(style='o', grid=True)
    plt.xlabel('Оценка пользователей')
    plt.ylabel('Суммарные продажи')
    plt.title(f'Диаграмма рассеяния: {x}')
    plt.show()
    print('Коэффициент корреляции мнения пользователей и продаж:')
    print(
    data_actual_without_userscore.query('platform == "x"')['user_score']\
    .corr(data_actual_without_userscore.query('platform == "x"')['total_sales'])\
    )

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