如何将r脚本放入包中

时间:2015-12-02 13:52:41

标签: r package

我正在编写我的第一个R包,并使用roxygen2和添加的数据集进行了成功的构建。

但是,我还想提供一个示例脚本,我将如何使用r包中的函数。但我不知道该把它放在哪里。

假设我创建了msvcr90.dll。我已将我的函数脚本放在MyPackage文件夹中。假设我有:

/R

某处我还想在我的工作流程中加上一个脚本。假设我有一个文件foo1.R foo2.R foo3.R

MyWorkflow.R

我可以这样做吗?如果是的话,我该把它放在哪里?这是一个好的程序 - 或者通常不赞成?

感谢任何帮助或想法。 谢谢。 卡尔

修改

我查看了library(MyPackage) load(file='inData.R') # Loads indata variables A, B and C X=foo1(A) Y=foo2(X,B) Z=foo3(Y,C) demo/上的链接,但不了解exec/文件夹的内容。感谢你能澄清/举例说明/指出...的好用途。

如果我理解正确,我不是在寻找exec/example,因为如果没有用户调整(例如提供输入数据或路径),脚本不一定是可执行的。我“只是”想要添加一个示例脚本,显示我如何使用这些函数。

我意识到我应该潜入demo/的世界,但很难找到这样做的时间/精力/能量。

我还看到了vignettes文件夹。你能不能对这些选项的不同用途有所了解,或暗示他们使用它们的好例子(我经常发现的例子比阅读高于我的水平的解释性文字更具信息性 - 我经常感觉像是一个狗看着吊扇;)

将信息添加到GitHub README。感谢好建议!

2 个答案:

答案 0 :(得分:2)

您可以将其放在demo/exec/中,具体取决于脚本的格式。有关详细信息,请参阅here。我会提到工作流程以及它在README中的位置,如果您在Github上托管代码,您可以创建一个wiki来描述工作流并将脚本放在那里。这与nrussell在上面的评论中提到的类似。

答案 1 :(得分:1)

创建class TestClass(object): def __new__(cls, param): instance1 = object.__new__(cls) instance1.__init__(param) instance2 = object.__new__(cls) instance2.__init__(param) return instance1, instance2 def __init__(self, param): self.param = param 。建成时&重新加载,在库中创建了一个inst/Workflow_Example/workflow.R文件夹,其中包含Workflow_Example脚本。

结合自述文件中的解释性说明,这看起来就像我追求的那样。问题解决了或者我没有看到明显的东西?我是违反惯例/行为/良好做法?