在《十四五規(guī)劃綱要》全文中,數(shù)字關(guān)鍵詞出現(xiàn)了 75 處,第五篇 加快數(shù)字化發(fā)展 建設(shè)數(shù)字中國(guó)單獨(dú)點(diǎn)題,強(qiáng)調(diào)要迎接數(shù)字時(shí)代,激活數(shù)據(jù)要素潛能,加快建設(shè)數(shù)字經(jīng)濟(jì)、數(shù)字社會(huì)等,以數(shù)字化轉(zhuǎn)型整體驅(qū)動(dòng)生產(chǎn)方式、生活方式和治理方式變革。因此,專業(yè)辦學(xué)應(yīng)主動(dòng)對(duì)接產(chǎn)業(yè)數(shù)字化、數(shù)字產(chǎn)業(yè)化發(fā)展需求,瞄準(zhǔn)未來(lái)前沿新格局,基于未來(lái)社會(huì)及行業(yè)發(fā)展需求原點(diǎn),瞄準(zhǔn)新業(yè)態(tài),融入新技術(shù),重視多學(xué)科交叉前沿理念,突出大數(shù)據(jù)智能化等在專業(yè)建設(shè)中的作用,推動(dòng)傳統(tǒng)專業(yè)建設(shè)與人才培養(yǎng)的轉(zhuǎn)型與升級(jí)。
本書的出發(fā)點(diǎn)是對(duì)傳統(tǒng)的教材進(jìn)行結(jié)構(gòu)優(yōu)化及內(nèi)容重組,并結(jié)合傳統(tǒng)人文社科類專業(yè)數(shù)字化改造需求,聚焦數(shù)據(jù)分析中的Python數(shù)據(jù)采集與分析,讓相關(guān)專業(yè)學(xué)生通過(guò)系統(tǒng)學(xué)習(xí),具備一定的數(shù)字素養(yǎng)與解決實(shí)際問(wèn)題的復(fù)合能力。
本書主要介紹了Python編程中常用到的數(shù)據(jù)類型及程序編寫中的控制流程與設(shè)計(jì)邏輯,函數(shù)的創(chuàng)建與調(diào)用,常見(jiàn)編碼類別及文件的讀寫與打開(kāi)、關(guān)閉操作。在此基礎(chǔ)上,以數(shù)據(jù)采集與分析為主線,介紹了網(wǎng)絡(luò)爬蟲(chóng)原理與實(shí)現(xiàn)技術(shù)、Scrapy爬蟲(chóng)框架,以及numpy、pandas、matplotlib數(shù)據(jù)整理與分析工具包的應(yīng)用,最后結(jié)合文本挖掘與分析,介紹了文本特征提取、文本分類及文本分析的原理與應(yīng)用。
本書由王瑞胡和楊文藝任主編,謝壹、王春寶任副主編。第1~8章由王瑞胡編寫,第9章和第13章由楊文藝編寫,第10章和第11章由王瑞胡、謝壹共同編寫,第12章由王瑞胡、王春寶共同編寫,全書由王瑞胡完成統(tǒng)稿。
本書的出版得到重慶市2020年高等教育教學(xué)改革研究重點(diǎn)項(xiàng)目(項(xiàng)目編號(hào): 202075)、重慶文理學(xué)院合格 多元人才培養(yǎng)試點(diǎn)項(xiàng)目(未來(lái)數(shù)字文旅創(chuàng)新人才培養(yǎng)實(shí)驗(yàn)班)等資助。在本書的編寫過(guò)程中,參閱了Python數(shù)據(jù)采集與分析相關(guān)書籍、網(wǎng)上的一些資料和一些在線學(xué)習(xí)平臺(tái)的課程,在此向這些文獻(xiàn)資料的作者及團(tuán)隊(duì)表示感謝。
最后,特別感謝清華大學(xué)出版社的大力支持,使得本書得以順利出版。
由于編者水平有限,書中難免有疏漏之處,敬請(qǐng)讀者批評(píng)指正。
編者2023年6月
源碼下載
第一篇Python開(kāi)發(fā)環(huán)境部署和編程基礎(chǔ)
第1章Python開(kāi)發(fā)環(huán)境部署
1.1Anaconda3的安裝與部署
1.2Anaconda3的使用
1.3Jupyter Notebook的使用
第2章Python編程基礎(chǔ)
2.1Python編程語(yǔ)言概述
2.2第一個(gè)Python程序
2.3Python中模塊的應(yīng)用
第3章數(shù)據(jù)類型
3.1數(shù)字
3.2字符串
3.3列表
3.4字典
3.4.1列表和字典的區(qū)別與聯(lián)系
3.4.2字典的幾種操作
3.5元組
第4章程序控制流程
4.1for循環(huán)語(yǔ)句
4.2while循環(huán)語(yǔ)句
4.3break語(yǔ)句
4.4continue語(yǔ)句
4.5pass語(yǔ)句
4.6選擇分支結(jié)構(gòu)的實(shí)現(xiàn)
4.7隨機(jī)數(shù)的應(yīng)用
第5章函數(shù)的使用
5.1函數(shù)的創(chuàng)建與調(diào)用
5.2變量作用域
5.3模塊與包
5.3.1模塊導(dǎo)入
5.3.2模塊的查找方式
5.3.3包
5.4模塊應(yīng)用舉例
5.4.1time模塊的使用
5.4.2收發(fā)電子郵件相關(guān)模塊的使用
第6章字符編碼與文件讀寫
6.1常見(jiàn)的編碼類別
6.2文件讀寫
6.2.1文件打開(kāi)
6.2.2文件讀
6.2.3文件寫
6.2.4文件關(guān)閉
6.3csv文件的讀寫操作
6.3.1寫csv文件
6.3.2讀csv文件
6.4Excel文件的讀寫操作
6.4.1向Excel文件中寫入數(shù)據(jù)
6.4.2讀取Excel文件中的數(shù)據(jù)
第7章Python面向?qū)ο缶幊?/p>
7.1面向?qū)ο笏枷牒?jiǎn)介
7.2類的創(chuàng)建
7.2.1初始化方法的定義
7.2.2類的繼承
7.2.3類的定制
第二篇Python數(shù)據(jù)采集
第8章網(wǎng)絡(luò)爬蟲(chóng)原理
8.1爬蟲(chóng)的工作步驟
8.2爬蟲(chóng)倫理
8.2.1Robots協(xié)議
8.2.2robots.txt的使用方法
8.3使用BeautifulSoup解析和提取網(wǎng)頁(yè)中的數(shù)據(jù)
8.3.1find()與find_all()的應(yīng)用
8.3.2select()的應(yīng)用
8.3.3靜態(tài)網(wǎng)頁(yè)與動(dòng)態(tài)網(wǎng)頁(yè)
8.3.4帶參數(shù)的URL請(qǐng)求
8.3.5JSON數(shù)據(jù)的解析
8.4反反爬蟲(chóng)技術(shù)
8.5攜程網(wǎng)站酒店評(píng)論信息的抓取
8.6攜程網(wǎng)站某景區(qū)評(píng)論信息抓取
8.7天氣信息的抓取
8.8selenium的應(yīng)用
8.8.1selenium的配置
8.8.2工作原理和步驟
8.8.3selenium提取數(shù)據(jù)的方法
8.8.4selenium操作元素的常用方法
第9章Scrapy爬蟲(chóng)框架
9.1安裝Scrapy爬蟲(chóng)框架并創(chuàng)建爬蟲(chóng)項(xiàng)目
9.1.1安裝Scrapy爬蟲(chóng)框架
9.1.2創(chuàng)建并啟動(dòng)Scrapy爬蟲(chóng)項(xiàng)目
9.1.3Scrapy爬蟲(chóng)項(xiàng)目的組成
9.2使用Scrapy提取網(wǎng)頁(yè)數(shù)據(jù)
9.2.1Response對(duì)象的屬性和方法
9.2.2xpath選擇器
9.2.3Selector對(duì)象
9.2.4css選擇器
9.3多層級(jí)網(wǎng)頁(yè)抓取
9.3.1相同結(jié)構(gòu)頁(yè)面抓取
9.3.2不同結(jié)構(gòu)網(wǎng)頁(yè)數(shù)據(jù)的抓取
9.3.3request與對(duì)應(yīng)的response間的數(shù)據(jù)傳遞
第三篇Python數(shù)據(jù)分析
第10章pandas庫(kù)
10.1pandas庫(kù)的數(shù)據(jù)結(jié)構(gòu)
10.1.1Series數(shù)據(jù)結(jié)構(gòu)
10.1.2Series的創(chuàng)建方法
10.1.3Series的索引和切片
10.1.4Series的幾種操作
10.1.5DataFrame數(shù)據(jù)結(jié)構(gòu)
10.1.6DataFrame數(shù)據(jù)排序
10.1.7Series 對(duì)象和 DataFrame 對(duì)象的聯(lián)系
10.2分組聚合操作
10.2.1groupby()方法的應(yīng)用
10.2.2單層分組聚合
10.2.3多層分組聚合操作
10.2.4聚合操作agg()方法的應(yīng)用
第11章matplotlib數(shù)據(jù)可視化
11.1圖形繪制的一般步驟
11.2折線圖的繪制
11.2.1單條折線圖的繪制
11.2.2多條折線圖的繪制
11.3餅圖的繪制
11.3.1使用Series繪圖
11.3.2使用matplotlib繪圖
11.4散點(diǎn)圖的繪制
11.5箱線圖的繪制
第12章相關(guān)分析與關(guān)聯(lián)分析
12.1概述
12.2相關(guān)分析
12.2.1相關(guān)分析的描述與測(cè)度
12.2.2相關(guān)系數(shù)
12.2.3偏相關(guān)分析
12.2.4距離相關(guān)分析
12.3Apriori關(guān)聯(lián)分析
12.3.1支持度、置信度與提升度
12.3.2Apriori算法
12.3.3Apriori算法應(yīng)用舉例
12.3.4Apriori算法的Python實(shí)現(xiàn)
第13章文本挖掘與分析
13.1文本挖掘概述
13.1.1文本挖掘的定義
13.1.2文本挖掘的過(guò)程
13.1.3Python中的文本挖掘包
13.2Python文本特征提取與特征選擇
13.2.1中文分詞
13.2.2詞頻統(tǒng)計(jì)
13.2.3詞云分析
13.2.4文本特征提取
13.3文本分類實(shí)例: 垃圾郵件識(shí)別
13.3.1文本分類概述
13.3.2文本分類的Python實(shí)現(xiàn)
參考文獻(xiàn)