我正在编写我的第一个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。感谢好建议!
答案 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
脚本。
结合自述文件中的解释性说明,这看起来就像我追求的那样。问题解决了或者我没有看到明显的东西?我是违反惯例/行为/良好做法?