|
-- 會員 / 註冊 --
|
|
|
|
R語言入門經典 ( 簡體 字) |
作者:[英] 安迪 尼古拉斯(Andy Nicholls)、理查德 皮尤(Richard Pugh)、艾梅 戈特(Aimee Gott) | 類別:1. -> 程式設計 -> R語言 |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 48724 詢問書籍請說出此書號!【缺書】 NT售價: 495 元 |
出版日:2/1/2018 |
頁數:450 |
光碟數:0 |
|
站長推薦: |
印刷: | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115476296 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:本書作為R語言的學習指南,詳細講解了R語言的基本概念和編程技巧。本書從* 基礎的知識開始,由淺入深地介紹R的基本概念和重要特性,并用大量的示例和圖形進行演示和說明,旨在讓讀者在掌握R語言的同時,能養成良好的編程習慣,寫出專業、高效的代碼。 本書共24章,其內容涵蓋了R語言的社區和環境介紹;R語言的各種數據結構(單模式/多模式數據結構,日期、時間和因子);包括各種常用函數、實用函數和應用函數在內的R語言函數;如何在R中進行文本的導入和導出,如何操控和轉換數據,以及在R中高效處理數據的方法;如何可視化數據(涵蓋了三個基本圖形系統、ggplot2圖形系統和Lattice圖形系統);如何用R構建線性模型、廣義線性模型和非線性模型,以及面向對象的思想;如何進行R代碼提速(包括代碼的性能分析和提速方法);如何構建R包和擴展R包;如何編寫R類,其中會涉及R中的面向對象編程系統(S3、S4、引用類等);如何創建動態報告和如何用Shiny創建網絡應用程序。本書附錄還介紹了R、Rtools和RStudio的具體安裝步驟。 《R語言入門經典》涵蓋了R語言的所有基礎知識,介紹了許多實用的編程技巧,既可作為R語言的入門教材,也可作為一本為尋求拓寬分析工具的專業統計學家、數據科學家、分析師量身打造的學習寶典。本書還可作為對R語言感興趣的讀者和開發人員的參考書籍。
|
目錄:* 1章 R語言社區 1 1.1 R語言簡史 1 1.1.1 S語言的誕生 1 1.1.2 R語言的誕生 2 1.2 R語言社區 3 1.2.1 郵件列表 3 1.2.2 R語言手冊 4 1.2.3 在線資源 4 1.2.4 R語言聯盟 4 1.2.5 用戶活動 5 1.3 R語言的開發 5 1.4 本章小結 6 1.5 本章答疑 6 1.6 課后研習 7 1.7 補充練習 7 * 2章 R語言環境 8 2.1 集成開發環境 8 2.1.1 R GUI 8 2.1.2 RStudio IDE 9 2.1.3 其他開發環境 10 2.2 R語法 10 2.2.1 控制臺 10 2.2.2 腳本 11 2.3 R對象 12 2.3.1 R包 12 2.3.2 搜索路徑 12 2.3.3 列出對象 13 2.3.4 R的工作空間 14 2.4 使用R包 16 2.4.1 查找合適的包 17 2.4.2 安裝R包 17 2.4.3 載入R包 19 2.5 內部幫助 20 2.6 本章小結 21 2.7 本章答疑 21 2.8 課后研習 22 2.9 補充練習 23 第3章 單模式數據結構 24 3.1 R的數據類型 24 3.2 向量、矩陣和數組 25 3.3 向量 25 3.3.1 創建向量 26 3.3.2 向量屬性 30 3.3.3 索引向量 32 3.4 矩陣 36 3.4.1 創建矩陣 37 3.4.2 矩陣屬性 39 3.4.3 索引矩陣 41 3.5 數組 44 3.5.1 創建數組 44 3.5.2 數組屬性 45 3.5.3 索引數組 45 3.6 單模式數據對象之間的關系 46 3.7 本章小結 47 3.8 本章答疑 47 3.9 課后研習 48 3.10 補充練習 49 第4章 多模式數據結構 50 4.1 多模式結構 50 4.2 列表 51 4.2.1 列表是什么 51 4.2.2 創建空列表 52 4.2.3 創建非空列表 52 4.2.4 創建有元素名的列表 53 4.2.5 創建列表:總結 53 4.2.6 列表屬性 54 4.2.7 索引列表 55 4.2.8 索引列表的子集 55 4.2.9 引用列表的元素 58 4.2.10 添加列表元素 60 4.2.11 列表語法總結 61 4.2.12 為何要學習列表 63 4.3 數據框 66 4.3.1 創建數據框 66 4.3.2 查詢數據框的屬性 67 4.3.3 選取數據框的列 67 4.3.4 添加數據框的列 67 4.3.5 索引數據框的列 68 4.3.6 作為矩陣引用 69 4.3.7 索引數據框總結 71 4.4 探索數據 71 4.4.1 數據的頂部和底部 72 4.4.2 數據視圖 72 4.4.3 匯總數據 74 4.4.4 可視化數據 74 4.5 本章小結 75 4.6 本章答疑 75 4.7 課后研習 77 4.8 補充練習 78 第5章 日期、時間和因子 80 5.1 處理日期和時間 80 5.1.1 創建日期對象 80 5.1.2 創建包含時間的對象 81 5.1.3 操控日期和時間 82 5.2 lubridate包 83 5.3 處理分類數據 84 5.3.1 創建因子 84 5.3.2 管理因子的水平 86 5.3.3 創建連續數據的因子 86 5.4 本章小結 87 5.5 本章答疑 88 5.6 課后研習 88 5.7 補充練習 89 第6章 常用R函數 90 6.1 R函數的用法 90 6.2 處理數值數據的函數 91 6.2.1 數學函數和運算符 91 6.2.2 統計匯總函數 92 6.2.3 模擬和統計分布 93 6.3 處理邏輯數據的函數 94 6.4 處理缺失數據的函數 95 6.5 處理字符數據的函數 96 6.5.1 處理簡單的字符 96 6.5.2 查找和替換 97 6.6 本章小結 98 6.7 本章答疑 98 6.8 課后研習 98 6.9 補充練習 99 第7章 編寫函數:* 一部分 100 7.1 為何要學習函數 100 7.2 創建簡單的函數 101 7.2.1 命名函數 102 7.2.2 定義函數的參數 103 7.2.3 函數作用域規則 104 7.2.4 返回對象 104 7.3 If/Else結構 106 7.3.1 一個簡單的R示例 107 7.3.2 嵌套語句 108 7.3.3 使用一個條件 108 7.3.4 多個測試值 109 7.3.5 匯總成一個邏輯值 109 7.3.6 簡化邏輯輸入 110 7.3.7 反轉邏輯值 111 7.3.8 混合條件 112 7.3.9 控制與/或語句 112 7.3.10 提前返回 113 7.3.11 示例 114 7.4 本章小結 115 7.5 本章答疑 115 7.6 課后研習 116 7.7 補充練習 117 第8章 編寫函數:* 二部分 119 8.1 錯誤和警告 119 8.1.1 錯誤消息 120 8.1.2 警告消息 121 8.2 檢查輸入 122 8.3 省略號 124 8.3.1 使用省略號 125 8.3.2 用省略號傳遞圖形參數 125 8.4 檢查多值輸入 128 8.5 使用輸入定義 130 8.6 本章小結 133 8.7 本章答疑 133 8.8 課后研習 134 8.9 補充練習 135 第9章 循環和匯總 136 9.1 重復的任務 136 9.1.1 循環 136 9.1.2 for 循環 137 9.1.3 while循環 142 9.2 “應用”函數家族 143 9.3 apply()函數 144 9.3.1 MARGIN 144 9.3.2 簡單的apply()用例 145 9.3.3 使用多個MARGIN 146 9.3.4 更高維結構使用apply() 147 9.3.5 給“待應用”函數傳遞 其他參數 148 9.3.6 在自定義函數中使用apply() 150 9.3.7 給函數傳遞額外參數 151 9.3.8 應用于數據框 152 9.4 lapply()函數 153 9.4.1 split()函數 154 9.4.2 分割數據框 155 9.4.3 用lapply()函數處理向量 157 9.4.4 “應用”輸入的次序 158 9.4.5 用lapply()函數處理數據框 160 9.5 sapply()函數 161 9.5.1 從sapply()返回 162 9.5.2 為何要使用sapply() 164 9.6 tapply()函數 165 9.6.1 多個分組變量 165 9.6.2 多值返回 166 9.6.3 從tapply()返回值 168 9.7 本章小結 169 9.8 本章答疑 169 9.9 課后研習 170 9.10 補充練習 171 * 10章 導入和導出 172 10.1 處理文本文件 172 10.1.1 讀入文本文件 173 10.1.2 讀入CSV文件 174 10.1.3 導出文本文件 175 10.1.4 更快導入和導出 175 10.1.5 高效數據存儲 175 10.1.6 所有權和其他格式 176 10.2 關系數據庫 177 10.2.1 RODBC 177 10.2.2 DBI 178 10.3 操作Microsoft Excel 179 10.4 本章小結 183 10.5 本章答疑 183 10.6 課后研習 184 10.7 補充練習 184 * 11章 數據操控和轉換 186 11.1 排序 186 11.1.1 數據框排序 187 11.1.2 降序排列 187 11.2 附加 188 11.3 合并 188 11.3.1 合并示例 189 11.3.2 缺失值 190 11.4 重復值 191 11.5 重組 192 11.5.1 用reshape進行重組 192 11.5.2 融合 193 11.5.3 重鑄 194 11.5.4 用tidyr進行重組 195 11.6 數據整合 197 11.6.1 使用“for”循環 197 11.6.2 使用“應用”函數 198 11.6.3 aggregate()函數 199 11.6.4 使用帶公式的aggregate() 199 11.6.5 根據指 定列使用aggregate() 201 11.6.6 計算baseline的差值 203 11.7 本章小結 204 11.8 本章答疑 204 11.9 課后研習 205 11.10 補充練習 205 * 12章 高效數據處理 206 12.1 dplyr:處理數據的新方式 206 12.1.1 創建dplyr(tbl_df)對象 207 12.1.2 排序 208 12.1.3 訪問子集 208 12.1.4 添加新列 210 12.1.5 合并 211 12.1.6 整合 212 12.1.7 管道操作符 215 12.2 用data.table高效處理數據 216 12.2.1 創建data.table 216 12.2.2 設置key 217 12.2.3 取子集 217 12.2.4 添加新行和新列 219 12.2.5 合并 221 12.2.6 整合 222 12.2.7 處理超大數據集的其他包 223 12.3 本章小結 224 12.4 本章答疑 224 12.5 課后研習 224 12.6 補充練習 225 * 13章 圖形 226 13.1 圖形設備和顏色 226 13.1.1 設備 226 13.1.2 顏色 227 13.2 高 級圖形函數 227 13.2.1 單變量圖形函數 228 13.2.2 plot()函數 230 13.2.3 圖形屬性 231 13.3 初級圖形函數 235 13.3.1 點和線 235 13.3.2 文本 236 13.3.3 圖例 237 13.3.4 其他初級函數 239 13.4 圖形參數 239 13.5 控制布局 240 13.5.1 網格布局 240 13.5.2 layout()函數 241 13.6 本章小結 242 13.7 本章答疑 242 13.8 課后研習 243 13.9 補充練習 244 * 14章 ggplot2圖形包 245 14.1 ggplot2的哲學 245 14.2 快速繪圖和基本控制 246 14.2.1 使用qplot() 246 14.2.2 標題和軸 247 14.2.3 使用圖層 247 14.2.4 把圖形作為對象 248 14.3 更改繪制類型 249 14.3.1 繪制類型 249 14.3.2 組合繪制類型 251 14.4 圖形屬性 251 14.4.1 控制圖形屬性 252 14.4.2 標度和圖例 254 14.4.3 處理分組數據 256 14.5 面板(分面) 257 14.5.1 facet_grid()的用法 258 14.5.2 facet_wrap()的用法 259 14.5.3 從qplot()中進行分面 260 14.6 定制繪圖 260 14.6.1 ggplot() 260 14.6.2 坐標系 264 14.7 主題和布局 265 14.7.1 調整單個繪圖 265 14.7.2 全局主題 266 14.7.3 圖例布局 266 14.8 ggvis的演變 267 14.9 本章小結 267 14.10 本章答疑 268 14.11 課后研習 268 14.12 補充練習 269 * 15章 lattice圖形 270 15.1 格子圖形的歷史 270 15.2 lattice包 271 15.3 創建簡單的lattice圖形 271 15.3.1 lattice圖形類型 272 15.3.2 繪制數據的子集 277 15.4 圖形選項 278 15.4.1 標題和軸 278 15.4.2 繪制類型和格式 279 15.5 多變量 280 15.6 數據的分組 281 15.7 使用面板 282 15.7.1 控制條頭 283 15.7.2 多個“By”變量 284 15.7.3 面板函數 285 15.8 控制樣式 290 15.8.1 預覽樣式 291 15.8.2 創建主題 292 15.8.3 使用主題 293 15.9 本章小結 294 15.10 本章答疑 294 15.11 課后研習 295 15.12 補充練習 295 * 16章 R模型和面向對象 296 16.1 R中的統計模型 296 16.2 簡單的線性模型 296 16.3 在R中評估模型 298 16.3.1 模型匯總 298 16.3.2 模型診斷圖 299 16.3.3 提取模型元素 300 16.3.4 作為列表對象的模型 302 16.3.5 在繪圖中添加模型線 304 16.3.6 模型預測 305 16.4 多元線性回歸 306 16.4.1 更新模型 306 16.4.2 比較嵌套模型 307 16.5 交互項 309 16.6 因子自變量 311 16.7 變量轉換 314 16.8 R和面向對象 316 16.8.1 面向對象 316 16.8.2 線性模型方法 317 16.9 本章小結 318 16.10 本章答疑 318 16.11 課后研習 319 16.12 補充練習 319 * 17章 常見R模型 320 17.1 廣義線性模型 320 17.1.1 GLM定義 321 17.1.2 擬合GLM模型 321 17.1.3 擬合高斯模型 322 17.1.4 glm對象 323 17.1.5 Logistic回歸 325 17.1.6 泊松回歸 327 17.1.7 GLM擴展 329 17.2 非線性模型 329 17.2.1 非線性回歸 330 17.2.2 非線性模型擴展 335 17.3 生存分析 336 17.3.1 ovarian數據框 336 17.3.2 刪失數據 336 17.3.3 估計生存函數 337 17.3.4 比例風險 341 17.3.5 生存模型擴展 344 17.4 時間序列分析 344 17.4.1 時間序列對象 344 17.4.2 分解時間序列 346 17.4.3 平滑 347 17.4.4 自相關 349 17.4.5 擬合ARIMA模型 349 17.5 本章小結 352 17.6 本章答疑 352 17.7 課后研習 352 17.8 補充練習 353 * 18章 代碼提速 354 18.1 確定效率 354 18.1.1 性能分析 355 18.1.2 標準分析工具 355 18.2 初始化 356 18.3 向量化 357 18.3.1 什么是向量化 358 18.3.2 怎樣編碼可以向量化 358 18.4 使用替換函數 360 18.5 管理內存使用 360 18.6 集成C++ 361 18.6.1 C++和Rcpp的使用時機 361 18.6.2 基本函數 362 18.6.3 在C++中使用R函數 364 18.7 本章小結 364 18.8 本章答疑 365 18.9 課后研習 365 18.10 補充練習 366 * 19章 構建包 367 19.1 為什么要構建R包 367 19.2 R包的結構 368 19.2.1 創建包的結構 368 19.2.2 DESCRIPTION文件 369 19.2.3 NAMESPACE文件 370 19.2.4 R目錄 370 19.2.5 man目錄 371 19.3 代碼質量 371 19.4 用roxygen2自動創建文檔 372 19.4.1 函數的roxygen注釋塊 372 19.4.2 撰寫包的文檔 374 19.4.3 創建和更新幫助頁面 374 19.5 用devtools構建包 375 19.5.1 檢查 375 19.5.2 構建 377 19.5.3 安裝 377 19.6 本章小結 378 19.7 本章答疑 378 19.8 課后研習 378 19.9 補充練習 379 * 20章 構建高 級包 380 20.1 擴展R包 380 20.2 開發測試框架 381 20.2.1 testthat介紹 381 20.2.2 將測試合并進包中 383 20.3 在包中包含數據 384 20.4 包含用戶指南 386 20.4.1 在包中包含使用指南 386 20.4.2 撰寫使用指南 387 20.5 用Rcpp編碼 389 20.6 本章小結 390 20.7 本章答疑 390 20.8 課后研習 391 20.9 補充練習 391 * 21章 編寫R類 393 21.1 什么是類 393 21.1.1 R中的面向對象 394 21.1.2 為何要用面向對象 394 21.1.3 為何要使用S3 396 21.2 創建新的S3類 396 21.3 泛型函數和方法 398 21.3.1 為算術操作符定義方法 399 21.3.2 列表和屬性 400 21.3.3 創建新的泛型 401 21.4 在S3中繼承 402 21.5 創建S3文檔 403 21.6 S3的局限性 403 21.7 本章小結 404 21.8 本章答疑 404 21.9 課后研習 404 21.10 補充練習 405 * 22章 正式的類系統 406 22.1 S4 406 22.1.1 使用S4類 407 22.1.2 定義S4類 407 22.1.3 方法 410 22.1.4 定義新的泛型函數 411 22.1.5 多重分派 412 22.1.6 繼承 413 22.1.7 創建S4的文檔 414 22.2 引用類 415 22.2.1 創建新的引用類 415 22.2.2 定義方法 417 22.2.3 復制引用類的對象 419 22.2.4 創建引用類的文檔 420 22.3 R6類 421 22.3.1 公有成員和私有成員 421 22.3.2 R6示例 421 22.4 其他類系統 422 22.5 本章小結 422 22.6 本章答疑 423 22.7 課后研習 423 22.8 補充練習 424 * 23章 動態報告 425 23.1 什么是動態報告 425 23.2 knitr包簡介 426 23.3 用RMarkdown生成 簡單的報告 426 23.3.1 RMarkdown文檔基礎 426 23.3.2 創建HTML文件 427 23.3.3 包含R的代碼和輸出 428 23.4 用LaTeX生成報告 430 23.4.1 LaTeX文檔基礎 430 23.4.2 在LaTeX文檔中包含代碼 431 23.5 本章小結 433 23.6 本章答疑 433 23.7 課后研習 433 23.8 補充練習 434 * 24章 用Shiny創建網絡應用程序 435 24.1 簡單的Shiny應用程序 435 24.1.1 Shiny應用程序的結構 435 24.1.2 ui組件 436 24.1.3 server組件 437 24.2 響應式函數 439 24.2.1 為何需要響應式函數 439 24.2.2 創建一個簡單的響應式函數 440 24.3 交互式文檔 441 24.4 共享Shiny應用程序 442 24.5 本章小結 442 24.6 本章答疑 443 24.7 課后研習 443 24.8 補充練習 444 附錄A 安裝 445 |
序: |
|