前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2021中国大学排名分析数据分析项目

2021中国大学排名分析数据分析项目

作者头像
润森
发布2022-12-20 20:40:20
7861
发布2022-12-20 20:40:20
举报
文章被收录于专栏:毛利学Python毛利学Python

数据分析期末项目

项目介绍

  • 项目名称:2021中国大学排名分析
  • 项目简介:利用Pandas,plotly和pychart对中国大学综合排名数据进行可视化分析,让用户可根据院校类型(综合,理工,师范,农业,林业)为检索点进行大学信息查询,并提供不同省市大学数量与总分的对比分析图。

问题表述

  • 用户画象:待填报志愿的高考生
  • 用户任务:了解大学信息以进行志愿填报
  • 用户痛点(需求):不了解大学的排名及各指标的得分,不了解同类型院校的排名,不清楚各省市大学的数量与排名
  • 增长/益点:pandas分析,给用户提供

解决方案表述

  • 一句话概括:利用pandas+pyechart+plotly,对大学排名信息(数据源)进行清洗与可视化,帮助高考生更好地了解大学信息以进行志愿填报
  • 数据流程图DFD
  • IDEO三要素

Viability商业可行性

此项目提供全国大学排名信息,帮助高考生更好地选择心仪合适的大学;本项目的可视化图表主要来自pyechart与plotly,均为免费的开源库,降低数据分析的成本

Feasibility技术可行性

pyechart与plotly可以生成丰富且美观的可视化图表与交互图表,并且调用难度低

Desirability用户可欲性

此项目可以提供丰富的可视化图表与交互图表,让用户可以更直观地看到数据的呈现形态;并且操作简单,学习成本低,方便用户使用

数据分析流程及成果

  • 首先导入数据分析基本模块pandas和数据源
代码语言:javascript
复制
import pandas as pd
# 读csv文件
df = pd.read_csv('C:/Users/喜东东/Desktop/daxue/中国大学综合排名2021.csv', encoding='gb2312')
df

输出:

  • 仔细观察表格数据,发现数据存在空值NaN。其实不管有没有空值,都要先查看数据类型及缺失值,所以
代码语言:javascript
复制
## 查看数据类型
df.info()
  • 输出:
代码语言:javascript
复制
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 582 entries, 0 to 581
Data columns (total 17 columns):
 #   Column   Non-Null Count  Dtype  
---  ------   --------------  -----  
 0   排名       582 non-null    int64  
 1   升/降      566 non-null    float64
 2   学校名称     582 non-null    object 
 3   英文名称     582 non-null    object 
 4   省市       582 non-null    object 
 5   类型       582 non-null    object 
 6   总分       582 non-null    float64
 7   办学层次     100 non-null    float64
 8   学科水平     100 non-null    float64
 9   办学资源     100 non-null    float64
 10  师资规模与结构  100 non-null    float64
 11  人才培养     100 non-null    float64
 12  科学研究     100 non-null    float64
 13  服务社会     100 non-null    float64
 14  学术人才     100 non-null    float64
 15  重大项目与成果  100 non-null    float64
 16  国际竞争力    100 non-null    float64
dtypes: float64(12), int64(1), object(4)
memory usage: 77.4+ KB
  • 不难发现,在582条数据里,升/降,办学层次,学科水平,师资规模与结构,人才培养,科学研究,服务社会,学术人才,重大项目与成果,国际竞争力中都存在缺失值。为了后面更好地进行数据可视化,要先将全部空值进行填充,这里填充为0,用的是fillna的方法
代码语言:javascript
复制
## 将全部缺失的数据填充为0
df.fillna(0, inplace=True)

输入图片说明

  • 初步清洗完后,我希望可以以院校类型为参数,对大学进行分类,在这基础上再进行各省市间数量和分数的对比,以达到数据加值的目的。
  • 首先看看院校类型有哪些
代码语言:javascript
复制
#院校类型
类型名称 = list(df.类型.dropna().unique())
类型名称

输出:

代码语言:javascript
复制
['综合', '理工', '师范', '农业', '林业']
  • 将它们设为参数,再用groupby和agg的方法进行大学数量与平均分的分组聚合,实现交互,下面以”理工“类型为例:
代码语言:javascript
复制
def i(the_type):
    dfs = df.query("类型=='{}'".format(the_type))
    df_summary = dfs.groupby("省市").agg({"学校名称":"count","总分":"mean"}).sort_values(by = "总分", ascending = False)
    df_summary.columns=['学校名称','平均分']
    return df_summary 
i('理工') 

输出:

  • 然后就是可视化啦,用的是iplot的方法,直接在ipython notebook里面生成图片,鼠标悬浮图表还能告诉用户相关的数值

这就是整个项目大致的数据思路和核心功能,还有其他一些分析过程,可视化图表和flask网页搭建可在ipynb文档查看,这里不作细节介绍,下面展示一些可视化图表和flask网页。

  • 各省市大学数量地图分布
  • 各省市大学平均分柱状图

输入图片说明

  • flask网页搭建

项目获取: 搜索 微信小程序 项目资源下载

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-09-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小刘IT教程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目介绍
  • 问题表述
  • 解决方案表述
  • 数据分析流程及成果
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档