R入门25招.doc_第1页
R入门25招.doc_第2页
R入门25招.doc_第3页
R入门25招.doc_第4页
R入门25招.doc_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

R入门25招关于作者陈钢, 华大基因, 研究员长沙土鳖,Linux系统初级管理员,Perl入门级程序员,R菜鸟,LaTeX爱好者,Python学习者,业余Web开发人员,生物信息学和系统生物学门外汉Blog 豆瓣 新浪微博向文章付费 请作者吃饭第1招:下载和安装下载和安装R问题:要把R安装到自己的电脑上。解决方案:Windows和OS X用户可以从CRAN(Comprehensive R Archive Network)上下载R。Linux和Unix用户则可以用各自的包管理工具安装R软件包。Windows1 在浏览器中打开/。2 点击“CRAN”。然后会看到按国家排序的镜像站点列表。3 就近选择一个镜像站点。4 点击“Download and Install R”下的“Windows”。5 点击“base”。6 点击下载最新版R(一个.exe文件)的链接。7 下载完成后,双击.exe文件,按照提示安装。OS X8 在浏览器中打开/。9 点击“CRAN”。然后会看到按国家排序的镜像站点列表。10 就近选择一个镜像站点。11 点击“MacOS X”。12 在“Files”中点击最新版R的.pkg文件,下载。13 下载完成后,双击.okg文件,按照提示安装。Linux或Unix主要的Linux发行版都有安装R的包。下表中是是一些例子:发行版包名称Ubuntu或Debianr-baseRed Hat或FedoraR.i386SuseR-base用系统的包管理器下载并安装R的软件包。这通常都需要root密码或者是sudo权限,或者也可以要系统管理员来安装。讨论在Windows和OS X上安装R都是很简单的,因为相应的安装包都是预编译好的。只需要根据安装程序的提示一步步地安装即可。CRAN的网页上也提供了跟安装有关的资源,例如常见问题(FAQ)和针对某些特殊情况的提示(“如何在Windows Vista上安装R?”(“How to install R when using Windows Vista?”),这些都挺有用的。理论上来说,在Linux或Unix上有两种安装R的方法:安装某个发行版的软件包,或是自己编译源代码。在实际使用中,安装软件包是更好的选择。各个发行版所提供的软件包在安装和随后的升级等方面都更加方便。在Ubuntu和Debian中,是用apt-get下载和安装R。需要用sudo命令获得必要的权限:代码1$sudoapt-getinstallr-base在Red Hat和Fedora则是用yum:代码1$sudoyuminstallR.i386大部分的系统还提供了更加方便的图形化包管理器。除了基础包,笔者还建议读者把文档包也装上。例如,在我的Ubuntu机器上,我安装了r-base-html(因为我喜欢阅读带超链接的文档)和r-doc-html两个包,这样就将R的用户手册安装到了本地:代码1$sudoapt-getinstallr-base-html r-doc-html有些Linux的软件库中还有一些CRAN上的R软件包。我没用这些软件包,因为我更喜欢直接从CRAN上下载这些软件包的最新版。在个别情况下,读者有可能需要自己从源代码编译R:有可能是在使用不被支持的Unix版本,或是在性能和配置方面有特殊的考量。Linux和Unix上的编译过程是非常标准化的。从CRAN镜像站点的首页上下载压缩包,压缩包的名字一般是R-2.12.1.tar.gz,只是其中的2.12.1会被最新的版本号代替。解压这个压缩包,然后根据其中的INSTALL文件的提示进行编译。扩展阅读R in a Nutshell一书中对R的下载和安装有更加详细的介绍,包括如何在Windows和OS X上编译R。但有关R的安装的最强秘笈还是CRAN上的R Installation and Administration,其中介绍了如何在各种各样的操作系统上编译和安装R。这一招是关于如何安装基础包的。安装CRAN上的其他包则是用install.packages函数。关于作者陈钢, 华大基因, 研究员长沙土鳖,Linux系统初级管理员,Perl入门级程序员,R菜鸟,LaTeX爱好者,Python学习者,业余Web开发人员,生物信息学和系统生物学门外汉Blog 豆瓣 新浪微博向文章付费 请作者吃饭相关文章14 RSPerl:在Perl里面调用R15 一份R培训的提纲16 从R中调用Cytoscape绘制复杂网络17 R中的公式:使用18 翻译R入门25招 第9招:用列数据初始化数据框第2招:获取函数的帮助问题要获得安装在自己电脑上的某个函数的帮助信息。解决方案用help显示函数的文档:代码1 help(functionname)用args了解该函数的参数:代码1 args(functionname)用example察看函数的使用例子:代码1 example(functionname)讨论本书中出现了各种各样的函数。在有限的篇幅里不可能面面俱到地介绍各个R函数。笔者强烈建议读者自己阅读感兴趣的函数的帮助文件。帮助文件中所提供的信息是非常有用的。如果想要了解mean函数,可以这样使用help函数:代码1 help(mean)R会新开一个窗口显示帮助文档,或者是在控制台中显示帮助文档,具体的显示方式取决于读者所使用的操作系统。help命令的一个快捷方式是?号(问号),然后在后面加上函数的名称:代码1 ?mean如果只是想知道函数有哪些参数,顺序是怎样安排的,就可以用args函数:代码123456 args(mean)function (x, .)NULL args(sd)function (x, na.rm =FALSE)NULLargs函数的第一行输出是函数调用的概要。对于mean函数,概要中显示的是其唯一的参数,x,这是一个数值向量。对于sd函数,概要中首先也是一个同样的向量,x,还有另一个名为na.rm的可选参数。(读者可以忽略第二行输出,通常都是NULL。)大部分函数的文档的末尾都会有例子。在R里面可以直接运行这个例子,演示函数的功能。例如,mean函数的文档中就有几个例子。读者不必自己输入这些例子。用example函数就能看到这些例子的运行结果:代码123456789 example(mean) mean x - c(0:10, 50)mean xm - mean(x)mean c(xm, mean(x, trim = 0.1)1 8.75 5.50mean mean(USArrests, trim=0.2) Murder Assault UrbanPop Rape 7.42 167.60 66.20 20.16用户只需要输入example(mean),R会负责运行文档中的例子,并显示结果。关于作者陈钢, 华大基因, 研究员长沙土鳖,Linux系统初级管理员,Perl入门级程序员,R菜鸟,LaTeX爱好者,Python学习者,业余Web开发人员,生物信息学和系统生物学门外汉Blog 豆瓣 新浪微博向文章付费 请作者吃饭相关文章1 翻译R入门25招,第13招:比例的置信区间2 翻译R入门25招,第25招:访问包中的函数3 RSPerl:在Perl里面调用R4 翻译R入门25招 第3招:查看R的文档5 翻译R入门25招 第7招:创建向量第3招:查看R的文档Posted on 2011年4月13日 by 陈钢问题要阅读R附带的文档。解决方案执行help.start函数可以看到文档的目录:代码1 help.start()这里有链接指向所有已安装的文档。讨论R本身都附带了上千页内容丰富的文档。在安装其它的包时,相应的文档也会安装到电脑上。用help.start函数可以很方便的浏览这些文档,该函数会打开一个浏览器窗口,显示出最顶层的目录,见图1-1。图1-1 R文档目录在References部分中有两个链接是特别有用的: Packages点击这个链接能看到所有已经安装的包,包括基础包和额外安装的包。点击各个包的名称,就能看到其中的函数和数据集。 Search Engine & Keyword这是一个简单的搜索引擎,可以用关键字搜索文档。这里还有一些按主题组织的常见关键字,点击这些关键字能看到与其相关的页面。扩展阅读本地计算机上的文档其实跟R项目网站上的文档是一样的,网站上的文档经常会更新。关于作者陈钢, 华大基因, 研究员长沙土鳖,Linux系统初级管理员,Perl入门级程序员,R菜鸟,LaTeX爱好者,Python学习者,业余Web开发人员,生物信息学和系统生物学门外汉Blog 豆瓣 新浪微博向文章付费 请作者吃饭相关文章1 翻译R入门25招,第16招:画散点图2 翻译R入门25招,第19招:画直方图3 翻译R入门25招,第17招:画柱状图4 翻译R入门25招,第23招:检查线性回归5 翻译R入门25招 第4招:在网上搜索帮助信息第4招:在网上搜索帮助信息Posted on 2011年4月19日 by 陈钢问题在网络上搜索跟R有关的信息和问题解答。解决方案在R中,可以用RSiteSearch函数搜索关键字或短语:代码1 RSiteSearch(key phrase)如果用浏览器的话,可以用这些网站搜索R相关的信息: 这是一个针对跟R有关的网站的Google自定义搜索。 Stack Overflow是一个具有搜索功能的Q&A网站,主要是面向一些编程方面的问题,例如数据结构、编码和图形等。 Stack Exchange上的统计分析(Statistical Analysis)区也是一个有搜索功能的Q&A网站,但这个网站更加偏向于统计,而不是编程。讨论RSiteSearch函数会打开一个浏览器窗口,并打开R项目网站的搜索引擎。在这里能看到一个可以继续优化的初始搜索结果。例如,下面这个命令会搜索“canonical correlation”:代码1 RSiteSearch(canonical correlation)这非常不方便,不用离开R,就可以完成一些快速的搜索。但是,这个搜索只局限于R的文档和邮件列表的存档。RS提供了范围更广的搜索。RSeek利用了Google搜索引擎的强大功能,但专注于跟R相关的网站。所以,用RSeek不会像在一般的Google中那样搜出一大堆无关的的搜索结果。RS最给力的地方是其搜索结果的组织非常直观方便。图1-2 RS的搜索结果如1-2展示了在RS中搜索“canonical correlation”的搜索结果。网页的左侧是从各个R网站中搜索出来的内容。网页的右侧的标签就是将这些搜索结果组织成如下几个类: Introduction,简介 Task Views,任务视图 Support Lists,支持列表 Functions,函数 Books,书 Blogs,博客 Related Tools,相关的工具例如,点击Introductions标签,就能看到各种教程。Task Views标签中则是跟搜索词有关的Task View。类似的,Functions标签中的链接则是指向相关的R函数。这是一种组织搜索结果的好办法。Stack Overflow也被称为Q&A网站,意思就是任何人可以在网站上提问,有经验的用户则会回答问题一个问题通常会有多个答案。读者给答案投票,最好的答案就会逐步地升到顶部。这样就构成了一个能搜索的庞大的Q&A对话数据库。Stack Overflow显然是面向问题的,而且上面的话题通常更侧重于R的程序设计。Stack Exchange(不是Overflow)有一个专门的Statistical Analysis(统计分析)分区。这里更关注的是统计,而不是编程。所以,如果读者的问题更侧重于一般的统计学而不是R本身的话,可以到这里来提问。扩展阅读如果找到了有用的软件包,用install.packages函数就能将软件包安装到电脑上。关于作者陈钢, 华大基因, 研究员长沙土鳖,Linux系统初级管理员,Perl入门级程序员,R菜鸟,LaTeX爱好者,Python学习者,业余Web开发人员,生物信息学和系统生物学门外汉Blog 豆瓣 新浪微博向文章付费 请作者吃饭相关文章1 翻译R入门25招,第15招:检验相关性的显著性2 翻译R入门25招 第3招:查看R的文档3 翻译R入门25招,第18招:画箱图4 翻译R入门25招,第16招:画散点图5 翻译R入门25招,第23招:检查线性回归第5招:读取表格数据文件Posted on 2011年4月27日 by 陈钢问题读取含有数据表格的文本文件。解决方案用read.table函数,该函数会返回一个数据框(data frame):代码1 dfrm - read.table(filename.txt)讨论表格数据文件是很常见的。这是一种格式简单的文本文件: 每一行是一条记录 在每条记录中,各个字段之间都用一个字符分给,例如空格、制表符、逗号、分号等 每条记录的字段的数量是一样的这种格式比固定宽度的格式更加灵活,每个字段的位置不再需要对齐。下面就是一个名为statisticians.txt的表格文件,是用空格符分割字段的:代码12345Fisher R.A. 1890 1962Pearson Karl 1857 1936Cox Gertrude 1900 1978Yates Frank 1902 1994Smith Kirstine 1878 1939read.table函数就是用来读取这种文件的。缺省情况下,该函数认为数据字段是由空白(空格或制表符)分割的:代码12345678 dfrm - read.table(statisticians.txt) print(dfrm) V1 V2 V3 V41 Fisher R.A. 1890 19622 Pearson Karl 1857 19363 Cox Gertrude 1900 19784 Yates Frank 1902 19945 Smith Kirstine 1878 1939如果不是用空白分割符,可以用用sep参数指定分隔符。例如,如果字段分隔符是冒号(:),就可以这样读取:代码1 dfrm - read.table(statisticians.txt, sep=:)从输出中看不出什么问题,但实际上read.table会把姓和名视作factor,而不是字符串。我们可以查看一下这两列的class:代码12 class(dfrm$V1)1 factor为了不让read.table将字符串视为factor,把stringAsFactor参数设为FALSE:代码123 dfrm - read.table(statisticians.txt, stringsAsFactor=FALSE) class(dfrm$V1)1 character现在第一列的类型就是字符了,而不是factor。如果文件中包含“NA”,read.table函数会认为这个值是缺失的,并将其转化成NA。你自己的数据文件也可以用不同的字符串来表示缺失值,用na.strings参数来指定。例如在SAS传统中,缺失值就是用.表示的。我们可以这样来读取这样的数据:代码1 dfrm - read.table(filename.txt, na.strings=.)我非常喜欢自描述的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论