gpt4 book ai didi

r - 在特定命名空间中定义函数

转载 作者:行者123 更新时间:2023-12-04 09:41:13 25 4
gpt4 key购买 nike

我创建了一个包“mypackage”(附加了一个命名空间“mypackage”)
在这个包中有一个我可以调用的函数

'myfunction'

或者
'mypackage::myfunction'

现在我想用另一个版本(更新)替换 myfunction。

我曾经做过
source(path)

其中 path 是定义了更新的“myfunction”的文件的路径

现在我转移到 R 2.14.x 并且这个系统不起作用,因为显然 R 首先检查同一个命名空间中是否有一个函数,如果有一个,它使用这个而不是其他的。

我的问题:如何将更新的函数推送到与包一相同的命名空间中?

最佳答案

?assignInNamespace .例如

assignInNamespace("myfunction", foo, "mypackage")

将分配对象 foo到名为 "myfunction" 的对象在命名空间 "mypackage" . foo可以是任何你想要的对象,甚至 myfunction但您需要小心确保您调用 mypackage::myfunction如果你也有 myfunction在全局环境/工作区中。

关于r - 在特定命名空间中定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8501906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com