拿諾貝爾獎可以長壽?——從爬蟲到簡單數據分析
最近在看《魔鬼經濟學》,作者通過數據分析來揭示問題的真相,十分有趣。
剛好看見一篇講諾貝爾與長壽關係的
一 項 歷 時 50 年 的 調 查 研 究 發 現, 諾 貝 爾 化 學 獎 和 物 理 學 獎 獲 得 者 比 那 些 與 獎 項 失 之 交 臂 的 提 名 者 活 得 更 長。
不過只說了化學獎與物理學獎的,那其他獎項呢,是不是也是可以讓人長壽?
帶著好奇心,開始了我的數據分析之路。
獲取數據
Kaggle上就有現成的歷屆獲獎者數據集,時間從1901年到2016年
Nobel Laureates, 1901-Present | Kaggle
還差一個提名者的數據集,找遍全網發現只有諾貝爾獎的官網有提供資料庫搜索服務,看來只能自己寫爬蟲爬取數據了。
編寫爬蟲
資料庫地址 The Nomination Database
熟練地按下F12召喚開發者工具,然後開始搜索,再點開開發者工具的Network標籤,第一個結果就是我們要的
而紅圈標註的就是搜索引擎需要的參數。
搜索結果如下
經過一系列酷炫的正則操作,把Nominee提取出來,注意不是Nominator,Nominee是被提名者,而Nominator是提名者的意思。
爬蟲的具體流程這裡就不贅述了,知乎上有許多很好的爬蟲教程,我這裡只用了requests庫獲取網頁源代碼,然後用re正則表達式提取需要的信息。
清洗數據
- 處理缺失值,不少人沒有Birth Date和Death Date,將這些記錄直接清除
- 選擇時間,獲獎者是1901年-2016年的,而提名者是1901年-1967年的數據,其中醫學類的只有到1953年的,所以選擇統計的年份為1901年-1950年。
- 將不需要的特徵去除
- 處理異常值
數據清洗完就能進行分析了。
數據分析
計算了一下不同獎項50年內的獲獎者以及提名者的平均壽命,並繪製了圖表,結果驚人。
首先是,針對書上的結論,諾貝爾化學獎、物理學獎的獲得者比提名者活得更久,這與我實際的數據分析結果不一致,獲獎者的平均壽命比提名者要短暫,而且化學獎的獲得者平均壽命遠低於提名者的。撇開化學獎不說,除了文學獎,有點小差距,平均壽命基本上差不多。
然後把獲獎者和提名的混在一起,看壽命平均值,學醫的活得最久,研究化學的平均壽命是最短的,搞科研是及其辛苦和危險的,這裡向他們的科研精神致敬。
順帶說一下,1969年才開始有的諾貝爾經濟學獎。
總結與反思
這次通過自己的親手實踐,推翻了書上的結論,可見也不能盡信書。不過我還是推薦大家去看《魔鬼經濟學》這本書,它能給你一個全新的思考角度去看待生活中的問題。
如果你也對其中的一些數據感興趣,也可以像我一樣自己動手做做數據分析,沒準也會有些出乎意料的結果。
推薦閱讀: