學習R (Learning R) 学习R (图灵程序设计丛书)

Richard Cotton

  • 出版商: 人民郵電
  • 出版日期: 2014-06-01
  • 定價: $414
  • 售價: 8.5$352
  • 語言: 簡體中文
  • 頁數: 362
  • ISBN: 7115351708
  • ISBN-13: 9787115351708
  • 此書翻譯自: Learning R (Paperback)
  • 已絕版

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

商品描述

《學習R》分為上下兩部分,旨在指導你如何使用R,並提供練習的機會。上半部分主要介紹R的技術細節和使用技巧。每章都簡要介紹了一組不同的數據類型(例如第4章介紹向量、矩陣和數組)或概念(例如第8章介紹分支和循環)。下半部分更側重實踐,展示了從輸入數據到發布結果這一標準的數據分析流程。


即使你沒有任何編程基礎,也能順利閱讀《學習R》。

作者簡介

Richard Cotton 

 

一位通曉化學安全及健康的數據科學家,開發過很多能讓非專業用戶訪問統計模型的工具。他開發了很多R包,如assertive(用於檢查變量的狀態)和sig(用於確保功能具有合理的API)。他也是The Damned Liars公司的統計學顧問。

目錄大綱

譯者序

前言 

 

第一部分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 

附錄BR中其他可做的事情305 

附錄C問題答案307 

附錄D練習答案315 

參考文獻339 

關於封面341