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

如何在R脚本中调用Fork后自定义修改的GitHub R包版本

R调用个人Fork修改后的GitHub R包实现方案

你预期的library(username/textshaping)这种带用户名前缀的加载语法R原生并不支持,但是有两种稳定可落地的方式,完全可以满足你使用自定义修改版本包的需求:

  • 直接覆盖安装自定义版本(最常用,适合不需要同时保留官方原版的场景)
    先安装通用的GitHub R包安装工具remotes,在R控制台执行:
    install.packages("remotes")
    安装完成后,替换下方命令中的username为你自己的GitHub账号名,直接安装你Fork后修改的仓库即可:
    remotes::install_github("username/textshaping")
    注意:如果本地此前已经安装过CRAN官方版本的textshaping,这条命令会直接将其覆盖为你修改的自定义版本。后续加载、调用包的方式和使用普通CRAN包完全一致:
    # 加载自定义版本的包
    library(textshaping)
    # 调用内置函数
    text_width("Seven sea's seacod")
    # 也可以用::显式指定包调用
    textshaping::text_width("Seven sea's seacod")
    
    如果后续需要切回官方版本,直接执行install.packages("textshaping")从CRAN安装覆盖即可。
  • 重命名自定义包实现多版本共存(适合需要同时使用官方版和修改版的场景)
    如果不想覆盖本地的官方原版包,可以先进入你Fork的仓库,修改包根目录下DESCRIPTION文件的Package字段,比如把原有的Package: textshaping改成Package: textshaping_modded,提交修改后再用remotes::install_github("username/textshaping")安装,就能实现两个版本共存,调用时可以明确区分:
    # 加载官方CRAN版本
    library(textshaping)
    # 加载你修改的自定义版本
    library(textshaping_modded)
    # 分别调用两个版本的同名函数
    textshaping::text_width("test string")
    textshaping_modded::text_width("test string")
    

你之前查阅的githubinstall包核心逻辑也是拉取GitHub上的R包源码完成本地安装,和remotes的实现逻辑没有本质差异,不需要额外依赖该包也能完成上述操作。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 23:51:21