You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取通过devtools::load_all加载的开发版R包的命名空间?

获取开发版R包的命名空间方法

已安装R包的命名空间获取方式

对于已安装完成的R包,我们可以通过以下代码获取其命名空间:

base::getNamespace('stats')
base::getNamespace('MASS')

开发版R包的疑问

如果是通过devtools::load_all(".")加载的本地自研开发版R包,有没有功能类似的函数可以获取它的命名空间?我们尝试过以下写法,但无法生效:

base::getNamespace('.') # Error: there is no package called ‘.’

可行方法总结

经过讨论,整理出以下有效实现方式:

  • 推荐方法:借助pkgload包获取包名后调用getNamespace
    getNamespace(pkgload::pkg_name('.')) # works!
    
  • 备选方法:若包的目录名与包名一致,可直接使用目录名
    getNamespace(basename(normalizePath('.'))) # works, if directory name is the same as package name
    
  • 避坑提示:直接传入规范化路径会报错
    getNamespace(normalizePath('.')) # error
    

内容的提问来源于stack exchange,提问作者tingtingzhan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 11:02:04