Python程序設計-以醫藥數據處理為例(第2版)
趙鴻萍、張艷敏、古銳、劉新昱、侯鳳貞 328
商品描述
"本書以醫藥數據處理為情境,依托大量醫藥數據處理的案例,向讀者介紹Python程序設計的方法和語法,以及利用Python解決醫藥領域一些實際問題的相關知識。 本書共分為三篇,依次為Python入門篇、Python進階篇和Python實戰醫藥數據處理專題篇。其中,前兩篇全面、系統地介紹了Python程序設計的方法和語法,並基於一個貫通性案例——“藥品銷售數據處理”,進一步介紹了醫藥數據讀取、清理、統計分析、可視化、機器學習建模和深度學習建模的基本知識,可以有效支撐讀者通過全國電腦二級考試;第3篇從引領學生開展智慧醫藥研究的角度,闡釋了7個智慧醫藥研發的典型案例,為學生開展智慧醫藥研究奠定基礎。 本書可作為醫藥院校本科生和研究生學習Python程序設計的教材,也可作為其他綜合型大學的“程序設計語言”通識課程的教材。 "
目錄大綱
目錄
第1篇Python入門篇
第1章初識Python3
本章學習目標3
1.1程序設計語言概述3
1.1.1電腦程序設計語言簡介3
1.1.2高級程序設計語言簡介4
1.2Python概述5
1.2.1Python語言的發展簡史5
1.2.2Python語言的特點7
1.2.3Python語言的主要應用領域8
1.2.4Python語言的不足10
1.3Python程序開發環境10
1.3.1Python程序開發環境的組成10
1.3.2Python程序開發環境的搭建11
1.3.3Python程序開發環境的使用13
小結20
第2章初識Python程序21
本章學習目標21
2.1案例21: 計算兩個化合物的相似度21
2.1.1化合物相似度概述21
2.1.2計算兩個化合物相似度的算法22
2.1.3計算兩個化合物相似度的程序22
2.2案例22: 繪制苯環23
2.2.1苯環概述及繪制方法23
2.2.2繪制苯環的算法24
2.2.3繪制苯環的程序25
2.3Python程序組成28
2.3.1Python語法元素28
2.3.2Python語句34
2.3.3Python程序書寫規範41
2.4程序設計方法簡介41
2.4.1面向對象程序設計42
2.4.2面向過程程序設計42
2.5輸入/輸出常用的三個函數44
2.5.1input()函數44
2.5.2eval()函數45
2.5.3print()函數46
2.6標準庫1: turtle庫的使用方法48
2.6.1標準庫引入方法48
2.6.2turtle庫概述49
2.6.3turtle庫解析49
2.6.4turtle應用實例55
小結59
Python程序設計——以醫藥數據處理為例(第2版)目錄第2篇Python進階篇
第3章基本數據類型63
本章學習目標63
3.1數字類型及其操作63
3.1.1數字類型的概念63
3.1.2數字類型的表示63
3.1.3數字類型的運算操作符65
3.1.4內置的數字類型的函數66
3.1.5標準庫2: math庫的使用方法68
3.1.6微實例3.1: 計算基本統計量71
3.2字符串類型及其操作72
3.2.1字符串類型的概念72
3.2.2字符串類型的表示73
3.2.3字符串類型的運算操作符74
3.2.4內置的字符串類型的函數76
3.2.5微實例3.2: 查找化合物ID及水溶性值77
3.2.6內置的字符串類型的方法77
3.3案例31: 清肺排毒湯處方展示82
3.3.1清肺排毒湯處方展示要求82
3.3.2清肺排毒湯處方展示算法83
3.3.3清肺排毒湯處方展示程序83
3.4案例32: 化合物水溶性數據的格式化輸出85
3.4.1水溶性數據格式化輸出規範85
3.4.2水溶性數據格式化輸出算法85
3.4.3水溶性數據格式化輸出程序85
3.5邏輯類型及其操作87
3.5.1邏輯類型的概念87
3.5.2邏輯類型的表示87
3.5.3邏輯類型的運算操作符87
3.5.4返回邏輯類型數據的運算88
3.5.5混合運算操作符的優先級89
3.6貫通性案例(一): 藥品銷售數據的數據類型90
3.6.1貫通性案例簡介90
3.6.2藥品銷售數據的數據類型91
小結91
第4章程序的控制結構92
本章學習目標92
4.1程序結構概述92
4.1.1程序流程圖92
4.1.2程序的基本結構93
4.2程序的順序結構94
4.3程序的分支結構94
4.3.1單分支結構if語句94
4.3.2二分支結構if…else…語句96
4.3.3多分支結構if…elif…else…語句97
4.3.4分支結構的嵌套100
4.3.5案例41: 外源化合物毒性分級101
4.4程序的循環結構102
4.4.1遍歷循環: for語句103
4.4.2條件循環: while語句104
4.4.3break和continue語句105
4.4.4else擴展語句106
4.5案例42: 蒙特卡洛方法求π的值107
4.5.1蒙特卡洛方法概述107
4.5.2蒙特卡洛方法求π值的算法108
4.5.3標準庫3: random庫使用方法108
4.5.4蒙特卡洛方法求π值的程序110
4.6程序的異常處理112
4.6.1異常概述112
4.6.2捕獲並處理異常: try…except…結構113
4.6.3try…except…結構的高級用法115
4.7貫通性案例(二): 查看藥品銷售大數據文件的概貌119
4.7.1查看藥品銷售大數據文件概貌的算法119
4.7.2查看藥品銷售大數據文件概貌的程序120
小結121
第5章函數122
本章學習目標122
5.1函數概述122
5.1.1函數的基本概念122
5.1.2使用函數編程的目的123
5.2函數的基本操作124
5.2.1函數的定義124
5.2.2函數的返回值125
5.2.3函數的調用127
5.2.4lambda表達式和匿名函數128
5.3函數的參數129
5.3.1參數傳遞的方式129
5.3.2函數形參的分類130
5.4變量的作用域133
5.4.1作用域基礎134
5.4.2全局變量134
5.4.3局部變量135
5.4.4閉包變量136
5.4.5作用域規則137
5.5遞歸函數138
5.5.1遞歸函數的概念138
5.5.2斐波那契數列140
5.5.3遞歸與循環的比較142
5.6Python內置函數143
5.6.169個內置函數143
5.6.2部分常用函數說明144
5.7類的定義和使用146
5.7.1案例51: 通過類來模擬和組織藥物的屬性和行為146
5.7.2標準庫4: datetime庫使用方法149
5.8貫通性案例(三): 定義函數查看醫藥大數據文件的概貌153
5.8.1分析定義該函數的步驟153
5.8.2定義該函數的完整源程序154
5.8.3調用該函數的方法154
小結155
第6章組合數據類型156
本章學習目標156
6.1組合數據類型概述156
6.1.1組合數據類型的概念156
6.1.2組合數據類型的分類156
6.2序列類型及其操作157
6.2.1序列的概念157
6.2.2序列共有的操作158
6.2.3元組及其個性化的操作161
6.2.4列表及其個性化的操作162
6.3貫通性案例(四): 藥品銷售數據清理171
6.3.1藥品銷售數據清理方法171
6.3.2藥品銷售數據清理程序172
6.4集合類型及其操作174
6.4.1集合的概念及特點174
6.4.2生成集合175
6.4.3集合的操作176
6.5字典類型及其操作178
6.5.1字典的概念178
6.5.2生成字典179
6.5.3字典的操作179
6.6貫通性案例(五): 藥品銷售數據統計分析182
6.6.1藥品銷售數據統計分析算法182
6.6.2藥品銷售數據統計分析程序183
6.7案例61: 文本詞頻統計184
6.7.1案例611: 一篇英文藥學文獻的詞頻統計185
6.7.2第三方庫1: jieba庫的使用方法187
6.7.3案例612: 一篇中文藥學文獻的詞頻統計188
6.8Python之禪190
6.8.1this.py簡介190
6.8.2this.py程序解析191
小結193
第7章文件194
本章學習目標194
7.1文件概述194
7.1.1文件的概念194
7.1.2文件的分類194
7.1.3文件的打開方式195
7.2文件操作195
7.2.1文件的操作步驟195
7.2.2打開、關閉文件195
7.2.3讀文件197
7.2.4寫文件198
7.2.5移動文件指針199
7.3一、二維數據的文件操作200
7.3.1數據組織的維度與數據結構200
7.3.2一維數據的文件操作201
7.3.3二維數據的文件操作203
7.4貫通性案例(六): 保存清理後的藥品銷售數據206
7.4.1藥品銷售數據格式化及寫入文件的方法206
7.4.2保存清理後的藥品銷售數據的程序206
7.5高維數據的文件操作207
7.5.1高維數據的格式化207
7.5.2標準庫5: json庫的使用方法208
7.5.3標準庫6: pickle庫的使用方法208
7.5.4貫通性案例(七): 將藥品銷售數據統計結果寫入pickle文件209
小結210
第8章第三方庫211
本章學習目標211
8.1第三方庫概述211
8.1.1第三方庫簡介211
8.1.2常用的第三方庫211
8.2第三方庫的管理方法213
8.2.1pip簡介213
8.2.2安裝第三方庫213
8.2.3檢查、升級、卸載、查看第三方庫216
8.3案例81: 利用pyinstaller庫打包繪制苯環的源程序217
8.3.1第三方庫2: pyinstaller庫的使用方法218
8.3.2利用pyinstaller庫打包繪制苯環的源程序218
8.4貫通性案例(八): 藥品銷售數據統計結果可視化219
8.4.1第三方庫3: matplotlib.pyplot庫的使用方法220
8.4.2利用pyplot繪制藥品日銷售金額折線圖220
8.4.3利用pyplot繪制Top20明星藥銷售數量柱形圖222
8.4.4利用pyplot繪制Top20明星藥銷售數量南丁格爾玫瑰圖224
8.5案例82: 繪制藥學院校學生核心素養詞雲圖227
8.5.1第三方庫4: wordcloud庫的使用方法227
8.5.2繪制藥學院校學生核心素養詞雲圖的算法228
8.5.3繪制藥學院校學生核心素養詞雲圖的程序228
8.6貫通性案例(九): 利用機器學習方法預測藥品的銷售金額230
8.6.1時間序列簡介230
8.6.2第三方庫5: darts庫的使用方法232
8.6.3預測未來一周藥品銷售金額的算法233
8.6.4預測未來一周藥品銷售金額的程序233
8.7貫通性案例(十): 利用深度學習方法預測藥品的銷售金額235
8.7.1時間序列數據的格式轉換235
8.7.2深度學習簡介237
8.7.3第三方庫6: PyTorch庫的使用方法237
8.7.4利用LSTM預測未來一周藥品銷售金額的算法239
8.7.5利用LSTM預測未來一周藥品銷售金額的程序240
小結244
第3篇Python實戰醫藥數據處理專題篇
第9章藥學信息處理247
本章學習目標247
9.1案例91: 數據採集——採集PubChem網站的藥物結構數據247
9.1.1藥物結構數據247
9.1.2第三方庫7: selenium庫的使用方法248
9.1.3採集PubChem網站藥物結構數據的方法251
9.1.4採集Pubchem網站藥物結構數據的爬蟲程序253
9.2案例92: 特徵計算——計算屠呦呦兩個諾貝爾獎藥物的相似度256
9.2.1藥物相似度256
9.2.2Anaconda平臺257
9.2.3第三方庫8: rdkit庫的使用方法258
9.2.4計算屠呦呦兩個諾貝爾獎藥物的相似度的算法259
9.2.5計算屠呦呦兩個諾貝爾獎藥物的相似度的程序259
9.3案例93: 機器學習——利用三種算法預測化合物的水溶性263
9.3.1利用機器學習方法預測化合物性質263
9.3.2第三方庫9: NumPy庫的使用方法263
9.3.3第三方庫10: sklearn庫的使用方法268
9.3.4利用三種機器學習方法預測化合物水溶性的算法271
9.3.5利用三種機器學習方法預測化合物水溶性的程序271
9.4案例94: 初篩靶點——利用聚類熱圖分析肺癌基因表達數據275
9.4.1聚類熱圖分析基因表達數據簡介275
9.4.2第三方庫11: pandas庫的使用方法276
9.4.3第三方庫12: seaborn庫的使用方法280
9.4.4聚類熱圖分析肺癌(腺瘤和腺癌型)基因表達數據的算法281
9.4.5聚類熱圖分析肺癌(腺瘤和腺癌型)基因表達數據的程序281
小結285
第10章醫學信息處理286
本章學習目標286
10.1案例101: 基於隨機森林算法識別潛在心臟病患者286
10.1.1心率變異信號處理簡介286
10.1.2基於隨機森林識別潛在心臟病患者算法288
10.1.3基於隨機森林識別潛在心臟病患者程序292
10.2案例102: 基於捲積神經網絡識別黑色素瘤295
10.2.1神經網絡簡介296
10.2.2第三方庫13: keras的使用方法297
10.2.3捲積神經網絡簡介300
10.2.4黑色素瘤圖像識別算法305
10.2.5黑色素瘤圖像識別程序310
10.3案例103: 基於自然語言處理技術的電子病歷實體識別313
10.3.1自然語言處理技術簡介313
10.3.2使用自然語言處理技術進行文本分類簡單示例316
10.3.3中文電子病歷命名實體識別算法318
10.3.4中文電子病歷命名實體識別程序324
小結328
參考文獻329