Python社区  »  Git

一波三折终于安装上了托管在GitHub的几百M的R包

生信技能树 • 1 年前 • 365 次点击  


我们的学习班非常固定,就是生物信息学入门,传授基于Linux的NGS数据处理技巧,以及基于R语言的统计可视化。

好像很久没有发布学员笔记了,可能是因为自己写教程写的太勤奋了吧,不过确实也需要偶尔给其他朋友一下表现自己的机会哈!

其实初学者遇到的问题就那么多,有共性,有专业的团队协助解决,确实能少走不少弯路!


下面是六月学员的分享

最近学员参考了教程:https://mp.weixin.qq.com/s/vO-3_FbjsvqfAwCsn3A7Cw 来安装ArchR,目前ArchR托管在GitHub上。

学员目标:从github上安装ArchR包,由于网速不佳,选择本地安装的方式

第一步 从github下载安装包(git bash命令行下载):

这个其实就需要想办法了,因为使用git bash命令行下载仍然是从github下载,如果网速超级烂,其实也不可行。这个包好几百个M,可以使用https://gitee.com/作为中转站:

#因为是在个人笔记本上操作,所以采用git bash命令行下载
git clone https://github.com/GreenleafLab/ArchR.git

第二步 在R里面安装

原教程如下所示


敲入代码:

if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")
BiocManager::install(c("nabor","motifmatchr","chromVAR","ComplexHeatmap"))#依赖包的安装
install.packages("./ArchR/",repos = NULL)

首先发现报错:

第一次报错

看报错信息,应该是参数设置出现冲突,于是尝试将该参数去掉是否可行**(有点盲目,不可取)**

PS:其实这个时候学员的问题是,并没有在下载ArchR-master.zip的文件夹打开rstudio,就是没有工作环境的概念,相对路径和绝对路径不清楚。

结果出现新的报错:

第二次报错

回顾培训班的R包安装知识,这个报错可能是由于安装包名称错误或安装命令错误。因为第一次尝试本地安装,没有经验,所以将问题放到了交流群里。非常开心群里助教老师马上指出我的是命令错误,他建议我本地安装,尝试install_local命令,于是:

devtools::install_local("C:/Users/大米/Desktop/ArchR-master/ArchR-master.zip")

结果又报了新的错误:

第三次报错

看报错信息是依赖包安装过程中出现错误,无法写入C:/Program Files/R/R-3.6.1/library路径??有点懵逼。最后的报错的“非零退出”错误,google了一下也有很多种可能性,陷入迷茫。。。

PS :这个时候的无法写入,通常是文件夹权限问题,如果没有使用系统管理员权限打开R,就会遇到这样的麻烦,或者安装包的时候,可以指定安装路径。

于是转回最初,希望解决一开始的install.packages参数设置问题。综合网上的教程,尝试了新方法:

install.packages("C:/Users/大米/Desktop/ArchR-master/ArchR/",repos = NULL, type="source")

Bingo!

这里两个参数均很重要!路径也可以用Tab键补全,以减少错误。

注意

本地安装很多时候无法成功,是因为R包之间的依赖性很强,所以学会看报错信息,会提示有什么包未安装,则先安装依赖的包再继续

看到有方法可以查看某个包的依赖包,就是getDependencies函数

install.packages("gtools")
library(gtools)
getDependencies("ArchR")

但这个方法对于像ArchR这样刚开发出来的包并不适用,还是得学会看报错信息。

感悟

命令和参数设置均很重要,在对参数不了解的情况下,自行查看帮助文档来选择参数是较为困难的,还是应该先搜几篇教程看看,以迅速明白哪些参数必须设定。

学会看报错信息!

参考资料:

https://mp.weixin.qq.com/s/vO-3_FbjsvqfAwCsn3A7Cw

https://www.jianshu.com/p/c38f1b5a2b5c

文末友情推荐

要想真正入门生物信息学建议务必购买全套书籍,一点一滴攻克计算机基础知识,书单在:什么,生信入门全套书籍仅需160 。如果大家没有时间自行慢慢摸索着学习,可以考虑我们生信技能树官方举办的学习班:

如果你没有服务器的话,做NGS数据分析实战可能会有点勉强,建议考虑:每天不足一块钱,定制生信云送给你

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/71211
 
365 次点击  
分享到微博