本書從數(shù)據(jù)科學的角度,講解了Python和R的語言特性以及各自的優(yōu)缺點,介紹了包括包、框架和工作流在內(nèi)的開源生態(tài)系統(tǒng),分析了Python和R分別適用于哪些業(yè)務場景,并通過真實的案例演示如何在單個工作流中集成Python與R,使兩種語言充分發(fā)揮優(yōu)勢,改善業(yè)務應用的效果。還提供了Python和R的對照翻譯,幫助讀者在兩種語言間快速切換。
里克.J.斯卡韋塔(RickJ.Scavetta)自2012年以來,一直擔任著獨立研討會的培訓師、自由職業(yè)數(shù)據(jù)科學家和機構(gòu)聯(lián)合創(chuàng)始人的角色。作為Scavetta Academy運營人員,與德國的主要研究機構(gòu)也有著密切且經(jīng)常性的往來。自2016年以來,他發(fā)布在DataCamp 上的在線課程已被超過200,000名學生學習,同時還為O'Reilly和Manning的高級數(shù)據(jù)科學課程做出了貢獻。
博揚.安格洛夫(Boyan Angelov)是一位數(shù)據(jù)科學戰(zhàn)略家和顧問,在各種學術(shù)和行業(yè)環(huán)境中擁有十余年的經(jīng)驗,研究涵蓋的主題包括生物信息學、臨床試驗、人力資源技術(shù)和管理咨詢。他還是XAI領(lǐng)域開源科學項目的貢獻者,并定期在各種學術(shù)會議和社區(qū)聚會上發(fā)言。
前言 xiii
第I部分 探索新的語言
第 1章 概述 3
1.1 R的起源 3
1.2 Python的起源 4
1.3 語言戰(zhàn)爭的開端 5
1.4 數(shù)據(jù)科學主導權(quán)之戰(zhàn) 6
1.5 合作與社區(qū)建設(shè)的融合 8
1.6 Z后的想法 8
第II部分 兩種編程語言I:新學習一門語言
第 2章 針對Python用戶的R 13
2.1 啟動和運行R 13
2.2 項目和第三方庫 15
2.3 Tibbles的勝利 20
2.4 關(guān)于數(shù)據(jù)類型和數(shù)據(jù)探索 23
2.5 關(guān)于命名(內(nèi)部) 25
2.6 列表 27
2.7 關(guān)于因子 29
2.8 如何查找 30
2.9 重復迭代 37
2.10 Z后的想法 38
第3章 針對R用戶的Python 40
3.1 版本和構(gòu)建 41
3.2 標準工具 42
3.3 虛擬環(huán)境 46
3.4 安裝第三方庫 50
3.5 筆記本 52
3.6 從編程語言角度對比Python和R 53
3.7 導入數(shù)據(jù)集 55
3.8 檢查數(shù)據(jù) 55
3.9 數(shù)據(jù)結(jié)構(gòu)和描述性統(tǒng)計 57
3.10 數(shù)據(jù)結(jié)構(gòu):回歸基礎(chǔ) 58
3.11 索引和邏輯表達式 60
3.12 繪圖 61
3.13 推理統(tǒng)計 61
3.14 Z后的想法 62
第III部分 兩種編程語言II:現(xiàn)代的環(huán)境
第4章 數(shù)據(jù)格式環(huán)境 65
4.1 外部第三方庫與基礎(chǔ)庫 67
4.2 圖像數(shù)據(jù) 69
4.3 文本數(shù)據(jù) 74
4.4 時間序列數(shù)據(jù) 77
4.4.1 基礎(chǔ)R 77
4.4.2 Prophet第三方庫 79
4.5 空間數(shù)據(jù) 80
4.6 Z后的想法 82
第5章 工作流程環(huán)境 83
5.1 定義工作流程 83
5.2 探索式數(shù)據(jù)分析 85
5.2.1 統(tǒng)計可視化 85
5.2.2 交互可視化 88
5.3 機器學習 89
5.4 數(shù)據(jù)工程 93
5.5 報表 97
5.5.1 靜態(tài)報表 97
5.5.2 互動式報表 98
5.6 Z后的想法 101
第IV部分 兩種編程語言III:學會協(xié)同
第6章 協(xié)同使用兩種語言 105
6.1 虛擬的互操作性 105
6.2 互操作性 107
6.3 深入互操作性 112
6.3.1 在R Markdown文檔中R和Python之間傳遞對象 112
6.3.2 在R Markdown文檔中調(diào)用Python 113
6.3.3 使用來源命令調(diào)用Python 114
6.3.4 使用REPL調(diào)用Python 115
6.3.5 在交互式文檔中使用動態(tài)輸入調(diào)用Python 115
6.4 Z后的想法 117
第7章 兩種編程語言數(shù)據(jù)科學案例研究 118
7.1 24年188萬場野火 118
7.2 設(shè)置和導入數(shù)據(jù) 121
7.3 EDA和數(shù)據(jù)可視化 122
7.4 機器學習 126
7.4.1 設(shè)置Python環(huán)境 126
7.4.2 特征工程 127
7.4.3 模型訓練 128
7.5 推理和用戶界面 129
7.6 Z后的想法 131
附錄 Python-R雙語詞典 133
第三方庫管理 133
賦值運算符 134
類型 136
數(shù)學運算符 137
屬性 137
關(guān)鍵字 138
函數(shù)和方法 138
編碼風格和命名約定 139
數(shù)據(jù)存儲對象類比 140
數(shù)據(jù)幀 142
邏輯表達式 145
索引 147
關(guān)于作者 152
關(guān)于封面 152