看到很多的R语言教材,介绍的编辑器或者IDE都是很简陋的那些,就没有见到有人提到RStudio。对于不使用Emacs的人来说,RStudio真的是一个很好很好的IDE。
http://www.rstudio.org/ 在这里就可以下载了,还支持多平台,windows,Linux,Mac都能用,非常好。当然,它的好不仅是夸平台,还有许许多多的有点。下面我将详细介绍它。
下面就是它的主界面。
从图上可以看出,它总共有四个工作区域,左上是用来写代码的,左下也可以写代码,同时也是数据输出的地方。(记住,R语言是动态语言,写代码的形式有两种,一种是像写作文一样写很多,也就是像c这样的语言一样的代码,一种则是写一句就编译解释一句。左下就是写一句编译解释一句的工作区域。右上是workspace和历史记录,功能等下再介绍。右下有四个主要的功能,Files是查看当前workspace下的文件,Plots则是展示运算结果的图案,Packages则能展示系统已有的软件包,并且能勾选载入内存。Help则是可以查看帮助文档的。
下面从左上开始介绍起:
可以看到,其是具有代码高亮功能的,只是高亮的颜色有点儿少了。点击工具栏上的File,选择New,总共可以看到四种格式的文件,其他的我们可以不管,我们要的就是R Script这个,这样就能建立一个R语言的代码文件了。如图写好代码之后,右上角有个Run,这个Run如果直接点击,则是运行当前行,如果你先用鼠标在代码上选好要运行的部分,比如前面的五行,然后再点Run,就能一下运行完这五行了。Run旁边的按钮是Re-Run,就是重复一次上次的运行。再右边的那个source按钮,我倒是不知道用来做啥的。
点击一个发光的棒棒,可以出现如下的界面:
共有四个功能,可以对代码进行修正之类的,如果你要经常写R语言的代码,最好把这些快捷键记住,会方便很多的。它的左边是查找和替换功能。Source on Save最好把它勾上,可以让你的代码保存。
下面将右下部分:
右下部分就比较简单了,大部分人都是在windows下使用R语言的,安装R语言的时候都会自动一个Rgui编辑器,界面就和这个差不多。如果你把R语言加入到了环境变量里面去了,在命令行下输入R也能看到这个界面。在linux或者mac下的用户,安装了R语言之后,在终端输入R,然后Enter一下,就能看到这个界面的了,这里可以写代码,也能显示程序运行过程和结果。但是我一般不在这里写,一个是写好的代码不知道怎么保存,一个是一不小心一部分写错了,很多都要重来。
下面介绍左上部分,截图如下:
Value和Function都是上一次程序运行后,保存在.RData文件里面的值,Value一项中,保存的是程序运行过程中一些变量的值,我们可以通过鼠标点击,使它们显示出来,如图:
而Function则是可以让你方便的找到代码中的函数,同样也可以点击的,显示出来如图:
这样就能快速的查看某个函数的代码了,并且还能保存下来。R语言不是面向对象的语言,所以函数是可以一个一个分开来的。
界面工具栏的Load可以让你切换工作区,R语言是有工作区这个说法的,每个工作区都会有一个隐藏文件.RData, Save可以保存当前工作区,这个可以方便你换电脑工作等。import dataset则是可以导入格式按照R语言要求的数据作为数据集。Clear all可以将当前工作区的Value和Function清除干净。RStudio不会自动更新这个工作区的值,如果你要获得你要运行的代码的Value和Function,最好在运行前Clear all一下。
点击History,可以切换到历史记录界面,如下:
这些代码是之前运行过的代码,可以保存下来,也可以选择一部分,然后按To Console或者To Source,前者是将选择的代码送到右下那里去运行,后者是将代码送到右上的光标位置。最右的两个按钮,左边那个是清除选中的部分,右边的是清除全部。
下面介绍右下,右下的功能比较多:
这个是Files的界面,可以显示工作区内的文件,New Folder就是新建文件,Delete可以删除,Rename可以重命名,当然要做这些操作之前要先在要操作的文件左边勾选一下。More则提供了其他功能。
下面是Plot的界面:
图形可以随着这个工作区的变大而缩放。工具栏那也有一个Zoom,可以放大图片,Export则可以将图片导出,可以导入为图片,也可以到处为PDF,也能导入到剪切板上。导出为图片的界面如图:
image format处可以选择图片的格式,一般选择png,Directory可以选择保存的文件夹,File name可以输入图片的名字,width和Height可以输入图片的宽高。这个功能比较方便,不用那么麻烦得写几段代码来保存图片。
Package界面如下,可以显示已经import的包,也显示了你安装了的所有的包:
这里可以安装新的包,也可以升级各个包。同时点击包名字的链接,就能够看到该包的文档了,很方便的。
help界面就不详细介绍了,不过它可以很方便的搜索关键词,然后获得帮助,这个非常好,我经常用它来查帮助文档的。