很抱歉,如果以前已经问过这个问题,但找不到答案。

假设我在R中编写了一个小函数

add2<-function(a){
return(a+2)
}


我将其另存为add2.R在我的主目录(或任何目录)中。我如何找到R?

> add2(4)
Error: could not find function "add2"


我知道我可以打开脚本,将其复制/粘贴到控制台中,运行它,然后它可以工作。但是如何将其内置,所以如果我打开和关闭R,它仍然可以运行而无需我复制和粘贴它?

最佳答案

一种轻巧的选择:

dump("add2", file="myFunction.R")

## Then in a subsequent R session
source("myFunction.R")


替代:

save("add2", file="myFunction.Rdata")

## Then just double click on "myFunction.Rdata" to open
## an R session with add2() already in it

## You can also import the function to any other R session with
load("myFunction.Rdata")


在准备好将函数打包到自己的私有包中之前,将它们存储在组织良好的source()就绪文本文件中(如上面的第一个示例一样)可能是最好的策略。有关经验丰富的useR如何将该方法付诸实践的一些示例,请参见this highly up-voted SO question

10-06 05:04