您的位置 首页 > 腾讯云社区

三分钟带你看遍世界大学排行---数据森麟

作者:周萝卜

来源:萝卜大杂烩

代码大学,一直都是神圣的学习知识的殿堂,各个世界级名校都不断地为社会输送着人才,今天我们就来盘一盘世界大学的排名情况。

数据获取

我们这里选取的就是上海交通大学的 ARWU 网站

http://www.shanghairanking.com/ARWU2019.html

该网站包含了历年的大学分数以及排名情况。

通过分析页面可以发现,通过 pandas 的 read_html 函数来获取相关信息是最为方便的

table = pd.read_html(url) college = table[0]

同时我们还发现,大学所对应的国家数据是图片,所以需要特殊处理下

def get_country_name(html): soup = BeautifulSoup(html,'lxml') countries = soup.select('td > a > img') lst = [] for i in countries: src = i['src'] pattern = re.compile('flag.*/(.*?).png') country = re.findall(pattern,src)[0] lst.append(country) return lst

最后我们把得到的数据进行下处理,去除掉不需要的字段,再增加年份字段等

for i in range(2005, 2020): print('year', i) url = 'http://www.shanghairanking.com/ARWU%s.html' % i html = requests.get(url).content table = pd.read_html(url) college = table[0] college.columns = ['world rank','university', 2,3, 'score', 5] college.drop([2,3,5],axis = 1,inplace = True) college['year'] = i college['index_rank'] = college.index college['index_rank'] = college['index_rank'].astype(int) + 1 college['country'] = get_country(html) college.to_csv(r'College.csv', mode='a', encoding='utf_8_sig', header=True, index=0)

这样,我们就得到了 College.csv 文件

下面我们就可以做一些简单的分析了。

数据分析 世界大学排行

可以看到,哈佛最为世界第一的名校,其综合评分为100分,接下来就是斯坦福和剑桥大学,不过综合评分的差距还是蛮大的。

同时在前十名学府中,美国独占8席,英国占据2席,确实牛的不行。

top100 国家占比

下面我们再来看看在 top100 大学中,各个国家所占的比例

可以清晰的看出,美国作为当今唯一的超级大国,其顶尖学府基本占据了世界一般的水平,可以说强大的人才造就能力使其强大的科研能力的坚强后盾!

而英国和澳大利亚紧随其后,但是却远远不能比拟。

中国大学排行

中国有4所高校挤进了世界100强,分别是清华、北大、浙江和上海交通大学,可以说它们是中国最好的大学,也同时肩负着振兴中华,输出人才的重大任务。

最后,我们还是以动态视频来结束今天的分享,支持原创就请给个“在看”吧!

完整代码:

https://github.com/zhouwei713/data_analysis/tree/master/college_rank

◆ ◆ ◆ ◆ ◆

猜你喜欢

● 笑死人不偿命的知乎沙雕问题排行榜

● 用Python扒出B站那些“惊为天人”的阿婆主!

● 全球股市跳水大战,谁最坑爹!

● 上万条数据撕开微博热搜的真相!

● 你相信逛B站也能学编程吗

---来自腾讯云社区的---数据森麟

关于作者: 瞎采新闻

这里可以显示个人介绍!这里可以显示个人介绍!

热门文章

留言与评论(共有 0 条评论)
   
验证码: