【Python】豆瓣电影TOP250数据规律分析(Pearson相关系数、折线图、条形图、直方图)

本文主要是介绍【Python】豆瓣电影TOP250数据规律分析(Pearson相关系数、折线图、条形图、直方图),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、数据集预览

在这里插入图片描述
部分数据说明:
豆瓣排名num
评分rating_num
评分人数comment_num
电影时长movie_duration

2、查看电影数据集基本数据信息

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('电影排名.csv') #读取数据#1.查看电影数据集基本数据信息
print(data.describe())

在这里插入图片描述

3、Pearson相关系数分析数据之间的关系

#2.分析数据集中的数据项和电影排名的关系。
#输出Pearson相关系数,并保留两位小数
print('相关系数矩阵为:','\n',np.round(data.iloc[1:,1:].corr(method = 'pearson'), 2))

在这里插入图片描述
分析:
相关系数的绝对值越大,相关性越强:相关系数越接近于1或-1,相关度越强,相关系数越接近于0,相关度越弱。
通常情况下通过以下取值范围判断变量的相关强度:
0.8-1.0 极强相关
0.6-0.8 强相关
0.4-0.6 中等程度相关
0.2-0.4 弱相关
0.0-0.2 极弱相关或无相关

(1)豆瓣排名num和评分rating_num之间的相关系数为:-0.69,可见其存在强相关关系。即评分越高,排名数越小(排名越靠前)
(2)豆瓣排名num和评分人数comment_num之间的相关系数为:-0.65,强相关,即评分人数越多,排名越靠前!
(3)豆瓣排名num和电影时长movie_duration的相关系数为:-0.26,关系为弱相关,可以认为这两者并没什么关系。(常识亦可知,一个电影的好坏,排名是否靠前,与其时长确实关系不大)

4、分析结果并使用图形说明

折线图
import matplotlib.pyplot as plt
#(1)豆瓣排名num和评分rating_num之间的关系折线分布图
plt.plot(data['num'],data['rating_num'],'ro-')
plt.show()#(2)豆瓣排名num和评分人数comment_num之间的关系折线分布图
plt.plot(data['num'],data['comment_num'],'b*-')
plt.bar(data['num'],data['comment_num'])
plt.show()#(3)豆瓣排名num和电影时长movie_duration的关系折线分布图
plt.plot(data['num'],data['movie_duration'],'gD-')
plt.show()

(1)豆瓣排名num和评分rating_num之间的关系折线图分布图
在这里插入图片描述

(2)豆瓣排名num和评分人数comment_num之间的关系折线分布图
在这里插入图片描述
(3)豆瓣排名num和电影时长movie_duration的关系分布折线图
在这里插入图片描述

条形图
#条形图
#plt.bar(data['num'],data['rating_num']-8) #通过减8的方法来控制范围
plt.ylim(8,10)
plt.bar(data['num'],data['rating_num']) plt.bar(data['num'],data['comment_num'],color='pink')plt.bar(data['num'],data['movie_duration'],color='green')

(1)豆瓣排名num和评分rating_num之间条形分布图
直接绘制效果不明显
在这里插入图片描述

设置y轴范围后效果不错:
在这里插入图片描述

(2)豆瓣排名num和评分人数comment_num之间关系条形图
在这里插入图片描述

(3)豆瓣排名num和电影时长movie_duration的关系分布直方图
在这里插入图片描述

直方图
#直方图(反映数据分布规律,不反映数据之间的关系)
plt.hist(data['rating_num'])plt.hist(data['comment_num'], bins=100, normed=0, facecolor="blue", edgecolor="black", alpha=0.7)plt.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
plt.rcParams['axes.unicode_minus']=False     # 正常显示负号
plt.xlabel("区间")
plt.ylabel("频数/频率")
plt.title("频数/频率分布直方图")
plt.hist(data['movie_duration'], 40, histtype='stepfilled', facecolor='r', alpha=0.65)

(1)评分分布规律
在这里插入图片描述

(2)评分数目分布规律直方图
在这里插入图片描述
(3)电影时长分布直方图
在这里插入图片描述

标准化后对比分析
#4.附加实验:标准化后,对比分析评分、评论人数、时长数据的差异
def MaxMinNormalization(x):  #0/1标准化x = (x - np.min(x)) / (np.max(x) - np.min(x))return xd1 = MaxMinNormalization(data['rating_num'])
d2 = MaxMinNormalization(data['comment_num'])
d3 = MaxMinNormalization(data['movie_duration'])plt.plot(data['num'],d1,'r-',d2,'b-',d3,'g-')
plt.legend(['评分rating_num','评分人数comment_num','电影时长movie_duration'])

在这里插入图片描述

这篇关于【Python】豆瓣电影TOP250数据规律分析(Pearson相关系数、折线图、条形图、直方图)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/847018

相关文章

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致