發表於2024-11-29
《圖靈程序設計叢書:學習R》講解如何使用R語言及其軟件環境分析數據,即使沒有編程經驗也能看懂。通過這本實用教程,你可以輕鬆掌握如何使用必要的R工具來分析數據,同時掌握相關數據類型和通用的編程概念。
《圖靈程序設計叢書:學習R》後半部分會講到數據分析的各種實際應用,涵蓋導入數據和發布結果。另外,值得一提的是,本書每一章都會結閤所講內容提供精心編製的小測試和練習題,需要編寫R代碼完成,從而鞏固所學的知識。
《圖靈程序設計叢書:學習R》分為上下兩部分,旨在指導你如何使用R,並提供練習的機會。上半部分主要介紹R的技術細節和使用技巧。每章都簡要介紹瞭一組不同的數據類型(例如第4章介紹嚮量、矩陣和數組)或概念(例如第8章介紹分支和循環)。下半部分更側重實踐,展示瞭從輸入數據到發布結果這一標準的數據分析流程。
即使你沒有任何編程基礎,也能順利閱讀《學習R》。
Richard Cotton,是一位通曉化學安全及健康的數據科學傢,開發過很多能讓非專業用戶訪問統計模型的工具。他開發瞭很多R包,如assertive(用於檢查變量的狀態)和sig(用於確保功能具有閤理的API)。他也是The Damned Liars公司的統計學顧問。
“R圖書大傢庭迎來瞭一位清新、不落俗套、風趣幽默的新成員。閱讀本書是十足的享受,令我大開眼界。”
——John Verzani,紐約州立大學/斯坦頓大學
“這本書讀起來感覺棒極瞭,示例完整清晰,內容通俗易懂,是目前市麵上介紹R核心組件優秀的圖書之一。”
——Rebecca Smith,TDX公司分析經理
“本書正是你夢寐以求的R圖書!不要隻看封麵,直接翻開書看內容吧。”
——JD Long,CerebralMastication.com資深博主
譯者序 XII
前言 XIII
第一部分 R語言
第1章 簡介 2
1.1 本章目標 2
1.2 R是什麼 2
1.3 安裝R 3
1.4 選擇一個IDE 4
1.4.1 Emacs+ESS 4
1.4.2 Eclipse/Architect 4
1.4.3 RStudio 5
1.4.4 Revolution-R 5
1.4.5 Live-R 5
1.4.6 其他IDE和編輯器 6
1.5 你的第一個程序 6
1.6 如何從R中獲得幫助 7
1.7 安裝其他相關軟件 9
1.8 小結 9
1.9 知識測試:問題 10
1.10 知識測試:練習 10
第2章 科學計算器 11
2.1 本章目標 11
2.2 數學運算符和嚮量 11
2.3 變量賦值 15
2.4 特殊數字 17
2.5 邏輯嚮量 18
2.6 小結 20
2.7 知識測試:問題 20
2.8 知識測試:練習 20
第3章 檢查變量和工作區 22
3.1 本章目標 22
3.2 類 22
3.3 不同類型的數字 23
3.4 其他通用類 24
3.5 檢查和更改類 26
3.6 檢查變量 29
3.7 工作區 32
3.8 小結 33
3.9 知識測試:問題 33
3.10 知識測試:練習 34
第4章 嚮量、矩陣和數組 35
4.1 本章目標 35
4.2 嚮量 35
4.2.1 序列 37
4.2.2 長度 38
4.2.3 命名 39
4.2.4 索引嚮量 39
4.2.5 嚮量循環和重復 41
4.3 矩陣和數組 43
4.3.1 創建數組和矩陣 43
4.3.2 行、列和維度 45
4.3.3 行名、列名和維度名 46
4.3.4 索引數組 47
4.3.5 閤並矩陣 47
4.3.6 數組算術 48
4.4 小結 50
4.5 知識測試:問題 50
4.6 知識測試:練習 51
第5章 列錶和數據框 52
5.1 本章目標 52
5.2 列錶 52
5.2.1 創建列錶 52
5.2.2 原子變量和遞歸變量 54
5.2.3 列錶的維度和算術運算 55
5.2.4 索引列錶 56
5.2.5 嚮量和列錶之間的轉換 58
5.2.6 組閤列錶 60
5.3 NULL 61
5.4 成對列錶 64
5.5 數據框 65
5.5.1 創建數據框 65
5.5.2 索引數據框 68
5.5.3 基本數據框操作 69
5.6 小結 71
5.7 知識測試:問題 71
5.8 知識測試:練習 72
第6章 環境和函數 73
6.1 本章目標 73
6.2 環境 73
6.3 函數 76
6.3.1 創建和調用函數 76
6.3.2 嚮其他函數傳遞和接收函數 80
6.3.3 變量的作用域 82
6.4 小結 84
6.5 知識測試:問題 84
6.6 知識測試:練習 84
第7章 字符串和因子 86
7.1 本章目標 86
7.2 字符串 86
7.2.1 創建和打印字符串 87
7.2.2 格式化數字 88
7.2.3 特殊字符 90
7.2.4 更改大小寫 91
7.2.5 截取字符串 91
7.2.6 分割字符串 92
7.2.7 文件路徑 93
7.3 因子 94
7.3.1 創建因子 94
7.3.2 更改因子水平 96
7.3.3 去掉因子水平 96
7.3.4 有序因子 97
7.3.5 將連續變量轉換為類彆 98
7.3.6 將類彆變量轉換為連續變量 99
7.3.7 生成因子水平 100
7.3.8 閤並因子 100
7.4 小結 101
7.5 知識測試:問題 101
7.6 知識測試:練習 101
第8章 流程控製和循環 103
8.1 本章目標 103
8.2 流程控製 103
8.2.1 if和else 103
8.2.2 矢量化的if 105
8.2.3 多個分支 106
8.3 循環 108
8.3.1 重復循環 108
8.3.2 while循環 110
8.3.3 for循環 111
8.4 小結 113
8.5 知識測試:問題 113
8.6 知識測試:練習 113
第9章 高級循環 115
9.1 本章目標 115
9.2 replication 115
9.3 遍曆列錶 116
9.4 遍曆數組 122
9.5 多個輸入的應用函數 124
9.6 拆分-應用-閤並(Split-Apply-Combine) 126
9.7 plyr包 127
9.8 小結 130
9.9 知識測驗:問題 130
9.10 知識測試:練習 131
第10章 包 133
10.1 本章目標 133
10.2 加載包 133
10.2.1 搜索路徑 135
10.2.2 庫和已安裝的包 136
10.3 安裝包 137
10.4 維護包 139
10.5 小結 139
10.6 知識測試:問題 140
10.7 知識測試:練習 140
第11章 日期和時間 141
11.1 本章目標 141
11.2 日期和時間類 141
11.2.1 POSIX日期和時間 142
11.2.2 Date類 143
11.2.3 其他日期類 144
11.3 日期與字符串的相互轉換 144
11.3.1 解析日期 144
11.3.2 格式化日期 145
11.4 時區 145
11.5 日期和時間的算術運算 147
11.6 lubridate 149
11.7 小結 153
11.8 知識測試:問題 153
11.9 知識測試:練習 153
第二部分 數據分析工作流
第12章 獲取數據 156
12.1 本章目標 156
12.2 內置的數據集 156
12.3 讀取文本文件 157
12.3.1 CSV和製錶符分隔(Tab-Delimited)文件 157
12.3.2 非結構化文本文件 161
12.3.3 XML和HTML文件 161
12.3.4 JSON和YAML文件 163
12.4 讀取二進製文件 165
12.4.1 讀取Excel文件 165
12.4.2 讀取SAS、Stata、SPSS和MATLAB文件 167
12.4.3 讀取其他文件類型 167
12.5 Web數據 168
12.5.1 擁有API的網站 168
12.5.2 抓取網頁 169
12.6 訪問數據庫 171
12.7 小結 174
12.8 知識測試:問題 174
12.9 知識測試:練習 174
第13章 數據清理和轉換 175
13.1 本章目標 175
13.2 清理字符串 175
13.3 操作數據框 180
13.3.1 添加和替換列 180
13.3.2 處理缺失值 181
13.3.3 在寬和長錶格之間進行轉換 182
13.3.4 使用SQL 183
13.4 排序 184
13.5 函數式編程 185
13.6 小結 188
13.7 知識測試:問題 188
13.8 知識測試:練習 189
第14章 探索和可視化 190
14.1 本章目標 190
14.2 匯總統計 190
14.3 三種繪圖係統 194
14.4 散點圖 195
14.4.1 第一種方法:base繪圖法 195
14.4.2 第二種方法:lattice圖形係統 200
14.4.3 第三種方法:ggplot2圖形係統 207
14.5 綫圖 212
14.6 直方圖 220
14.7 箱綫圖 232
14.8 條形圖 236
14.9 其他的繪圖包和係統 242
14.10 小結 243
14.11 知識測試:問題 243
14.12 知識測試:練習 244
第15章 分布與建模 245
15.1 本章目標 245
15.2 隨機數 246
15.2.1 示例函數 246
15.2.2 從分布中抽樣 247
15.3 分布 248
15.4 公式 248
15.5 第一個模型:綫性迴歸 250
15.5.1 比較和更新模型 252
15.5.2 繪圖和模型檢查 257
15.6 其他模型類型 261
15.7 小結 262
15.8 知識測試:問題 263
15.9 知識測試:練習 263
第16章 程序設計 264
16.1 本章目標 264
16.2 信息、警告和錯誤 264
16.3 錯誤處理 267
16.4 調試 270
16.5 測試 273
16.5.1 RUnit 273
16.5.2 testthat 276
16.6 魔法 277
16.6.1 將字符串轉換成代碼 277
16.6.2 把代碼轉換成字符串 279
16.7 麵嚮對象編程 280
16.7.1 S3類 281
16.7.2 引用類 282
16.8 小結 287
16.9 知識測試:問題 287
16.10 知識測試:練習 288
第17章 製作程序包 289
17.1 本章目標 289
17.2 為什麼要創建軟件包 289
17.3 先決條件 289
17.4 包目錄結構 290
17.5 你的第一個包 291
17.6 為包撰寫文檔 293
17.7 檢查和構建包 296
17.8 包的維護 297
17.9 小結 298
17.10 知識測試:問題 299
17.11 知識測試:練習 299
第三部分 附錄
附錄A 變量的屬性 302
附錄B R中其他可做的事情 305
附錄C 問題答案 307
附錄D 練習答案 315
參考文獻 339
關於封麵 341
R 是一種編程語言,也是用於數據分析和統計的軟件環境。它是一個GNU 項目,這意味著它是自由的開源軟件。它正在以指數級的速度不斷成長——普遍認為,它的用戶人數可能超過瞭100 萬,它有4000 多個由開發社區貢獻的附件包,而且每年以約25% 的速度增加。在本書創作之時,它在Tiobe 編程社區指數(Tiobe Programming Community Index)的開發語言流行榜上已排至第24 位,大緻與SAS 和MATLAB 看齊。
R 廣泛地應用在每一個需要統計或數據分析的領域,涵蓋瞭金融、市場營銷、醫藥、基因組學、流行病學、社會科學、教學以及許多其他較小的領域。
關於本書
因為R 主要用於統計分析,所以很多關於R 的書都在指導你如何計算統計或模型數據集。然而,這些書忽視瞭數據分析應用的實際情況。事實上,除非你做的是尖端研究,否則你所用到的統計技術往往隻需用於常規任務,而且你的模型可能也不大。完整的數據分析流程更像是這樣:
(1) 取得一些數據;
(2) 清理數據;
(3) 探索和可視化數據;
(4) 數據建模並做齣預測;
(5) 展示或發布你的結果。
當然,每個階段都可能碰到一些有趣的問題,以至於你需要更多的數據,或者要以不同的方式處理現有數據,這會使你的工作倒退一步。工作流是可以迭代的,但每個步驟都不可或缺。
本書的第一部分會從頭開始教你R——你不需要任何編程語言的經驗。實際上,雖然完全沒有編程經驗也無妨,但有一些基本的編程知識會更好。例如,本書介紹瞭如何注釋代碼以及編寫for 循環,但沒有作更詳細的解釋。因此,如果你想要找本真正的編程入門課本,那麼Jason R。 Briggs 寫的Python for Kids 非常閤適!
本書的第二部分將展示R 語言的完整數據分析流程,這裏需要一些基本的統計知識。例如,你應該瞭解平均值和標準差等術語,以及什麼是條形圖(bar chart)。
本書最後將介紹R 的一些高級主題,例如麵嚮對象編程和包的創建。Garrett Grolem 的Data Analysis with R 將會在本書的基礎上深入探討數據分析流程。
圖靈程序設計叢書:學習R 下載 mobi pdf epub txt 電子書 格式 2024
圖靈程序設計叢書:學習R 下載 mobi epub pdf 電子書非常不錯的R語言入門書籍,適閤沒有編程基礎的人學習。
評分幫同事買的,沒看哎,
評分還行 概括性比較強 但其實我隻是想看繪圖那部分
評分圖靈程序設計叢書:學習R
評分商品很好,很實用。比較好用。
評分這是正正常常,簡簡單單,清清楚楚,明明白白,可以使用的一本書
評分書很好 送貨及時
評分書很好 送貨及時
評分可以,python的另一條路
圖靈程序設計叢書:學習R mobi epub pdf txt 電子書 格式下載 2024