R安装同名包的替代方法

2018/02/24

Categories: R Tags: package recharts rename

由于package命名习惯及各种历史原因,不同开发者对类似功能的package命名有可能一样,或者package的更新不是兼容之前老版本。比如本人之前使用的R package recharts ,目前这个包换到统计之都维护更新

解决方案:是package的名称不一致,针对github操作,其他类似

  devtools::install_github('madlogos/recharts') # 原package
  # devtools::install_github('xwydq/recharts-1') 已经存在recharts仓库所以追加后缀1
  git clone git@github.com:xwydq/recharts-1.git
  # recharts 替换为 rechartsX
  sed -i "s/recharts/rechartsX/g" `grep recharts -rl ./test/recharts-1`

  # git相关配置不能修改(还原),不让push失败
  sed -i "s/rechartsX/recharts/g" `grep rechartsX -rl ./test/recharts-1/.git`

  git commit -am "rename X"
  git push
  devtools::install_github('xwydq/recharts-1')
  library(rechartsX)
  # 一般情况下可以正常使用,如果原包中有函数名包含recharts,那直接全局替换会有些问题