查看 R 包的源代码
有没有一种简单的方法可以从交互式环境中查看 R 包(或包中的方法)的源代码?
Is there an easy way to view the source of an R package (or a method in a package), from within the interactive environment?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
只需输入不带括号的函数/方法的名称:
另请参阅R 新闻第 6/4 卷,2006 年 10 月。
Just enter the name of a function/method without parentheses:
See also R-Help Desk - Accessing the Sources in R News Volume 6/4, October 2006.
如何找到源代码取决于函数的类型。请参阅我对此相关问题的回答。
正如rcs指出的,如果你想指定一个包,你可以使用
::
。并非包中的所有函数都会被导出(即公开可用);对于这些,您需要使用
:::
。How you find the source code depends on the type of function. See my answer to this related question.
As rcs pointed out, if you want to specify a package, you can use
::
.Not all functions from a package will be exported (i.e. made publically available); for these you need to use
:::
.要找出您想要查看的方法,请编写
methods(funcOfInterest)
有时,仅
print(funcOfInterest.class)
是不够的。然后尝试 print(getAnywhere(funcOfInterest.class)) 。To find out which methods you want to see, write
methods(funcOfInterest)
Sometimes it does not suffice to
print(funcOfInterest.class)
. Tryprint(getAnywhere(funcOfInterest.class))
then.从 https://cloud.r-project.org/src/contrib 并用您最喜欢的编辑器打开它。找到函数定义(您可以使用 grep 来实现)。有时您也可以找到有用的介绍。
Download package source from https://cloud.r-project.org/src/contrib and open it with your favorite editor. Find the function definition (you can use
grep
for that). Sometimes you can find a useful introduction as well.