用Python分析周杰倫6.5W字的歌詞,原來他是這樣的人
雷鋒網按:本文作者冬鑫,原文載於作者知乎專欄,雷鋒網已獲授權。文中所有鏈接詳見文末「閱讀原文」。
前一段時間分析民謠歌詞的那邊文章特別火,剛好在研究使用python處理數據,就也想弄個類似東西練練手。於是乎,拉上自己親妹妹 @張小黑 就開始分工。
一、準備歌詞素材
歌詞選擇:杰倫至今的所有專輯(從最開始的到最新的)
由於爬蟲木有學會,就只能手動收集歌詞。經過一系列的 google、baidu,終於找到別人整理好的歌詞全集。ok,就這樣歌詞文件搞定了,一共也沒多大,也就207K(想想周董這麼多年唱的歌詞大半都在這207K的txt文件里就不免有些感慨)。
二、對歌詞文件完成分詞
這是最難的部分,產品汪只會跟程序猿們相愛相殺,哪會寫代碼呀!!!
沒辦法,硬著頭皮也要寫。網上goolge各種關鍵字,看博客,花了半天的時間,連蒙帶猜,勉勉強強看懂了網上的代碼示例,比著葫蘆畫瓢寫了一點點寫。
千難萬險,終於寫完調通,最終主要的部分一共也就12行,沒有任何注釋(簡直乞丐版代碼,根本看不出來哪裡sexy ~~~~(>_
三、對分詞的結果進行分析
好,我們終於到了正文,以上都是廢話,下邊才是重要結論。(如果以這種方式寫郵件一定會被老闆打死 (^?^*) )
結論一:杰倫最喜歡的唱的主題 --- 情歌 (我自己也知道這是廢話 O(∩_∩)O)
拉了下出現頻率 top20 的詞語,滿滿的都是文藝、傷感、愛情 :
我們 / 怎麼 / 沒有 / 微笑 / 離開 / 愛情 / 回憶 / 不要 / 開始 / 如果 / 怎麼 / 開始
我擦,感覺隨機排列組合都能成歌詞,方文山以後是不是就可以下崗了 (^?^*)
結論二:杰倫喜歡媽媽勝過爸爸,喜歡外婆勝過爺爺以及外公(歌詞中沒有出現奶奶)
大家應該都聽過。
杰倫專門為外婆寫了一首歌,其中也就1句歌詞提到了外公。
至於爺爺,杰倫也有那首
結論三:杰倫喜歡黑色、白色勝過其他顏色
很符合周董的形象,歌詞里高大上的黑色&白色力壓其他顏色。看到黑白兩色頻率這麼高,我第一時間想到的是,感覺很符合那個氣質。還有就是青色出現了6次,大概率是因為吧。
結論四:杰倫最喜歡的語氣詞是 oh~
毋庸置疑,杰倫最喜歡 oh~ ,排除大小寫的因素,[oh] 出現的頻率甚至超過 [我們] 成為出現詞頻最高的辭彙。此外杰倫經典的 "哎呦不錯哦~" 中的 [哎呦] 也名列前茅,看來杰倫真的很喜歡講這句話。
總結:只是從歌詞來看,大概杰倫就是一個穿著黑白帽衫,表面上酷酷的,但是骨子裡滿是深情、文藝, 只喜歡喝爺爺泡的茶,聽媽媽的話,愛自己外婆的 ,嘴裡時不時地冒出一句『哎呦,不錯哦』 的 五好青年 ^_^
註:以上內容純屬胡說八道,如有雷同,純屬巧合。
另,頭圖不是 python 生成,是使用一個國外的網站(wordart)生成的。文章中使用的分詞代碼、歌詞文本、頭圖已通過有道雲筆記分享(文章末尾有鏈接),內容如下:
有道雲筆記鏈接:http://t.cn/RaICFIV
※為什麼有那麼多人選擇Python,真的有那麼好嗎?
※Python 操作 MySQL 的正確姿勢
※如何用 100行Python 代碼做出魔性聲控遊戲「八分音符醬」
TAG:Python |
※冬令營分享課Day06 原來你竟是這樣的Python
※Python與人工智慧的關係原來是這樣的...
※分享10個給Python小白看的實用案例,入門Python就在這裡了
※我用4年時間解決了Python GIL的一個bug...
※Python帶我飛:50個有趣而又鮮為人知的Python特性
※又一個宣布放棄 Python 2 的!這次是 RedHat
※我用4年時間解決了Python GIL的一個bug……
※這個Python資源在GitHub上標星超8000,現在被翻譯成了中文
※幾行Python代碼搞定,偏要用100個GPU!
※Python 核心開發者解釋為何 Python 4.0 不會像 3.0 一樣
※為什麼 Python 4.0 會與 Python 3.0 不同?
※Python3 的這幾個特性
※這4個Python實戰項目,讓你瞬間讀懂Python!
※NumPy 將停止支持 Python 2,這裡有一份給數據科學家的 Python 3 使用指導
※50 歲老碼農:Python Bug 太多,我選 Rust 和 Go!
※50 歲老碼農:Python Bug 太多,我選 Rust和Go!
※13個Python Web框架比較,你想使用哪個呢?
※比Python快100倍,利用spaCy和Cython實現高速NLP項目
※10分鐘學會用python寫遊戲!Python其實很簡單!
※Python3 vs. Python2 大作戰,誰將是性能之王?