前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >套娃一样的conda和r

套娃一样的conda和r

作者头像
生信技能树
发布2022-01-10 08:40:12
1K0
发布2022-01-10 08:40:12
举报
文章被收录于专栏:生信技能树

最近有粉丝提问,他在R里面安装了conda,但是不知道如何启动和配置那个conda,让我非常吃惊。

一般来说, 假如大家有一些R包安装非常困难,或者某个数据分析的流程基于了一系列R包,我们会使用conda来安装R语言及其配套的R包,比如:singlecelltk和singlecellsignalr,很简单的几句话代码,主要是安装适合自己用户的R语言环境及相关的R包:

代码语言:javascript
复制
conda create -n r r-essentials r-base zlib pandoc
conda activate r
conda install -c bioconda bioconductor-singlecelltk
conda install -c bioconda bioconductor-singlecellsignalr
which R
ls -lh $HOME/miniconda3/envs/r

这个时候,你无需理会你的服务器的R语言版本或者R包啦,因为你每次都会 conda activate r 激活你自己的R语言环境哦。我们在这个环境里面安装了 bioconductor的 singlecelltk和singlecellsignalr,因为它们本身就会依赖大量的其它R语言包,所以理论上这个时候你的这个 conda activate r 小环境,已经是比较好的可以用来做单细胞转录组数据分析的啦!

两个工具的主页分别是:

  • https://bioconductor.org/packages/3.14/bioc/vignettes/SingleCellSignalR/inst/doc/UsersGuide.html
  • https://bioconductor.org/packages/3.14/bioc/html/singleCellTK.html

但是提问的粉丝的意思是,他其实本来是不想使用conda这个东西,奈何有一些R包,它依赖很多操作系统的外部环境,所以这个R包就自己给他的电脑安装了一个conda,所以他就不知道如何调用这个conda了。我看了看他的报错如下所示:

代码语言:javascript
复制
CondaError: KeyboardInterrupt

Exception ignored in: <module 'threading' from '/Users/test/Library/r-miniconda/lib/python3.9/threading.py'>
Traceback (most recent call last):
  File "/Users/test/Library/r-miniconda/lib/python3.9/threading.py", line 1415, in _shutdown
    atexit_call()
  File "/Users/test/Library/r-miniconda/lib/python3.9/concurrent/futures/thread.py", line 31, in _python_exit
    t.join()
  File "/Users/test/Library/r-miniconda/lib/python3.9/threading.py", line 1033, in join
    self._wait_for_tstate_lock()
  File "/Users/test/Library/r-miniconda/lib/python3.9/threading.py", line 1049, in _wait_for_tstate_lock
    elif lock.acquire(block, timeout):

这个其实是conda常见的问题,很容易通过修改镜像的方式解决掉,但前提是你知道自己的conda在哪,而提问的粉丝他的conda其实并不是他自己的安装的, 是R语言帮助他安装的,所以他陷入了一个套娃。其实报错信息里面提示了他的conda的全路径,所以进入终端后,使用下面的代码即可:

代码语言:javascript
复制
/Users/test/Library/r-miniconda/bin/conda --help
conda='/Users/jmzeng/Library/r-miniconda/bin/conda'
$conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
$conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
$conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
$conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
$conda config --set show_channel_urls yes
# $conda  update --all # 非必须

/Users/test/Library/r-miniconda/bin/pip  install umap-learn
#  Downloading numpy-1.21.5-cp39-cp39-macosx_10_9_x86_64.whl (17.0 MB) 

网络这个问题啊,有时候确实很闹心。我以为是conda设置好镜像就可以了,结果使用它里面的Python的配套的pip下载,仍然是需要设置镜像,否则速度仍然是很可怜:

可怜的网络

所以正确的代码应该是:

代码语言:javascript
复制
/Users/test/Library/r-miniconda/bin/pip   instal  -i https://pypi.tuna.tsinghua.edu.cn/simple  l umap-learn 

增加了 -i https://pypi.tuna.tsinghua.edu.cn/simple这样的镜像设置。

再怎么强调生物信息学数据分析学习过程的计算机基础知识的打磨都不为过,我把它粗略的分成基于R语言的统计可视化,以及基于Linux的NGS数据处理

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档