關(guān)于我們
書單推薦
新書推薦
|
數(shù)據(jù)分析與預(yù)測(cè)算法:基于R語言 [美]拉斐爾·A. 伊里薩里 讀者對(duì)象:數(shù)據(jù)科學(xué)方向的學(xué)生及從業(yè)人員
本書介紹可以幫助讀者處理真實(shí)數(shù)據(jù)分析挑戰(zhàn)的概念和技能。它涵蓋了概率論、統(tǒng)計(jì)推斷、線性回歸和機(jī)器學(xué)習(xí)等概念。它還幫助讀者提升如下技能:R編程、數(shù)據(jù)清洗、數(shù)據(jù)可視化、預(yù)測(cè)算法構(gòu)建、使用UNIX/Linux shell組織文件、使用Git和GitHub進(jìn)行版本控制以及可復(fù)制的文檔準(zhǔn)備。全書分為六個(gè)部分,分別為R、數(shù)據(jù)可視化、統(tǒng)計(jì)與R、數(shù)據(jù)清洗、機(jī)器學(xué)習(xí)和生產(chǎn)力工具。
本書介紹的概念和技能可以幫助你解決現(xiàn)實(shí)世界的數(shù)據(jù)分析挑戰(zhàn)。它涵蓋概率、統(tǒng)計(jì)推斷、線性回歸和機(jī)器學(xué)習(xí)等概念。它還可以幫助你培養(yǎng)諸如R編程、數(shù)據(jù)整理、數(shù)據(jù)可視化、預(yù)測(cè)算法構(gòu)建、使用Unix/Linux框架(shell)組織文件、使用Git和GitHub進(jìn)行版本控制,以及可復(fù)現(xiàn)文檔準(zhǔn)備等技能。 作者通過案例研究,真實(shí)地模仿了數(shù)據(jù)科學(xué)家的經(jīng)驗(yàn)。他首先提出具體的問題,然后通過數(shù)據(jù)分析來回答這些問題,因此,概念的介紹是在回答問題的過程中進(jìn)行的。涉及的案例研究數(shù)據(jù)包括:美國各州的槍殺率、學(xué)生報(bào)告的身高、世界衛(wèi)生和經(jīng)濟(jì)趨勢(shì)、疫苗對(duì)傳染病率的影響、2007—2008年的金融危機(jī)、美國總統(tǒng)選舉預(yù)測(cè)、組建棒球隊(duì)、手寫數(shù)字的圖像處理和電影推薦系統(tǒng)等相關(guān)數(shù)據(jù)。 本書可用于數(shù)據(jù)科學(xué)基礎(chǔ)課。閱讀本書不需要具備R語言的知識(shí),盡管有一些編程經(jīng)驗(yàn)可能更有幫助。
Preface 前 言
工業(yè)界、學(xué)術(shù)界和政府對(duì)熟練的數(shù)據(jù)科學(xué)從業(yè)人員的需求正在迅速增長。本書介紹的概念和技能可以幫助讀者解決現(xiàn)實(shí)世界的數(shù)據(jù)分析問題。本書涵蓋了概率、統(tǒng)計(jì)推斷、線性回歸和機(jī)器學(xué)習(xí)等概念,還可以幫助讀者培養(yǎng)一些技能,如R編程、使用dplyr進(jìn)行數(shù)據(jù)整理、使用ggplot2進(jìn)行數(shù)據(jù)可視化、使用caret包構(gòu)建算法、使用UNIX/Linux框架組織文件、使用Git和GitHub進(jìn)行版本控制,以及使用knitr和R markdown進(jìn)行可復(fù)現(xiàn)的文檔準(zhǔn)備。本書主要分為六個(gè)部分,每個(gè)部分都有若干章,可以適用于一個(gè)課程。 案例研究 啟發(fā)性案例研究貫穿全書。在每個(gè)案例研究中,我們都試圖真實(shí)地模仿數(shù)據(jù)科學(xué)家的經(jīng)歷。對(duì)于所涵蓋的每個(gè)概念,我們從提出具體問題開始,并通過數(shù)據(jù)分析回答這些問題。我們將所學(xué)習(xí)的概念作為回答問題的手段。本書中的案例研究包括: 案例研究概念 美國各州槍殺率R基礎(chǔ)知識(shí) 描述學(xué)生的身高統(tǒng)計(jì)匯總 世界衛(wèi)生和經(jīng)濟(jì)趨勢(shì)數(shù)據(jù)可視化 疫苗對(duì)傳染病病發(fā)率的影響數(shù)據(jù)可視化 2007—2008年金融危機(jī)概率 美國總統(tǒng)選舉預(yù)測(cè)統(tǒng)計(jì)推斷 學(xué)生報(bào)告的身高數(shù)據(jù)整理 《點(diǎn)球成金》線性回歸 MNIST:手寫數(shù)字圖像處理機(jī)器學(xué)習(xí) 電影推薦系統(tǒng)機(jī)器學(xué)習(xí) 本書讀者對(duì)象 本書適合作為數(shù)據(jù)科學(xué)方向第一門課程的教材。雖然有一些編程經(jīng)驗(yàn)可能會(huì)有所幫助,但不需要有R語言的知識(shí)背景。本書對(duì)用于回答案例研究中的問題的統(tǒng)計(jì)概念僅作簡要介紹,因此,要深入理解這些概念,建議配備概率與統(tǒng)計(jì)教材。如果你閱讀并理解了所有章節(jié)并完成了所有練習(xí),你將能夠很好地完成基本數(shù)據(jù)分析任務(wù),并且為學(xué)習(xí)成為專家所需的更高級(jí)的概念和技能做好了準(zhǔn)備。 本書包含的主題 我們首先復(fù)習(xí)R基礎(chǔ)知識(shí)和tidyverse。R的知識(shí)貫穿全書,但第一部分主要介紹持續(xù)學(xué)習(xí)所需的構(gòu)建塊。 信息數(shù)據(jù)集和軟件工具的日益普及,使得許多領(lǐng)域?qū)?shù)據(jù)可視化的依賴性增加。第二部分將演示如何使用ggplot2生成圖形,并描述重要的數(shù)據(jù)可視化原則。 第三部分基于R,通過概率、推斷和回歸回答案例研究中的問題,以說明統(tǒng)計(jì)學(xué)在數(shù)據(jù)分析中的重要性。 第四部分通過若干示例來讓讀者熟悉數(shù)據(jù)整理。我們將學(xué)習(xí)的具體技能包括網(wǎng)頁抓取、正則表達(dá)式使用、連接和重塑數(shù)據(jù)表。我們使用tidyverse工具來完成這些工作。 第五部分通過展示一些挑戰(zhàn)引出機(jī)器學(xué)習(xí)。我們將學(xué)習(xí)使用caret包來構(gòu)建包括k最近鄰和隨機(jī)森林在內(nèi)的預(yù)測(cè)算法。 第六部分簡要介紹在數(shù)據(jù)科學(xué)項(xiàng)目中日常使用的生產(chǎn)力工具:RStudio、UNIX/Linux shell、Git和GitHub,以及knitr和R markdown。 本書未包含的主題 本書的重點(diǎn)是數(shù)據(jù)科學(xué)的數(shù)據(jù)分析方面,因此,不涉及與數(shù)據(jù)管理或工程相關(guān)的內(nèi)容。盡管R編程是本書的一個(gè)重要部分,但本書并不教授更高級(jí)的計(jì)算機(jī)科學(xué)主題,如數(shù)據(jù)結(jié)構(gòu)、優(yōu)化和算法理論。同理,本書也不討論諸如Web服務(wù)、交互式圖形、并行計(jì)算和數(shù)據(jù)流處理等主題。統(tǒng)計(jì)概念主要作為解決問題的工具提出,本書并不包括其深入的理論描述。 本書配套 本書英文版基于HarvardX數(shù)據(jù)科學(xué)系列的課堂筆記。本書英文版在線版本的鏈接是https://rafalab.github.io/dsbook/。用于生成這本書的R markdown代碼可以在GitHub上獲得。注意,用于本書的圖形可以使用dslabs包的ds_theme_set()函數(shù)重新創(chuàng)建。 本書通過Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International(CC BY-NC-SA 4.0)授權(quán)許可。 Acknowledgments 致 謝 本書獻(xiàn)給所有參與構(gòu)建和維護(hù)我們?cè)诒緯惺褂玫腞以及R包的人。特別感謝R、tidyverse和caret包的開發(fā)人員及維護(hù)人員。 特別感謝tidyverse專家David Robinson和Amy Gill的數(shù)十條點(diǎn)評(píng)、編輯意見及建議,也非常感謝曾兩次擔(dān)任我數(shù)據(jù)科學(xué)課指導(dǎo)老師的Stephanie Hicks,以及耐心地回答了我很多關(guān)于bookdown的問題的Yihui Xie。還要感謝Karl Broman,我從他那里借鑒了數(shù)據(jù)可視化和生產(chǎn)力工具部分的想法,也要感謝Hector Corrada-Bravo在教授機(jī)器學(xué)習(xí)課程的方法方面的建議。感謝Peter Aldhous,我從他那里借鑒了數(shù)據(jù)可視化原則部分的想法,感謝Jenny Bryan編寫了Happy Git and GitHub for the useR,這對(duì)本書第37章的編寫很有啟發(fā)。感謝Alyssa Frazee提出的家庭作業(yè)問題,該問題成就了本書的推薦系統(tǒng)章節(jié)。感謝Amanda Cox提供的紐約高中會(huì)考數(shù)據(jù)。同時(shí),也要感謝Jeff Leek、Roger Peng和Brian Caffo,本書的章節(jié)劃分受他們的課程啟發(fā)。還要感謝Garrett Grolemund和Hadley Wickham開放了R for Data Science一書的bookdown代碼。最后,感謝Alex Nones在各個(gè)階段對(duì)本書手稿的校對(duì)。 本書的構(gòu)思開始于15年前,是從幾門應(yīng)用統(tǒng)計(jì)學(xué)課程的教學(xué)構(gòu)思而來的。多年來,與我一起工作的助教們間接對(duì)本書做出了重要的貢獻(xiàn)。本課程的最新版本是由Heather Sternshein和Zzofia Gajdos協(xié)助的HarvardX系列課程,感謝他們的貢獻(xiàn)。也要感謝所有的學(xué)生,他們的問題和意見幫助我們改進(jìn)了本書。課程部分經(jīng)費(fèi)由
拉斐爾·A·伊里薩里(Rafael A. Irizarry)是達(dá)納-法伯癌癥研究所(Dana-Farber Cancer Institute)的數(shù)據(jù)科學(xué)教授、哈佛大學(xué)(Harvard)生物統(tǒng)計(jì)學(xué)教授、美國統(tǒng)計(jì)協(xié)會(huì)(American Statistical Association)會(huì)員。伊里薩里博士是一名應(yīng)用統(tǒng)計(jì)學(xué)家,在過去的20年里,他在不同的領(lǐng)域工作,包括基因組學(xué)、聲音工程和公共衛(wèi)生。他將數(shù)據(jù)分析的解決方案作為開源軟件發(fā)布,這些工具被廣泛下載和使用。伊里薩里教授還在哈佛大學(xué)開發(fā)并教授了幾門數(shù)據(jù)科學(xué)課程,以及一些受歡迎的在線課程。
目 錄 Contents
前言 致謝 第1章 R和RStudio入門1 1.1 為什么是R1 1.2 R控制臺(tái)2 1.3 腳本2 1.4 RStudio3 1.4.1 窗格3 1.4.2 按鍵綁定4 1.4.3 編輯腳本時(shí)運(yùn)行命令5 1.4.4 更改全局選項(xiàng)7 1.5 安裝R包8 第一部分 R語言 第2章 R基礎(chǔ)知識(shí)10 2.1 案例研究:美國槍殺人數(shù)10 2.2 非;A(chǔ)的知識(shí)11 2.2.1 對(duì)象11 2.2.2 工作區(qū)12 2.2.3 函數(shù)13 2.2.4 其他預(yù)構(gòu)建對(duì)象14 2.2.5 變量名15 2.2.6 保存工作區(qū)15 2.2.7 啟發(fā)性腳本15 2.2.8 注釋代碼16 2.3 練習(xí)16 2.4 數(shù)據(jù)類型17 2.4.1 數(shù)據(jù)幀17 2.4.2 檢查對(duì)象17 2.4.3 訪問器:$18 2.4.4 向量:數(shù)值型、字符型和 邏輯型18 2.4.5 因子19 2.4.6 列表20 2.4.7 矩陣21 2.5 練習(xí)22 2.6 向量23 2.6.1 創(chuàng)建向量23 2.6.2 命名24 2.6.3 序列24 2.6.4 子集25 2.7 強(qiáng)制轉(zhuǎn)換25 2.8 練習(xí)26 2.9 排序27 2.9.1 sort27 2.9.2 order27 2.9.3 max和which.max28 2.9.4 rank29 2.9.5 注意循環(huán)使用29 2.10 練習(xí)29 2.11 向量運(yùn)算30 2.11.1 重新縮放向量31 2.11.2 兩個(gè)向量31 2.12 練習(xí)32 2.13 索引32 2.13.1 邏輯子集32 2.13.2 邏輯運(yùn)算符33 2.13.3 which33 2.13.4 match33 2.13.5 %in%34 2.14 練習(xí)34 2.15 基本圖35 2.15.1 plot 35 2.15.2 hist35 2.15.3 boxplot36 2.15.4 image36 2.16 練習(xí)36 第3章 編程基礎(chǔ)38 3.1 條件表達(dá)式38 3.2 函數(shù)40 3.3 命名空間41 3.4 for循環(huán)42 3.5 向量化和泛函43 3.6 練習(xí)43 第4章 tidyverse45 4.1 tidy數(shù)據(jù)45 4.2 練習(xí)46 4.3 操作數(shù)據(jù)幀47 4.3.1 使用mutate添加列47 4.3.2 使用filter構(gòu)造子集48 4.3.3 使用select選擇列 48 4.4 練習(xí)48 4.5 管道:%>%50 4.6 練習(xí)51 4.7 匯總數(shù)據(jù)51 4.7.1 summarize52 4.7.2 pull53 4.7.3 group_by54 4.8 數(shù)據(jù)幀排序55 4.8.1 嵌套排序55 4.8.2 top_n56 4.9 練習(xí)56 4.10 tibble57 4.10.1 tibble展示效果更好58 4.10.2 tibble的子集仍是tibble58 4.10.3 tibble可以有復(fù)雜的條目59 4.10.4 tibble可以分組59 4.10.5 使用tibble代替data.frame59 4.11 點(diǎn)運(yùn)算符60 4.12 do60 4.13 purrr包62 4.14 tidyverse條件63 4.14.1 case_when63 4.14.2 between63 4.15 練習(xí)64 第5章 導(dǎo)入數(shù)據(jù)65 5.1 路徑和工作目錄66 5.1.1 文件系統(tǒng)66 5.1.2 相對(duì)路徑和完整路徑67 5.1.3 工作目錄67 5.1.4 生成路徑名67 5.1.5 使用路徑復(fù)制文件68 5.2 readr和readxl包68 5.2.1 readr68 5.2.2 readxl69 5.3 練習(xí)70 5.4 下載文件70 5.5 R-base導(dǎo)入函數(shù)71 5.6 文本與二進(jìn)制文件72 5.7 Unicode與ASCII72 5.8 用電子表格組織數(shù)據(jù)73 5.9 練習(xí)74 第二部分 數(shù)據(jù)可視化 第6章 數(shù)據(jù)可視化導(dǎo)論76 第7章 ggplot280 7.1 圖的組件81 7.2 ggplot對(duì)象82 7.3 幾何圖形82 7.4 美學(xué)映射83 7.5 圖層集合84 7.6 全局與局部美學(xué)映射85 7.7 尺度86 7.8 標(biāo)簽和標(biāo)題86 7.9 類別的顏色87 7.10 注釋、形狀和調(diào)整88 7.11 附加組件包89 7.12 綜合90 7.13 用qplot快速繪圖91 7.14 繪圖網(wǎng)格91 7.15 練習(xí)92 第8章 可視化數(shù)據(jù)分布94 8.1 變量類型94 8.2 案例研究:描述學(xué)生的身高95 8.3 分布函數(shù)95 8.4 累積分布函數(shù)96 8.5 直方圖97 8.6 平滑密度圖97 8.6.1 解讀y軸100 8.6.2 密度容許分層100 8.7 練習(xí)101 8.8 正態(tài)分布103 8.9 標(biāo)準(zhǔn)單位104 8.10 分位數(shù)圖105 8.11 百分位數(shù)106 8.12 箱線圖107 8.13 分層法108 8.14 案例研究:描述學(xué)生的 身高(續(xù))108 8.15 練習(xí)109 8.16 ggplot2幾何圖形111 8.16.1 條形圖111 8.16.2 直方圖112 8.16.3 密度圖113 8.16.4 箱線圖113 8.16.5 QQ圖114 8.16.6 圖像114 8.16.7 快速繪圖115 8.17 練習(xí)116 第9章 實(shí)踐中的數(shù)據(jù)可視化118 9.1 案例研究:對(duì)貧困的新見解118 9.2 散點(diǎn)圖120 9.3 分面121 9.3.1 facet_wrap 123 9.3.2 采用固定尺度以更好地 進(jìn)行比較123 9.4 時(shí)間序列圖124 9.5 數(shù)據(jù)轉(zhuǎn)換127 9.5.1 對(duì)數(shù)轉(zhuǎn)換127 9.5.2 使用哪一個(gè)底數(shù)128 9.5.3 轉(zhuǎn)換值還是標(biāo)記尺度129 9.6 可視化多峰分布130 9.7 用箱線圖和脊線圖比較多種分布130 9.7.1 箱線圖131 9.7.2 脊線圖132 9.7.3 示例:1970年和2010年的 收入分布134 9.7.4 訪問計(jì)算變量139 9.7.5 加權(quán)密度142 9.8 生態(tài)謬誤和顯示數(shù)據(jù)的重要性143 9.8.1 邏輯轉(zhuǎn)換143 9.8.2 顯示數(shù)據(jù)144 第10章 數(shù)據(jù)可視化原則145 10.1 使用視覺線索編碼數(shù)據(jù)145 10.2 知道什么時(shí)候包含0148 10.3 不要扭曲數(shù)量150 10.4 按有意義的值對(duì)類別排序150 10.5 顯示數(shù)據(jù)152 10.6 簡單的比較153 10.6.1 使用公共的軸153 10.6.2 垂直對(duì)齊圖可以看到 水平變化,水平對(duì)齊圖 可以看到垂直變化154 10.6.3 考慮數(shù)據(jù)轉(zhuǎn)換155 10.6.4 比較相鄰視覺線索157 10.6.5 使用顏色157 10.7 考慮色盲158 10.8 兩個(gè)變量的圖158 10.8.1 斜率圖158 10.8.2 Bland-Altman圖159 10.9 編碼第三個(gè)變量160 10.10 避免擬三維圖161 10.11 避免使用過多有效數(shù)字162 10.12 了解你的讀者163 10.13 練習(xí)164 10.14 案例研究:疫苗和傳染病167 10.15 練習(xí)170 第11章 魯棒的匯總171 11.1 離群值171 11.2 中值172 11.3 四分位距172 11.4 Tukey對(duì)離群值的定義173 11.5 絕對(duì)中位差173 11.6 練習(xí)174 11.7 案例研究:學(xué)生報(bào)告的身高175 第三部分 R語言統(tǒng)計(jì)學(xué) 第12章 R語言統(tǒng)計(jì)學(xué)導(dǎo)論178 第13章 概率179 13.1 離散概率179 13.1.1 相對(duì)頻率179 13.1.2 符號(hào)180 13.1.3 概率分布180 13.2 分類數(shù)據(jù)的蒙特卡羅模擬180 13.2.1 設(shè)置隨機(jī)種子181 13.2.2 有無放回182 13.3 獨(dú)立性182 13.4 條件概率183 13.5 加法和乘法法則183 13.5.1 乘法法則183 13.5.2 獨(dú)立條件下的乘法法則184 13.5.3 加法法則184 13.6 排列組合184 13.7 示例188 13.7.1 蒙提·霍爾問題188 13.7.2 生日問題189 13.8 無限實(shí)驗(yàn)191 13.9 練習(xí)191 13.10 連續(xù)概率193 13.11 理論連續(xù)分布194 13.11.1 近似理論分布194 13.11.2 概率密度195 13.12 連續(xù)變量的蒙特卡羅模擬196 13.13 連續(xù)分布197 13.14 練習(xí)197 第14章 隨機(jī)變量199 14.1 生成隨機(jī)變量199 14.2 抽樣模型200 14.3 隨機(jī)變量的概率分布201 14.4 分布與概率分布202 14.5 隨機(jī)變量符號(hào)203 14.6 期望值和標(biāo)準(zhǔn)誤差203 14.7 中心極限定理205 14.8 平均值統(tǒng)計(jì)特性206 14.9 大數(shù)定律208 14.10 練習(xí)208 14.11 案例研究:大空頭209 14.11.1 利率解釋與機(jī)會(huì)模型209 14.11.2 大空頭212 14.12 練習(xí)215 第15章 統(tǒng)計(jì)推斷216 15.1 民意調(diào)查216 15.2 總體、樣本、參數(shù)和估計(jì)218 15.2.1 樣本平均值219 15.2.2 參數(shù)220 15.2.3 民意調(diào)查與預(yù)測(cè)220 15.2.4 估計(jì)值的性質(zhì):期望值和 標(biāo)準(zhǔn)誤差220 15.3 練習(xí)221 15.4 實(shí)踐中的中心極限定理222 15.4.1 蒙特卡羅模擬224 15.4.2 差值225 15.4.3 偏差:為什么不進(jìn)行一次 大規(guī)模的民意調(diào)查呢225 15.5 練習(xí)226 15.6 置信區(qū)間227 15.6.1 蒙特卡羅模擬229 15.6.2 正確的語言230 15.7 練習(xí)231 15.8 冪232 15.9 p值232 15.10 聯(lián)合檢驗(yàn)233 15.10.1 女士品茶234 15.10.2 二乘二表234 15.10.3 卡方檢驗(yàn)235 15.10.4 比值比236 15.10.5 比值比的置信區(qū)間237 15.10.6 小計(jì)數(shù)校正237 15.10.7 樣本大,p值小238 15.11 練習(xí)238 第16章 統(tǒng)計(jì)模型239 16.1 民意調(diào)查聚合器240 16.1.1 民意調(diào)查數(shù)據(jù)242 16.1.2 民意調(diào)查機(jī)構(gòu)偏差243 16.2 數(shù)據(jù)驅(qū)動(dòng)模型244 16.3 練習(xí)245 16.4 貝葉斯統(tǒng)計(jì)248 16.5 貝葉斯定理模擬249 16.6 層次模型251 16.7 練習(xí)253 16.8 案例研究:選舉預(yù)測(cè)255 16.8.1 貝葉斯方法255 16.8.2 一般偏差256 16.8.3 模型的數(shù)學(xué)表示256 16.8.4 預(yù)測(cè)選舉團(tuán)259 16.8.5 預(yù)測(cè)263 16.9 練習(xí)264 16.10 t分布266 第17章 回歸268 17.1 案例研究:身高是遺傳的嗎268 17.2 相關(guān)系數(shù)269 17.2.1 樣本相關(guān)系數(shù)是一個(gè) 隨機(jī)變量271 17.2.2 相關(guān)系數(shù)并不總是有用272 17.3 條件期望272 17.4 回歸線274 17.4.1 回歸提高精度275 17.4.2 二元正態(tài)分布(高級(jí))276 17.4.3 可釋方差278 17.4.4 警告:有兩條回歸線278 17.5 練習(xí)279 第18章 線性模型280 18.1 案例研究:《點(diǎn)球成金》280 18.1.1 棒球統(tǒng)計(jì)學(xué)281 18.1.2 棒球基礎(chǔ)知識(shí)282 18.1.3 投球上壘無獎(jiǎng)283 18.1.4 投球上壘還是盜壘284 18.1.5 應(yīng)用于棒球統(tǒng)計(jì)的回歸285 18.2 混雜因素287 18.2.1 通過分層理解混雜因素288 18.2.2 多元回歸291 18.3 最小二乘估計(jì)291 18.3.1 解釋線性模型292 18.3.2 最小二乘估計(jì)292 18.3.3 lm函數(shù)293 18.3.4 LSE是隨機(jī)變量294 18.3.5 預(yù)測(cè)值是隨機(jī)變量295 18.4 練習(xí)296 18.5 tidyverse中的線性回歸297 18.6 練習(xí)301 18.7 案例研究:《點(diǎn)球成金》(續(xù))302 18.7.1 添加薪水和位置信息304 18.7.2 選擇9名球員306 18.8 回歸謬論307 18.9 測(cè)量誤差模型308 18.10 練習(xí)310 第19章 關(guān)聯(lián)關(guān)系并非因果關(guān)系312 19.1 偽相關(guān)312 19.2 離群值314 19.3 顛倒因果315 19.4 混雜因素316 19.4.1 示例:加州大學(xué)伯克利分校的 招生316 19.4.2 混雜解釋圖形317 19.4.3 分層后的平均值318 19.5 辛普森悖論319 19.6 練習(xí)319 第四部分 數(shù)據(jù)整理 第20章 數(shù)據(jù)整理導(dǎo)論322 第21章 重塑數(shù)據(jù)323 21.1 gather函數(shù)323 21.2 spread函數(shù)324 21.3 separate函數(shù)325 21.4 unite函數(shù)327 21.5 練習(xí)328 第22章 連接表330 22.1 連接331 22.1.1 左連接332 22.1.2 右連接332 22.1.3 內(nèi)部連接333 22.1.4 全連接333 22.1.5 半連接333 22.1.6 反連接333 22.2 綁定334 22.2.1 按列綁定334 22.2.2 按行綁定335 22.3 集合運(yùn)算符335 22.3.1 intersect函數(shù)335 22.3.2 union函數(shù)335 22.3.3 setdiff函數(shù)336 22.3.4 setequal函數(shù)336 22.4 練習(xí)337 第23章 網(wǎng)頁抓取338 23.1 HTML339 23.2 rvest包340 23.3 CSS選擇器342 23.4 JSON342 23.5 練習(xí)344 第24章 字符串處理346 24.1 stringr包347 24.2 案例研究:美國槍殺數(shù)據(jù)348 24.3 案例研究:學(xué)生報(bào)告的身高349 24.4 定義字符串時(shí)如何轉(zhuǎn)義351 24.5 正則表達(dá)式353 24.5.1 字符串是正則表達(dá)式353 24.5.2 特殊字符353 24.5.3 字符類354 24.5.4 錨點(diǎn)355 24.5.5 量詞356 24.5.6 空格357 24.5.7 量詞*、?和+357 24.5.8 非檢測(cè)元素358 24.5.9 組358 24.6 使用正則表達(dá)式搜索并替換359 24.7 測(cè)試和改進(jìn)361 24.8 修剪364 24.9 更改字母大小寫364 24.10 案例研究:學(xué)生報(bào)告的 身高(續(xù))365 24.10.1 extract函數(shù)365 24.10.2 整合366 24.11 字符串拆分367 24.12 案例研究:從PDF中提取表369 24.13 重新編碼372 24.14 練習(xí)373 第25章 解析日期和時(shí)間376 25.1 日期數(shù)據(jù)類型376 25.2 lubridate包377 25.3 練習(xí)380 第26章 文本挖掘381 26.1 案例研究:特朗普推文381 26.2 文本作為數(shù)據(jù)383 26.3 情感分析388 26.4 練習(xí)392 第五部分 機(jī)器學(xué)習(xí) 第27章 機(jī)器學(xué)習(xí)導(dǎo)論394 27.1 概念394 27.2 示例396 27.3 練習(xí)397 27.4 評(píng)價(jià)標(biāo)準(zhǔn)397 27.4.1 訓(xùn)練集和測(cè)試集398 27.4.2 總體準(zhǔn)確度398 27.4.3 混淆矩陣400 27.4.4 靈敏度和特異性401 27.4.5 平衡準(zhǔn)確度和評(píng)分402 27.4.6 類別主導(dǎo)優(yōu)勢(shì)在實(shí)踐中的 重要性404 27.4.7 ROC和精度-召回率曲線404 27.4.8 損失函數(shù)406 27.5 練習(xí)407 27.6 條件概率和期望407 27.6.1 條件概率408 27.6.2 條件期望409 27.6.3 條件期望使平方損失 函數(shù)最小409 27.7 練習(xí)410 27.8 案例研究:是2還是7410 第28章 平滑化413 28.1 箱平滑化414 28.2 核函數(shù)416 28.3 局部加權(quán)回歸418 28.3.1 拋物線擬合421 28.3.2 注意默認(rèn)平滑化參數(shù)422 28.4 平滑化和機(jī)器學(xué)習(xí)的聯(lián)系423 28.5 練習(xí)423 第29章 交叉驗(yàn)證425 29.1 k最近鄰法的動(dòng)機(jī)425 29.1.1 過度訓(xùn)練427 29.1.2 過度平滑化428 29.1.3 挑選kNN中的k429 29.2 交叉驗(yàn)證的數(shù)學(xué)描述430 29.3 K折交叉驗(yàn)證431 29.4 練習(xí)433 29.5 自舉法434 29.6 練習(xí)436 第30章 caret包438 30.1 caret的train函數(shù)438 30.2 執(zhí)行交叉驗(yàn)證439 30.3 示例:使用局部加權(quán)回歸 進(jìn)行擬合441 第31章 算法示例443 31.1 線性回歸443 31.2 練習(xí)445 31.3 邏輯回歸446 31.3.1 廣義線性模型448 31.3.2 有不止一個(gè)預(yù)測(cè)因素的 邏輯回歸450 31.4 練習(xí)451 31.5 k最近鄰法451 31.6 練習(xí)452 31.7 生成模型453 31.7.1 樸素貝葉斯模型453 31.7.2 控制類別主導(dǎo)優(yōu)勢(shì)454 31.7.3 二次判別分析455 31.7.4 線性判別分析458 31.7.5 與距離的聯(lián)系458 31.8 案例研究:類別的數(shù)量大于3459 31.9 練習(xí)461 31.10 分類回歸樹462 31.10.1 維數(shù)災(zāi)難462 31.10.2 CART動(dòng)機(jī)463 31.10.3 回歸樹465 31.10.4 分類樹469 31.11 隨機(jī)森林470 31.12 練習(xí)474 第32章 機(jī)器學(xué)習(xí)實(shí)踐476 32.1 預(yù)處理477 32.2 k最近鄰法和隨機(jī)森林478 32.3 變量重要性480 32.4 視覺評(píng)價(jià)480 32.5 集成模型481 32.6 練習(xí)481 第33章 大型數(shù)據(jù)集483 33.1 矩陣代數(shù)483 33.1.1 符號(hào)484 33.1.2 將向量轉(zhuǎn)化為矩陣486 33.1.3 行匯總和列匯總487 33.1.4 apply487 33.1.5 根據(jù)匯總量對(duì)列進(jìn)行過濾488 33.1.6 矩陣索引489 33.1.7 數(shù)據(jù)的二值化490 33.1.8 矩陣的向量化490 33.1.9 矩陣代數(shù)運(yùn)算490 33.2 練習(xí)491 33.3 距離491 33.3.1 歐氏距離491 33.3.2 高維空間中的距離492 33.3.3 歐氏距離舉例492 33.3.4 預(yù)測(cè)因素空間494 33.3.5 預(yù)測(cè)因素之間的距離494 33.4 練習(xí)494 33.5 維數(shù)縮減495 33.5.1 距離的保持495 33.5.2 線性變換(進(jìn)階)497 33.5.3 正交變換(進(jìn)階)498 33.5.4 主成分分析499 33.5.5 鳶尾花示例501 33.5.6 MNIST 示例503 33.6 練習(xí)505 33.7 推薦系統(tǒng)505 33.7.1 movielens 數(shù)據(jù)505 33.7.2 推薦系統(tǒng)是一個(gè)機(jī)器學(xué)習(xí) 挑戰(zhàn)507 33.7.3 損失函數(shù)507 33.7.4 第一個(gè)模型508 33.7.5 電影效應(yīng)建模508 33.7.6 用戶效應(yīng)509 33.8 練習(xí)510 33.9 正則化511 33.9.1 動(dòng)機(jī)511 33.9.2 補(bǔ)償最小二乘法513 33.9.3 懲罰項(xiàng)的選擇515 33.10 練習(xí)517 33.11 矩陣分解518 33.11.1 因子分析520 33.11.2 連接SVD和PCA523 33.12 練習(xí)525 第34章 聚類529 34.1 分層聚類530 34.2 k均值聚類531 34.3 熱點(diǎn)圖531 34.4 特征過濾532 34.5 練習(xí)532 第六部分 生產(chǎn)力工具 第35章 生產(chǎn)力工具導(dǎo)論534 第36章 使用UNIX進(jìn)行組織536 36.1 命名約定536 36.2 終端537 36.3 文件系統(tǒng)537 36.3.1 目錄和子目錄538 36.3.2 主目錄538 36.3.3 工作目錄540 36.3.4 路徑540 36.4 UNIX命令541 36.4.1 ls:列出目錄內(nèi)容541 36.4.2 mkdir和rmdir:目錄的 創(chuàng)建和刪除541 36.4.3 cd:通過更改目錄來 瀏覽文件系統(tǒng)542 36.5 示例543 36.6 其他UNIX命令545 36.6.1 mv:移動(dòng)文件545 36.6.2 cp:復(fù)制文件545 36.6.3 rm:移除文件546 36.6.4 less:查看文件546 36.7 為數(shù)據(jù)科學(xué)項(xiàng)目做準(zhǔn)備546 36.8 UNIX的進(jìn)階內(nèi)容547 36.8.1 參數(shù)547 36.8.2 獲取幫助548 36.8.3 管道548 36.8.4 通配符549 36.8.5 環(huán)境變量549 36.8.6 框架550 36.8.7 可執(zhí)行文件550 36.8.8 權(quán)限和文件類型551 36.8.9 應(yīng)該掌握的命令551 36.8.10 R中的文件管理551 第37章 Git和GitHub552 37.1 為什么要使用Git和GitHub552 37.2 GitHub賬戶553 37.3 GitHub庫554 37.4 Git概述556 37.5 初始化Git目錄559 37.6 在RStudio中使用Git和 GitHub561 第38章 使用RStudio和R markdown的 可復(fù)現(xiàn)項(xiàng)目565 38.1 RStudio項(xiàng)目565 38.2 R markdown569 38.2.1 頭文件570 38.2.2 R代碼塊570 38.2.3 全局選項(xiàng)571 38.2.4 knitr571 38.2.5 更多有關(guān)R markdown的 內(nèi)容572 38.3 組織數(shù)據(jù)科學(xué)項(xiàng)目572 38.3.1 在UNIX中創(chuàng)建目錄572 38.3.2 創(chuàng)建RStudio項(xiàng)目573 38.3.3 編輯R腳本574 38.3.4 用UNIX創(chuàng)建更多的目錄575 38.3.5 添加README文件575 38.3.6 初始化Git目錄575 38.3.7 用RStudio進(jìn)行文件的添加、 提交和推送576
你還可能感興趣
我要評(píng)論
|