r怎么写包

全栈数据之路系列:

1

初级入门

《R语言实战》,这是高涛、肖楠等翻译的一本书详细全面介绍了入门、图形、统计、回归、方差、功效分析、广义线性模型、主成分、因子分析、缺失值处理等。除此之外,还可以去读刘思喆的《153分钟学会R》。这本书收集了R初学者提问频率最高的153个问题。为什么叫153分钟呢?因为最初作者写了153个问题,阅读一个问题花费1分钟时间,全局下来也就是153分钟了。

2

高级入门

读了上述书籍之后,你就可以去高级入门阶段了。这时候要读的书有两本很经典的。《Statistics with R》和《The R book》。之所以说这两本书高级,是因为这两本书已经不再限于R基础了,而是结合了数据分析的各种常见方法来写就的,比较系统的介绍了R在线性回归、方差分析、多元统计、R绘图、时间序列分析、数据挖掘等各方面的内容,看完之后你会发现,哇,原来R能做的事情这么多,而且做起来是那么简洁。读到这里已经差不多了,剩下的估计就是你要专门攻读的某个方面内容了。下面大致说一说。

3

绘图与可视化

亚里斯多德说,“较其他感觉而言,人类更喜欢观看”。因此,绘图和可视化得到很多人的关注和重视。那么,如何学习R画图和数据可视化呢?再简单些,如何画直方图?如何往直方图上添加密度曲线呢?我想读完下面这几本书你就大致会明白了。

首先,画图入门可以读《R Graphics》,个人认为这本是比较经典的,全面介绍了R中绘图系统。该书对应的有一个网站,google之就可以了。更深入的可以读《Lattice:Multivariate Data Visualization with R》。上面这些都是比较普通的。当然,有比较文艺和优雅的——ggplot2系统,看《ggplot2:Elegant Graphics for Data Analysis》。

还有数据挖掘方面的书:《Data Mining with Rattle and R》,主要是用Rattle软件,个人比较喜欢Rattle!当然,Rattle不是最好的,Rweka也很棒!再有就是交互图形的书了,著名的交互系统是ggobi,这个我已经喜欢两年多了,关于ggobi的书有《Interactive and Dynamic Graphics for Data Analysis With R and GGobi》,不过,也只是适宜入门,更多更全面的还是去ggobi的主页吧,上面有各种资料以及包的更新信息!

4

计量经济学

关于计量经济学,首先推荐一本很薄的小册子:《Econometrics In R》,做入门用。然后,是《Applied Econometrics with R》,该书对应的R包是AER,可以安装之后配合使用,效果甚佳。计量经济学中很大一部分是关于时间序列分析的,这一块内容在下面的地方说。

5

时间序列分析

时间序列书籍的书籍分两类,一种是比较普适的书籍,典型的代表是:《Time Series Analysis and Its Applications :with R examples》。该书介绍了各种时间序列分析的经典方法及实现各种经典方法的R代码,该书有中文版。如果不想买的话,建议去作者主页直接下载,英文版其实读起来很简单。

时间序列分析中有一大块儿是关于金融时间序列分析的。这方面比较流行的书有两本《Analysis of financial time series》,这本书的最初是用的S-plus代码,不过新版已经以R代码为主了。这本书适合有时间序列分析基础和金融基础的人来看,因为书中关于时间序列分析的理论以及各种金融知识讲解的不是特别清楚,将极值理论计算VaR的部分就比较难看懂。另外一个比较有意思的是Rmetrics推出的《TimeSeriesFAQ》,这本书是金融时间序列入门的东西,讲的很基础,但是很难懂。对应的中文版有《金融时间序列分析常见问题集》,当然,目前还没有发出来。经济领域的时间序列有一种特殊的情况叫协整,很多人很关注这方面的理论,关心这个的可以看《Analysis of Integrated and Cointegrated Time Series with R》。最后,比较高级的一本书是关于小波分析的,看《Wavelet Methods in Statistics with R》。附加一点,关于时间序列聚类的书籍目前比较少见,是一个处女地,有志之士可以开垦之!

6

金融

金融的领域很广泛,如果是大金融的话,保险也要被纳入此间。用R做金融更多地需要掌握的是金融知识,只会数据分析技术意义寥寥。我觉得这些书对于懂金融、不同数据分析技术的人比较有用,只懂数据分析技术而不动金融知识的人看起来肯定如雾里看花,甚至有人会觉得金融分析比较低级。这方面比较经典的书籍有:《Advanced Topics in Analysis of Economic and Financial Data Using R》以及《Modelling Financial Time Series With S-plus》。

金融产品定价之类的常常要用到随机微分方程,有一本叫《Simulation Inference Stochastic Differential Equations:with R examples》的书是关于这方面的内容的,有实例,内容还算详实!此外,是风险度量与管理类。比较经典的有《Simulation Techniques in Financial Risk Management》、《Modern Actuarial Risk Theory Using R》和《Quantitative Risk Management:Concepts, Techniques and Tools》。投资组合分析类和期权定价类可以分别看《Portfolio Optimization with R》和《Option Pricing and Estimation of Financial Models with R》。

7

附注

很多书都已经有电子版。可以在一些群或 新浪爱问 csdn等里面去找。

R数据挖掘分析常用包和函数

与数据挖掘有关或者有帮助的R包和函数的集合:

(1)聚类

常用的包: fpc,cluster,pvclust,mclust

基于划分的方法: kmeans, pam, pamk, clara

基于层次的方法: hclust, pvclust, agnes, diana

基于模型的方法: mclust

基于密度的方法: dbscan

基于画图的方法: plotcluster, plot.hclust

基于验证的方法: cluster.stats

(2)分类

常用的包:

rpart,party,randomForest,rpartOrdinal,tree,marginTree,

maptree,survival

决策树: rpart, ctree

随机森林: cforest, randomForest

回归, Logistic回归, PoisvJyMiNson回归: glm, predict, residuals

生存分析: survfit, survdiff, coxph

(3)关联规则与频繁项集

常用的包:

arules:支持挖掘频繁项集,最大频繁项集,频繁闭项目集和关联规则

DRM:回归和分类数据的重复关联模型

APRIORI算法,广度RST算法:apriori, drm

ECLAT算法: 采用等价类,RST深度搜索和集合的交集: eclat

(4)序列模式

常用的包: arulesSequences

SPADE算法: cSPADE

(5)时间序列

常用的包: timsac

时间序列构建函数: ts

成分分解: decomp, de原由网compose, stl, tsr

(6)统计

常用的包: Base R, nlme

方差分析: aov, anova

密度分析: density

假设检验: t.test, prop.test, anova, aov

线性混合模型:lme

主成分分析和因子分析:princomp

(7)图表

条形图: barplot

饼图: pie

散点图: dotchart

直方图: hist

密度图: densityplot

蜡烛图, 箱形图 boxplot

QQ (quantile-quantile) 图: qqnorm, qqplot, qqline

Bi-variate plot: coplot

树: rpart

Parallel coordinates: parallel, paracoor, parcoord

热图, contour: contour, filled.contour

其他图: stripplot, sunflowerplot, interaction.plot, matplot, fourfoldplot,

assocplot, mosaicplot

保存的图表格式: pdf, post, win.metafile, jpeg, bmp, png

(8)数据操作

缺失值:na.omit

变量标准化:scale

变量转置:t

抽样:sample

堆栈:stack, unstack

其他:aggregate, merge, reshape

(9)与数据挖掘软件Weka做接口

RWeka: 通过这个接口,可以在R中使用Weka的所有算法。

R | 数据分析常用R包介绍

本文为 Rstudio 社区文章Quick list of useful R packages》的中文翻译。略有增删。原文链接如下:

https://support.rstudio.com/hc/en-us/articles/201057987-Quick-list-of-useful-R-packages

这里面提到的很多R包都是Rstudio公司旗下的,Rstudio公司旗下很多R包都具有良好的使用体验。其中又有好几个R包是由Hadley Wickham大神所写的。Hadley Wickham是R社区非常非常流行的ggplot2包的作者,也是Rstudio公司的首席科学家。如下内容为按照类别整理的数据科学中常用的R包。对于自己感兴趣的包,可以在R中安装它们,并使用help('包名') 查看它们的帮助文档,文档中会有关于这些R包的功能介绍和用法指引。

数据加载

  • R可以不需要任何工具,直接用read.csv, read.table, read.fwf等函数读取加载纯文本格式文件
  • readr: 读取csv等文本格式的数据,效率比R自带读取函数要高5~10倍;
  • readxl : 从Excel中读取加载数据
  • haven : 从SAS/SPSS格式的数据集中读取加载数据
  • RODBC, RMySQL, RPostgresSQL, RSQLite :从数据库中读取加载数据

数据处理

数据处理里面提到的R包都是Rstudio公司旗下的。

  • dplyr - 必备的数据处理工具,可以对数据集做subset, summarize, rearrange, join等处理
  • tidyr - 利用gather和spread函数将数据集转化成格式更工整的数据集
  • stringr - 一个简单易上手的对字符串类型的数据进行正则表达式处理的工具
  • lubridate - 处理日期和时间类型数据的工具

数据可视化

  • ggplot2 - R中最著名的可视化工具包
  • ggvis - 一个可以做基于web的交互可视化工具包
  • rgl - 在R中做3D交互可视化
  • htmlwidgets - 一个在R中快速建立基于Java内核的交互可视化工具包
  • googleVis - 利用Google Chart工具在R中做数据可视化

数据建模

  • car - 做方差分析
  • mgcv - 调用广义相加模型
  • lme4 / nlme - 调用线性/非线性混合效应模型
  • rendomForest - 调用机器学习中的随机森林模型
  • multcomp - 做多重比较分析
  • vcd - 实现分类数据做可视化及测试
  • glmnet - 调用Laso and elastic-net回归模型及交叉检验
  • survival - 做生存分析
  • caret - 训练回归/分类模型的工具包

处理和分析大数据集

  • sparklyr: Rstudio公司开发的在R中使用spark的接口程序库;
  • spar原由网kR: spark社区提供的访问spark的R语言程序库。spark官方还提供Java,Scala,Python语言接口。

可视化报告

  • shiny //www.58yuanyou.com- 一个用R做交互可视化的应用
  • R Makdown - 用R做数据分析报告的必备工具
  • jupyter notebook:数据科学家最喜欢的编程环境。
  • xtable - 将R中的数据对象(如data frame)转换成HTML/LaTeX代码的工具

处理时间序列及金融数据

  • zoo - 提供最流行的格式在R中存储时间序列对象
  • xts - 灵活处理时间序列数据集的工具
  • quantmod - 下载金融数据并做可视化、技术性分析的工具

处理web数据

  • XML -原由网 用R读写XML文件
  • jsonlite - 用R读写JSON文件
  • httr - 处理http链接的工具集合

END

内容版权声明:除非注明原创否则皆为转载,再次转载请注明出处。

文章标题: r怎么写包

文章地址: www.58yuanyou.com/jiqiao/326293.html

相关推荐