现在对R感兴趣的人越来越多,很多人都想快速的掌握R语言,然而,由于目前大部分高校都没有开设R语言课程,这就导致很多人不知道如何着手学习R语言。 对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来。当然,这不是最好的学习方式,最好的方式是——看书。目前,市面上介绍R语言的书籍很多,中文英文都有。那么,众多书籍中,一个生手应该从哪一本着手呢?入门之后如何才能把自己练就成某个方面的高手呢?相信这是很多人心中的疑问。有这种疑问的人有福了,因为笔者将根据自己的经历总结一下R语言书籍的学习路线图以使Ruser少走些弯路。 本文分为6个部分,分别介绍 初级入门 , 高级入门 , 绘图与可视化 , 计量经济学 , 时间序列分析 , 金融 等。 1.初级入门 《An Introduction to R》 ,这是官方的入门小册子。其有中文版,由丁国徽翻译,译名为 《R导论》 。 《R4Beginners》 ,这本小册子有中文版应该叫 《R入门》 。除此之外,还可以去读 刘思喆 的 《153分钟学会R》 。这本书收集了R初学者提问频率最高的153个问题。为什么叫153分钟呢?因为最初作者写了153个问题,阅读一个问题花费1分钟时间,全局下来也就是153分钟了。有了这些基础之后,要去读一些经典书籍比较全面的入门书籍,比如《统计建模与R软件》,国外还有《R Cookbook》和《R in action》,本人没有看过,因此不便评论。 最后推荐,《R in a Nutshell》。对,“果壳里面的R”!当然,是开玩笑的,in a Nutshell是俚语,意思大致是“简单的说”。目前,我们正在翻译这本书的中文版,大概明年三月份交稿!这本书很不错,大家可以从现在开始期待,并广而告知一下! 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.数据挖掘 这方面的书不多,只有《Data Mining with R:learing with case studies》。不过,R中数据挖掘方面的包已经足够多了,参考包中的帮助文档就足够了。 8.附注 出于版权等事宜的考虑,我无法告知你说在“新浪爱问”等地方可以直接免费下载到上面提到的这些书,但是,我想你可以发挥自己的聪明才智去体悟!
现在对R感兴趣的人越来越多,很多人都想快速的掌握R语言,然而,由于目前大部分高校都没有开设R语言课程,这就导致很多人不知道如何着手学习R语言。 对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来。当然,这不是最好的学习方式,最好的方式是——看书。目前,市面上介绍R语言的书籍很多,中文英文都有。那么,众多书籍中,一个生手应该从哪一本着手呢?入门之后如何才能把自己练就成某个方面的高手呢?相信这是很多人心中的疑问。有这种疑问的人有福了,因为笔者将根据自己的经历总结一下R语言书籍的学习路线图以使Ruser少走些弯路。 本文分为6个部分,分别介绍初级入门,高级入门,绘图与可视化,计量经济学,时间序列分析,金融等。 1.初级入门 《An Introduction to R》 ,这是官方的入门小册子。其有中文版,由丁国徽翻译,译名为 《R导论》 。 《R4Beginners》 ,这本小册子有中文版应该叫 《R入门》 。除此之外,还可以去读 刘思喆 的 《153分钟学会R》 。这本书收集了R初学者提问频率最高的153个问题。为什么叫153分钟呢?因为最初作者写了153个问题,阅读一个问题花费1分钟时间,全局下来也就是153分钟了。有了这些基础之后,要去读一些经典书籍比较全面的入门书籍,比如《统计建模与R软件》,国外还有《R Cookbook》和《R in action》,本人没有看过,因此不便评论。 最后推荐,《R in a Nutshell》。对,“果壳里面的R”!当然,是开玩笑的,in a Nutshell是俚语,意思大致是“简单的说”。目前,我们正在翻译这本书的中文版,大概明年三月份交稿!这本书很不错,大家可以从现在开始期待,并广而告知一下! 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.数据挖掘 这方面的书不多,只有《Data Mining with R:learing with case studies》。不过,R中数据挖掘方面的包已经足够多了,参考包中的帮助文档就足够了。 8.附注 出于版权等事宜的考虑,我无法告知你说在“新浪爱问”等地方可以直接免费下载到上面提到的这些书,但是,我想你可以发挥自己的聪明才智去体悟! via: 格物堂
本文分为6个部分,分别介绍初级入门,高级入门,绘图与可视化,计量经济学,时间序列分析,金融等。 1.初级入门 《An Introduction to R》 ,这是官方的入门小册子。其有中文版,由丁国徽翻译,译名为 《R导论》 。 《R4Beginners》 ,这本小册子有中文版应该叫 《R入门》 有了这些基础之后,要去读一些经典书籍比较全面的入门书籍,比如《统计建模与R软件》,国外还有《R Cookbook》和《R in action》,本人没有看过,因此不便评论。 最后推荐,《R in a Nutshell》。对,“果壳里面的R”!当然,是开玩笑的,in a Nutshell是俚语,意思大致是“简单的说”。目前,我们正在翻译这本书的中文版,大概明年三月份交稿!这本书很不错,大家可以从现在开始期待,并广而告知一下! 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.数据挖掘 这方面的书不多,只有《Data Mining with R:learing with case studies》。不过,R中数据挖掘方面的包已经足够多了,参考包中的帮助文档就足够了。
apropos(help) 错误: is.character(what) is not TRUE 以上程序摘录自 R for beginners 中文版 第8页,该程序的功能是查找所有含有字符串“help”的函数,但运行后报错(见蓝色字体)。 正确程序应该为: apropos("help") "help" "help.request" "help.search" "help.start" 应该注意的是,apropos函数的参数应该为字符串,所以应该加上引号。
RforBeginners 中文版学习笔记 2.1 基本原理 ① R 默认的命令提示符是‘ ’,它表示正在等待输入命令。 ② R 是一种解释型语言,而不是编译语言,也就是意味着 R 输入的命令能够直接被执行,而不需要像一些语言首先要构成一个完整的程序形式(如 C , C++ )。 ③ R 的语法非常简单和直观。例如,线性回归的命令 lm(y~x) 表示“以 x 为自变量, y 为因变量来拟合一个线性模型”。 ④ 合法的 R 函数总是带有圆括号的形式,即使括号内没有内容,如 ls() 。一般地,所有的函数后都接有圆括号以区别于对象 object 。 ⑤ 当 R 运行时,所有变量、数据、函数以及结果都以对象 objects 的形式存在计算机的活动内存中,并各自有相应的名字代号。可以通过用一些运算符(如算术,逻辑,比较等)和一些函数(其本身也是对象)来对这些对象进行操作。 ⑥ 函数当中的参量 argument 可以是一些对象(如数据,方程,算式……)。有些参量在函数里被预设为缺省值,用户可以按照实际需要对其作个别的修改。所以运行一个 R 函数可能不需要设定任何参量,原因是所有的参量都可以被默认为缺省值,当然也有可能该函数本身就不含任何的参量。 ⑦ 在 R 中进行的操作都是针对存储在活动内存中的对象的,因此就不涉及到任何临时文件夹的使用。对数据,结果或图表的输入与输出都是通过在对计算机硬盘的文件读写而实现的。用户通过输入一些命令调用函数,分析得出的结果可以直接显示在屏幕上,也可以被存入某个对象或被写入硬盘(如图片对象)。因为产生的结果本身就是一种对象,所以它们也能被视为数据并能像一般数据那样被处理分析。 ⑧ 所有能使用的 R 函数都被包含在一个库( library )中,该库存放在磁盘 R_HOME/library 目录下( R_HOME 是最初安装 R 的地址)。这个目录下有各种功能的包( packages ),各个包也是按照目录的方式组织起来的,其中名为 base 的包可以算是 R 的核心,因为它内嵌了 R 语言所有像数据读写与操作这些罪基本的函数。在上述目录中的每个包中,都有一个子目录 R ,这个目录里又含有一个与此包同名的文件(例如在包 base 中,有这样一个文件 R_HOME/library/base/R/base )。该文件正式存放所有函数的地方。 ⑨ R 语言中最简单的命令莫过于通过输入一个对象的名字来显示其内容了。例如,一个名为 n 的对象,其内容是数值 10 : n 10 方括号中的数字 1 表示从 n 的第一个元素开始显示。 ⑩ 对象的名字必须以一个字母开头( A-Z 或 a-z ),中间可以包含字母、数字( 0-9 )、点( . )及下划线( _ )。并且, R 对对象的名字区分大小写。
RforBeginngers 中文版学习笔记 1 导言 1.1 关键知识点摘录(我认为重要的) ① 本书的对象及特点:主要针对初学者;将重点放在了对 R 的工作原理的解释上 . ② R 是一个有着统计分析功能及强大作图功能的软件系统 . ③ R 内含了许多实用的统计分析函数和作图函数 . 作图函数能将产生的图片展示在一个独立的窗口中,并能将之保存为各种形式的文件( jpg,png,bmp,ps,pdf,emf,pictex,xfig; 具体形式取决于操作系统) . 统计分析的结果也能被直接显示出来,一些中间结果(如 P- 值,回归系数,残差等)既可保存到专门的文件中,也可以直接用作进一步的分析 . ④ R 的一个非常突出的优点正是它的灵活性 . 一般软件往往会直接展示分析结果,而 R 则将这些结果都存在一个对象“ object ”里面,所以常常在分析执行结束后并不显示任何结果 . 这样的好处在于,我们可以从众多的结果中只抽出我们感兴趣的部分,例如,我们运行了 20 个回归分析而只想比较其回归系数,在 R 中就可以选择只显示所有分析得出的回归系数,这样结果仅仅占了一排,而不像其他软件会一下子打开 20 个窗口 . 1.2 对 R 的初步映象 在未学习任何统计软件之前,就对 R 有所耳闻,这主要得益于统计之都的努力宣传 . 在本科学习过 SAS ,自我感觉学的比较次,会一些基本的统计分析操作和常用的统计分析编程,当然也能看懂 SAS 输出的结果 . 也曾想牢牢掌握 SAS ,看了一些书,都只是零星地扫了几个章节,感觉 SAS 水平提升不大 . 我一直以为,统计专业的必须熟练掌握一门软件,而这也一直是我心中的一道坎 . 关于 R ,听说过很多传言 . 好的方面主要是 R 软件比较灵活,不像 SAS 那么呆板,而且 R 也有越来越普及之势,其语言风格与 MATLAB 有几分相似,听说国外用 R 比较多,……传说很多,上论坛搜一下就可以看到了,我就不赘述了。 第一次上 R 官网下载 R ,很吃惊 R 竟然这么小, MATLAB , SAS 动辄就几 G ,我还疑惑或这么小的软件为何会有如此强大的功能,但显然这已经是事实。喜欢 R 的小巧灵活。