当前位置: 首页 > news >正文

数据分析案例-2024 年热门动漫数据集可视化分析

 

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

1.项目背景

2.数据集介绍

3.技术工具

4.导入数据

5.数据可视化

源代码


1.项目背景

        近年来,随着互联网的飞速发展和数字技术的不断创新,动漫作为一种独特的文化形式,在全球范围内获得了空前的关注度和影响力。动漫不仅成为了年轻一代娱乐生活的重要组成部分,还逐渐渗透到教育、广告、游戏等多个领域,形成了一个庞大的产业链。

        特别是在2024年,随着5G、AI、大数据等新一代信息技术的深入应用,动漫产业的数字化、智能化水平得到了显著提升。动漫作品的创作、传播和消费方式都发生了深刻变化,为动漫产业的进一步发展提供了广阔的空间和可能。

        然而,与此同时,动漫市场的竞争也日益激烈,各类动漫作品层出不穷,观众对于动漫作品的需求也日益多样化和个性化。在这样的背景下,如何准确把握动漫市场的脉搏,了解观众的需求和喜好,成为了动漫产业发展的重要课题。

        因此,本研究旨在通过对2024年热门动漫数据集的可视化分析,深入探究动漫市场的发展趋势和规律,为动漫产业的决策者提供有价值的参考和启示。

2.数据集介绍

        本数据集来源于Kaggle,原始数据集共有1000条,22个变量。该数据集全面概述了 2024 年热门动漫,对于构建推荐系统、可视化动漫流行度和评分趋势、预测评分和流行度等非常有用。

该数据集包含 22 个特征:

Score:分配给每个动漫标题的评级或分数。

Popularity:衡量每部动漫在观众中的受欢迎程度。

Rank:数据集中每个动漫标题的排名。

Members:与每部动漫相关的会员或观众数量。

Description:每部动漫的情节和主题的简要概述或摘要。

Synonyms:每部动漫使用的替代标题或同义词。

Japanese:日语动画的原始标题。

English:动画的英文翻译标题。

Type:动漫类型的分类(例如电视剧、电影、OVA 等)。

Episodes:每个动漫系列的总集数。

Status:动画的当前状态(例如,正在进行、已完成等)。

Aired:动画播出的日期范围。

Premiered:动画首次首播的日期。

Broadcast:有关广播平台或频道的信息。

Producers:参与制作动画的公司或工作室。

Licensors:拥有动漫许可权的组织或公司。

Studios:负责制作动画的动画工作室。

Source:动漫的原始来源材料(例如漫画、小说、原创)。

Genres:动漫所属的类别或流派。

Demographic:动漫的目标受众群体。

Duration:每集或电影的持续时间。

Rating:分配给每个动漫的内容评级(例如,G、PG、PG-13、R)。

3.技术工具

Python版本:3.9

代码编辑器:jupyter notebook

4.导入数据

首先导入数据可视化的库,并加载数据集

查看数据集大小 

查看数据基本信息

查看数值型变量的描述性统计

查看非数值型变量的描述性统计

5.数据可视化

源代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')anime_data = pd.read_csv("Top_Anime_data.csv")
anime_data.head()
anime_data.shape
anime_data.info()
anime_data.describe()
anime_data.describe(include='O').T
# 分数分布
plt.figure(figsize=(10, 6))
sns.histplot(anime_data['Score'], bins=30, kde=True, color='skyblue')
plt.title('Distribution of Scores')
plt.xlabel('Score')
plt.ylabel('Frequency')
plt.show()
# 受欢迎程度分布
plt.figure(figsize=(10, 6))
sns.histplot(anime_data['Popularity'], bins=30, kde=True, color='orange')
plt.title('Popularity Distribution')
plt.xlabel('Popularity')
plt.ylabel('Frequency')
plt.show()
# 类型分布
genres = anime_data['Genres'].str.split(',').explode().str.strip()
plt.figure(figsize=(12, 8))
sns.countplot(y=genres, order=genres.value_counts().index[:15], palette='muted')
plt.title('Top 15 Genres Distribution')
plt.xlabel('Count')
plt.ylabel('Genre')
plt.show()
# 分数与人气的散点图
plt.figure(figsize=(10, 6))
sns.scatterplot(x='Score', y='Popularity', data=anime_data, alpha=0.7)
plt.title('Score vs. Popularity')
plt.xlabel('Score')
plt.ylabel('Popularity')
plt.show()
# 排名前十的生产商
top_producers = anime_data['Producers'].str.split(',').explode().value_counts().head(10)
plt.figure(figsize=(10, 6))
sns.barplot(x=top_producers.values, y=top_producers.index, palette='husl')
plt.title('Top 10 Producers by Count')
plt.xlabel('Count')
plt.ylabel('Producer')
plt.show()
# 动漫人口分布
anime_data["Demographic"].value_counts().plot.pie(figsize=(10,5))
plt.title("Distribution of Anime Demographic", loc='center',color='red', fontsize=10, fontweight='bold')
plt.show()
labels=['Teens 13 or older', 'violence & profanity', 'Mild Nudity', 'All Ages', 'Children']
colors=['Pink','Yellow','Orange','Blue','Red']
plt.pie(anime_data["Rating"].value_counts(), labels=labels, colors=colors)
plt.axis('equal')
plt.title("Rating", loc='center', color='Blue', fontsize='15')
plt.gca().add_artist(plt.Circle(xy=(0,0),radius=0.75, facecolor='white'))
plt.show()
# 分数类别与来源的标准化交叉拟合
bins = [7.8, 7.9, 8.1, 8.3,9.4]
labels = ['7.8 to 7.9', '7.9 to 8.1','8.1 to 8.3','8.3 to 9.4']
anime_data['Score_Category'] = pd.cut(anime_data['Score'], bins=bins, labels=labels, right=False)
normalised_df = (pd.crosstab(anime_data["Score_Category"],anime_data["Source"],normalize="index")*100).round(2)
normalised_df.plot(kind="bar",stacked=True)
plt.xlabel('Score Category')
plt.ylabel('Percentage')
plt.title('Normalized Crosstabulation of Score Category and Source')
plt.legend(title='Source', bbox_to_anchor=(1.05, 1), loc='upper left')
plt.tight_layout()
plt.show()
# 收视人数与收视率的标准化交叉校正
bins = [1.0, 500.0, 1000.0]
labels = ['1 to 500', '500 to 1000']
anime_data['Members_category'] = pd.cut(anime_data['Members'], bins=bins, labels=labels, right=False)
(pd.crosstab(anime_data["Members_category"],anime_data["Rating"],normalize="index")*100).round(2).plot(kind="bar",stacked=True)
plt.title('Normalized Crosstabulation of Number of Viewers and Rating')
plt.legend(title='Rating', bbox_to_anchor=(1.05, 1), loc='upper left')
plt.tight_layout()
plt.show()
# 5大制作公司
anime_data["Studios"].value_counts().head(5).plot(kind="pie",autopct='%1.1f%%')
plt.title("Top 5 Production Houses")
plt.ylabel('')
plt.show()
# 疯人院制作的顶级动画
anime_data[anime_data["Studios"] == "Madhouse"]["Rating"].value_counts().plot(kind="pie",autopct='%1.1f%%')
plt.title("Top Anime produced by Madhouse")
plt.show()

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

相关文章:

数据分析案例-2024 年热门动漫数据集可视化分析

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…...

C#小结:未能找到类型或命名空间名“xxx”(是否缺少 using 指令或程序集引用?)

方案一:移除类库这些失效的引用,下载对应版本的dll(如有则不需要重复下载),重新添加引用 方案二:类库右键属性-调整目标框架版本(一般是降低版本) 方案三:调整类库编译顺…...

STM32智能无人机控制系统教程

目录 引言环境准备智能无人机控制系统基础代码实现:实现智能无人机控制系统 4.1 数据采集模块 4.2 数据处理与控制算法 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景:无人机管理与优化问题解决方案与优化收尾与总结 1. 引言 智能无人机控…...

从 QWebEnginePage 打印文档

QWebEnginePage 是 Qt WebEngine 模块中的一个类,它提供了用于处理网页内容的接口。如果你想要打印 QWebEnginePage 中的内容,你可以使用 QPrinter 和 QPrintDialog 类来实现。 项目配置了 Qt WebEngine 模块,并且在你的.pro文件中包含了相应…...

初识Docker及管理Docker

Docker部署 初识DockerDocker是什么Docker的核心概念镜像容器仓库 容器优点容器在内核中支持2种重要技术:Docker容器与虚拟机的区别 安装Docker源码安装yum安装检查Docker Docker 镜像操作配置镜像加速器(阿里系)搜索镜像获取镜像查看镜像信息…...

【学术会议征稿】2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024)

2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024) 2024 3rd International Conference on Informatics,Networking and Computing (ICINC 2024) 2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024)将于2024年10月25-27日于中国郑州召…...

在golang中Sprintf和Printf 的区别

最近一直在学习golang这个编程语言,我们这里做一个笔记就是 Sprintf和Printf 的区别 fmt.Sprintf 根据格式化参数生成格式化的字符串并返回该字符串。 fmt.Printf 根据格式化参数生成格式化的字符串并写入标准输出。由上面就可以知道,fmt.Sprintf返回的…...

策略模式原理与C++实现

定义 定义一些列算法,把他们一个个封装起来,并且使他们可以相互替换(变化)。该模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展、子类化)。 C实现 在不考虑策略模式的情况…...

打包一个自己的Vivado IP核

写在前面 模块复用是逻辑设计人员必须掌握的一个基本功,通过将成熟模块打包成IP核,可实现重复利用,避免重复造轮子,大幅提高我们的开发效率。 接下来将之前设计的串口接收模块和串口发送模块打包成IP核,再分别调用…...

《昇思25天学习打卡营第05天|qingyun201003》

日期 心得 通过本节课的学习,学习到了通过网络获取数据集,处理数据集模型。数据模型层数据变换,模型参数解析和其对应代码中的API进行解析。 昇思MindSpore 基础入门学习 网络构建 (AI 代码解析) 网络构建 神经网络模型是由神经网络层和T…...

【Leetcode】二十一、前缀树 + 词典中最长的单词

文章目录 1、背景2、前缀树Trie3、leetcode208:实现Trie4、leetcode720:词典中最长的单词 1、背景 如上,以浏览器搜索时的自动匹配为例: 如果把所有搜索关键字放一个数组里,则:插入、搜索一个词条时&#x…...

秋招Java后端开发冲刺——Mybatis使用总结

一、基本知识 1. 介绍 MyBatis 是 Apache 的一个开源项目,它封装了 JDBC,使开发者只需要关注 SQL 语句本身,而不需要再进行繁琐的 JDBC 编码。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java POJO(Plain …...

怎么压缩视频文件?简单的压缩视频方法分享

视频已成为我们日常生活中不可或缺的一部分。但随着视频质量的提高,文件大小也逐渐成为我们分享的阻碍。如何有效压缩视频文件,使其既能保持清晰,又能轻松分享?今天,给大家分享五种实用的视频压缩方法,快来…...

【Oracle】Oracle语法之递归查询

目录 递归查询使用场景备注 语法相关属性解释 案例基本使用升级版-带上递归查询的属性 总结: 递归查询 Oracle的递归查询是指在一个查询语句中使用自引用的方式进行循环迭代查询。它可以用于处理具有层次结构的数据,如组织架构、产品类别等。递归查询通…...

【教程】Vue2中使用svg矢量图

1.npm导包 npm i svg-sprite-loader --save2.创建目录放入svg文件,创建SvgIcon.js 3.SvgIcon.js const req require.context(./svg, false, /\.svg$/) const requireAll requireContext > requireContext.keys().map(requireContext) requireAll(req)4.vue.c…...

简约唯美的404HTML源码

源码介绍 简约唯美的404HTML源码,很适合做网站错误页,将下面的源码放到一个空白的html里面,然后上传到服务器里面即可使用 效果预览 完整源码 <!DOCTYPE html> <html><head><meta charset="utf-8"><title>404 Error Example<…...

PDF 转图片并插入到 EXCEL 再转PDF

pom.xml 引用 <dependency><groupId>com.aspose</groupId><artifactId>aspose-cells</artifactId><version>21.11</version></dependency><dependency><groupId>com.aspose</groupId><artifactId>as…...

jmeter之变量随机参数化以及解决多线程不会随机变化

参考链接&#xff1a; https://www.cnblogs.com/Testing1105/p/12743475.html jmeter 使用random函数多线程运行时数据不会随机变化&#xff1f;_jmeter 线程组循环执行时 变量不变-CSDN博客 1、如下图所示&#xff0c;需要对请求参数 autor 和phone进行随机参数化 2、目前有…...

24/7/12总结

axios Axios 是一个基于 promise 网络请求库&#xff0c;作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpRequests。 get请求: <script>function…...

sentinel网关限流配置及使用

sentinel控制台源码&#xff1a;https://download.csdn.net/download/yixin605691235/89543923 sentinel控制台jar包&#xff1a;https://download.csdn.net/download/yixin605691235/89543931 不同环境直接修改jar包中的application.yml文件中的nacos地址就可以了。 一、网关限…...

别再用鼠标了!树莓派新手必学的20个命令行操作,5分钟上手

别再用鼠标了&#xff01;树莓派新手必学的20个命令行操作&#xff0c;5分钟上手 第一次打开树莓派的终端时&#xff0c;那个闪烁的光标是不是让你想起了90年代的黑客电影&#xff1f;别担心&#xff0c;命令行不是程序员的专属工具。就像学骑自行车前总要拆掉辅助轮&#xff0…...

Python开发者三步完成Taotoken接入并运行第一个AI对话

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Python开发者三步完成Taotoken接入并运行第一个AI对话 对于希望快速将大模型能力集成到Python项目中的开发者而言&#xff0c;找到…...

QCustomPlot交互秘籍:手把手实现数据点拾取、矩形框选与自定义高亮样式

QCustomPlot交互功能深度解析&#xff1a;从数据点拾取到视觉定制全攻略 1. 交互式数据可视化的核心价值 在现代数据可视化应用中&#xff0c;静态图表已经无法满足用户日益增长的交互需求。QCustomPlot作为Qt生态中功能强大的绘图库&#xff0c;其交互功能的设计既考虑了开发…...

告别手动翻日志!用Log Parser 2.2 + Login工具,5分钟自动化分析Windows安全事件

从日志泥潭到智能洞察&#xff1a;Log Parser与Login工具的高效协同实战 Windows安全事件日志就像一座未经开采的金矿&#xff0c;每天产生海量的4624、4625等登录事件记录。传统的手动翻查不仅效率低下&#xff0c;还容易遗漏关键安全线索。本文将带你突破手工操作的瓶颈&…...

从模型文件到孪生场景:一个Three.js三维模型管理系统的完整产品化思考

从技术原型到商业产品&#xff1a;构建Three.js数字孪生系统的全栈实践 在数字孪生技术快速渗透工业制造、智慧城市等领域的今天&#xff0c;如何将一个基于Three.js的模型展示Demo转化为真正具备商业价值的企业级管理系统&#xff1f;这个问题困扰着许多掌握前端3D技术的开发者…...

Windows右键菜单终极清理教程:ContextMenuManager免费工具帮你告别臃肿与卡顿

Windows右键菜单终极清理教程&#xff1a;ContextMenuManager免费工具帮你告别臃肿与卡顿 【免费下载链接】ContextMenuManager &#x1f5b1;️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你的Windows右键菜单是…...

AI 变频调速水泵智能功率 MOSFET 完整选型方案

2026年&#xff0c;AI技术在智能水务及工业泵控系统深度渗透&#xff08;如预测性维护、能效优化、智能流量调节&#xff09;&#xff0c;变频器对功率 MOSFET 提出更高要求&#xff1a;高效节能、高可靠性、快速响应。微碧半导体&#xff08;VBsemi&#xff09;基于先进的 Tre…...

Semi Design v2.98.0 发布:多项组件功能更新与问题修复,助力搭建美观 React 应用

【Feature】新增douyinfe/semi-vite-plugin包&#xff0c;提供 Vite 构建场景下的主题定制等能力&#xff0c;与douyinfe/semi-webpack-plugin特性对齐&#xff1b;Calendar 组件新增onMoreClickprop&#xff0c;支持自定义月视图下"还有几项"的点击事件&#xff1b;…...

短剧进军韩国:外卡收单+本地钱包,Antom助你打通“付费最后一公里”

韩国短剧市场正以惊人的速度崛起。2024年&#xff0c;韩国短剧市场规模已达4.9亿美元&#xff0c;全球排名第4&#xff0c;预计未来将突破15亿美元。中国出海平台如DramaBox、ShortMax、ReelShort等早已抢先布局&#xff0c;在下载榜和收入榜上占据大半江山。然而&#xff0c;流…...

手把手教你用YOLOv5/PyTorch在DOTA V1.5数据集上训练自己的航拍目标检测模型

从零构建航拍目标检测模型&#xff1a;YOLOv5DOTA V1.5实战指南 当无人机镜头掠过城市上空&#xff0c;传回的40004000像素高清图像中&#xff0c;棒球场、港口集装箱、高速公路立交桥等目标如何被精准识别&#xff1f;本文将带您用YOLOv5框架&#xff0c;在包含18.8万实例的DO…...