社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

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

生信技能树 • 4 年前 • 868 次点击  


我们的学习班非常固定,就是生物信息学入门,传授基于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
 
868 次点击