十分鐘帶你看遍世界大學排

大學,一直都是神聖的學習知識的殿堂,各個世界級名校都不斷地爲社會輸送着人才,今天咱們就來盤一盤世界大學的排名狀況。html

數據獲取

咱們這裏選取的就是上海交通大學的 ARWU 網站web

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

該網站包含了歷年的大學分數以及排名狀況。函數

經過分析頁面能夠發現,經過 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
複製代碼

最後咱們把獲得的數據進行下處理,去除掉不須要的字段,再增長年份字段等url

for i in range(20052020):
    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 文件spa

下面咱們就能夠作一些簡單的分析了。3d

數據分析

世界大學排行

能夠看到,哈佛最爲世界第一的名校,其綜合評分爲100分,接下來就是斯坦福和劍橋大學,不過綜合評分的差距仍是蠻大的。code

同時在前十名學府中,美國獨佔8席,英國佔據2席,確實牛的不行。

top100 國家佔比

下面咱們再來看看在 top100 大學中,各個國家所佔的比例

能夠清晰的看出,美國做爲當今惟一的超級大國,其頂尖學府基本佔據了世界通常的水平,能夠說強大的人才造就能力使其強大的科研能力的堅強後盾!

而英國和澳大利亞緊隨其後,可是卻遠遠不能比擬。

中國大學排行

中國有4所高校擠進了世界100強,分別是清華、北大、浙江和上海交通大學,能夠說它們是中國最好的大學,也同時肩負着振興中華,輸出人才的重大任務。

最後,還能夠移步這裏查看動態排行視頻

動態視頻

相關文章
相關標籤/搜索