R语言入门与实践
上QQ阅读APP看书,第一时间看更新

1.7 脚本

创建了roll2函数之后,如果想编辑它,应该怎么办呢?当然,你可以回到控制台中,重新键入roll2中的每一行代码。但是,如果有一份代码草稿,那么编辑起来就会容易得多。你可以通过R脚本(script)创建代码草稿。R脚本就是一个用来保存R代码的纯文本文件。在RStudio中,你可以通过在菜单栏中依次点击File > New File > R Script来创建一个新的R脚本。RStudio将在控制台面板上方打开一个全新的脚本,如图1-7所示。

图1-7:当创建一个R脚本时(通过在菜单栏中依次点击File > New File > R Script), RStudio会在控制台上方拉出第四个面板,你可以在其中编写和编辑代码

强烈建议大家在运行代码之前,使用脚本的形式编写和编辑自己的程序。为什么呢?因为养成这样的习惯之后,你的所有工作都有案可查,并且具有很强的可再现性。当你完成一天的编程工作后,可以将脚本保存起来,第二天可以在前一天的基础上继续编写程序。脚本非常便于编辑和校对程序,而且便于分享给他人。要保存一段脚本,单击脚本面板,然后在菜单栏中选择File > Save As即可。

RStudio内置了很多功能,使得用脚本编程变得更为顺手。譬如说,要想自动运行脚本中的某一行代码,只需单击脚本面板上方的Run按钮即可,如图1-8所示。

图1-8:要想运行脚本中的一段代码,只需选中此段代码再单击脚本面板上方的Run按钮即可。如果想运行脚本中的所有代码,可以单击上方的Source按钮

R默认会运行鼠标光标所在的那一行代码。如果你在脚本中选中了一整段代码,R便会运行这段代码。或者,通过单击窗口上方的Source按钮,可以运行脚本中的所有代码。如果不喜欢用鼠标,可以通过Ctrl + Enter快捷键组合实现Run按钮的功能。在Mac上,相应的快捷键组合是Command + Return。

就算你现在还不相信脚本是多么有用,我保证你很快就会信服。在控制台的单行命令行中编写多行代码是件十分痛苦的事情。在进入下一章之前,现在就从这份痛苦中解脱出来,开始编写你的第一个R脚本吧。

提取函数

RStudio内置了创建函数的工具。使用该工具时,你只需将R脚本中想转换为函数的对应代码段选中,然后在菜单栏中选择Code > Extract Function即可。RStudio会询问你想要给该函数起什么名称,然后将选中的代码段用function函数包装起来。它会自动检查代码段中没有定义的变量,并将它们设置为该函数的参数。

提取函数之后,最好复查一下RStudio所完成的是否是你想要的。因为RStudio会认为你的代码段中是没有错误的,如果这样提取出来的函数的功能与你预想的不同,那么很可能是原来的代码有问题。