R語言程式設計指南 R语言编程指南

任坤

  • 出版商: 人民郵電
  • 出版日期: 2017-10-01
  • 定價: $594
  • 售價: 8.5$505
  • 語言: 簡體中文
  • 頁數: 519
  • 裝訂: 平裝
  • ISBN: 711546264X
  • ISBN-13: 9787115462640
  • 相關分類: R 語言
  • 此書翻譯自: Learning R Programming
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

R 是一個開源、跨平臺的科學計算和統計分析軟件包,它提供了豐富多樣的統計功能和強大的數據分析功能。隨著數據科學的快速發展,R已經成為數據分析領域非常流行的語言。
本書通過15章內容,向讀者全面講解了R的基礎知識和編程技巧。本書不僅介紹了R的安裝、基本對象、工作空間管理、基本表達式、基本對象操作、字符串的使用等基礎內容,還對數據處理、R的內部機制、元編程、面向對象編程、數據庫操作、數據操作進行了講解,同時也涉及高性能計算、網頁爬蟲和效率提升等重要主題。
本書面向數據領域的從業人員,尤其適合想要通過學習R編程及相關工具提升數據處理效率的讀者閱讀,也適合電腦或統計相關專業的學生參考使用。通過閱讀本書,讀者將全面掌握R的相關特性及其在數據處理和分析方面的應用,極大地提升自己的專業技能。

作者簡介

任坤

在量化交易中使用R以及C++和C#已有近4年的時間,他一直致力於開發有用的但社區尚未提供的R包(每天工作8~10小時)。

他為其他作者開發的擴展包做出過很多貢獻,指出其中存在的問題並給出改進建議。

他也是中國R語言大會的重要嘉賓,在R會議上做過多次演講。在眾多社交媒體中,任坤也受到了廣泛關注。

目錄大綱

1.1 R簡介1 
1.1.1編程語言2 
1.1.2計算環境2 
1.1.3社區2 
1.1.4生態系統3 
1.2對R的需求3 
1.3 R的安裝5 
1.4 RStudio 7 
1.4.1 RStudio的用戶界面8 
1.4.2 RStudio服務器13 
1.5入門示例13 
1.6小結15 
第2章基本對象16 
2.1向量17 
2.1.1數值向量17 
2.1.2邏輯向量19 
2.1.3字符向量20 
2.1.4構建向量子集21 
2.1.5命名向量24 
2.1.6提取向量元素26 
2.1.7識別向量類型27 
2.1.8轉換向量類型27 
2.1.9數值向量的算術運算符29 
2.2矩陣30 
2.2.1創建一個矩陣30 
2.2.2為行和列命名31 
2.2.3構建矩陣子集31 
2.2.4矩陣運算符的使用33 
2.3數組34 
2.3.1創建一個數組35
2.3.2構建數組子集36 
2.4列表37 
2.4.1創建一個列表37 
2.4.2從列表中提取元素38 
2.4.3構建列表子集39 
2.4.4命名列表40 
2.4.5賦值40 
2.4.6其他函數42 
2.5數據框43 
2.5.1創建一個數據框43 
2.5.2對行和列命名44 
2.5.3構建數據框子集45 
2.5.4賦值49 
2.5.5因子50 
2.5.6數據框中的實用函數52 
2.5.7在硬盤上讀寫數據53 
2.6函數54 
2.6.1創建函數54 
2.6.2調用函數55 
2.6.3動態類型55 
2.6.4泛化函數56 
2.6.5函數參數的默認值58 
2.7小結59 
第3章工作空間管理60 
3.1 R的工作目錄60 
3.1.1在RStudio中創建R 
項目61 
3.1.2絕對路徑和相對路徑的
比較62 
3.1.3管理項目文件63 
3.2檢查工作環境64 
3.2.1檢查現有符號65
3.2.2查看對象結構66 
3.2.3刪除符號69 
3.3修改全局選項70 
3.3.1修改輸出位數70 
3.3.2修改警告級別72 
3.4管理擴展包庫73 
3.4.1認識擴展包74 
3.4.2從CRAN中安裝包75 
3.4.3從CRAN中更新包76 
3.4.4從在線庫中安裝包76 
3.4.5使用包中的函數77 
3.4.6屏蔽和同名衝突81 
3.4.7檢查是否已安裝擴展包82 
3.5小結83 
第4章基本表達式84 
4.1賦值表達式84 
4.1.1其他賦值操作符85 
4.1.2使用帶反引號的非標準
名稱88 
4.2條件表達式91 
4.2.1使用if語句91 
4.2. 2使用if表達式95 
4.2.3在if條件句中使用向量98 
4.2.4使用向量化的
if:ifelse 100 
4.2.5使用switch對值進行
分支101 
4.3循環表達式102 
4.3.1使用for循環103 
4.3.2使用while循環109 
4.4小結110
第5章基本對像操作111 
5.1使用原函數111 
5.1.1檢查對像類型112 
5.1.2識別數據維度116 
5.2使用邏輯函數120 
5.2.1邏輯運算符120 
5.2.2邏輯函數122 
5.2.3處理缺失值125 
5.2.4邏輯強制轉換127 
5.3使用數學函數127 
5.3.1基礎函數127 
5.3.2取整函數129 
5.3.3三角函數129 
5.3.4雙曲函數130 
5.3.5最值函數131 
5.4應用數值方法134 
5.4.1根查找134 
5.4.2微積分137 
5.5使用統計函數139 
5.5.1從向量中抽樣139 
5.5.2應用隨機分佈140 
5.5.3計算描述性統計量142 
5.6使用apply函數族146 
5.6. 1 lapply 147 
5.6.2 sapply 148 
5.6.3 vapply 149 
5.6.4 mapply 150 
5.6.5 apply 151 
5.7小結152 
第6章字符串的使用153 
6.1字符串入門153
6.1.1打印文本153 
6.1.2連接字符串157 
6.1.3轉換文本158 
6.1.4格式化文本163 
6.2格式化日期/時間165 
6.2.1將文本解析為日期/ 
時間166 
6.2.2格式化日期/時間為
字符串169 
6.3使用正則表達式171 
6.3.1尋找字符串模式172 
6.3.2使用分組提取數據174 
6.3.3以自定義的方式讀取
數據176 
6.4小結177 
第7章數據處理178 
7.1讀寫數據178 
7.1.1讀寫文件中的文本格式
數據178 
7.1.2讀寫Excel工作表183 
7.1.3讀寫原生數據文件185 
7.1.4加載內置數據集188 
7.2數據可視化191 
7.2.1創建散點圖191 
7.2.2創建折線圖197 
7.2.3創建柱狀圖201 
7.2.4創建餅狀圖203 
7.2.5創建直方圖和密度圖203 
7.2.6創建箱線圖206 
7.3數據分析207 
7.3. 1擬合線性模型207
7.3.2擬合回歸樹212 
7.4小結215 
第8章R的內部機制216 
8.1惰性求值216 
8.2複製—修改機制221 
8.3詞法作用域227 
8.4環境的工作方式232 
8.4.1環境對象232 
8.4.2創建並鏈接環境233 
8.4.3鏈接環境235 
8.4.4與函數相關的環境240 
8.5小結243 
第9章元編程244 
9.1函數式編程244 
9.1.1創建和使用閉包244 
9.1.2使用高階函數249 
9.2基於語言的計算255 
9.2.1捕獲和修改表達式256 
9.2.2執行表達式263 
9.2.3非標準計算267 
9.3小結273 
第10章面向對象編程274 
10.1面向對象編程簡介274 
10.1.1類和方法275 
10.1.2繼承275 
10.2 S3對象276 
10.2.1泛型函數和方法分派276 
10.2.2內置類和方法279 
10.2.3為現有類定義泛型
函數287 
10.2.4定義新類並創建對象288
10.3 S4對象系統300 
10.3.1定義S4類300 
10.3.2 S4繼承306 
10.3.3定義S4泛型函數307 
10.3.4多重分派309 
10.4引用類(RC) 312 
10.5 R6 314 
10.6小結317 
第11章數據庫操作319 
11.1操作關係型數據庫319 
11.1.1創建一個SQLite 
數據庫320 
11.1.2訪問表和表中字段323 
11.1.3用SQL對關係型數據庫
進行查詢325 
11.1.4分塊提取查詢結果335 
11.1.5出於一致性考慮的事務
操作336 
11.1.6將多個文件的數據存入
一個數據庫342 
11.2操作非關係型數據庫345 
11.2.1 MongoDB操作346 
11.2.2使用Redis 362 
11.3小結368 
第12章數據操作369 
12.1使用內置函數操作數據框369 
12.1.1使用內置函數操作
數據框370 
12.1.2使用reshape2重塑
數據框378 
12.2通過sqldf包使用SQL查詢
數據框383 
12.3使用data.table包操作數據387 
12.3.1使用鍵獲取行394 
12.3.2對數據分組匯總396 
12.3.3重塑data.table 399 
12.3.4使用原地設置函數401 
12.3.5 data .table中的動態
作用域403 
12.4使用dplyr管道操作處理
數據框408 
12.5使用rlist包處理嵌套數據
結構416 
12.6小結421 
第13章高性能計算423 
13.1理解代碼性能問題423 
13.2代碼的性能分析432 
13.2 .1用Rprof進行性能
分析432 
13.2.2用profvis進行性能
分析436 
13.2.3理解代碼為什麼
會慢438 
13.3提高代碼性能440 
13.3.1使用內置函數440 
13.3.2使用向量化443 
13.3.3使用字節碼編譯器445 
13.3.4使用由Intel MKL 
支持的R 447 
13.3.5使用並行計算447 
13.3.6使用Rcpp 457 
13.4小結465
第14章網頁爬蟲467 
14.1查閱網頁內容467 
14.2使用CSS選擇器從網頁中
提取數據473 
14.3使用XPath選擇器476 
14.4分析HTML代碼並提取
數據481 
14.5小結489 
第15章效率提升491 
15.1編寫R Markdown文檔491 
15.1.1了解markdown 491 
15.1.2將R整合到
markdown中497 
15.1.3嵌入表格和圖表499 
15.2創建交互式應用程序506 
15.2.1創建shiny應用程序507 
15.2.2使用shinydashboard 511 
15.3小結515 
附錄術語表516