专栏首页生信技能树服务器被关机,不妨试试看用你的Mac电脑跑NGS流程

服务器被关机,不妨试试看用你的Mac电脑跑NGS流程

前面我在生信技能树提到过:没有docker我真的不想动这样的生信软件,引起了很多生信工程师的共鸣,大家基本上都在软件安装方面踩坑过,都是泪。在生信菜鸟团也有关于生物信息学环境搭建的讨论

现在我就分享一下我自己mac电脑的conda等生物信息学环境配置,提高大家的生产力!

当然了,大部分情况下我是不会使用我的mac来进行ngs组学数据分析的,因为服务器的计算资源配置是我mac的100倍以上,而且运行ngs组学数据会占用mac大部分资源耽误办公。

(特殊情况下,大家的服务器都会关闭,所以有可能是不得不使用自己的mac跑数据分析流程哦)

使用conda管理软件

因为anaconda太大,所以我们选择器精简版miniconda即可,约50M,选择清华站点下载,快速方便

  • https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
  • https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/

我在2020-03-30操作,下载最新版(你看到教程指不定是哪一年了,自己寻找最新版),代码是:

curl https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_4.8.2-MacOSX-x86_64.sh -o Miniconda3-py38_4.8.2-MacOSX-x86_64.sh
# 使用bash Miniconda3-py38_4.8.2-MacOSX-x86_64.sh即可安装,全部默认即可
# 在mac电脑,安装成功之后需要 source .bash_profile 激活conda 

可以看到,默认的是py38 (Python 3.8已于2019年10月14日发布。)感兴趣的自己阅读文档:https://docs.python.org/zh-cn/3.8/whatsnew/3.8.html

在Anaconda 镜像使用帮助的页面,告诉了我们如何配置好conda。(仅限于中国大陆的确,设置清华镜像,海外用户无需如此麻烦!)

各系统都可以通过修改用户目录下的 .condarc 文件。Windows 用户无法直接创建名为 .condarc 的文件,可先执行 conda config --set show_channel_urls yes 生成该文件之后再修改。修改后的内容如下:

channels:
  - defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

即配置好conda的清华镜像!如果你找不到名为 .condarc 的文件,也不知道如何修改文件,也可以使用命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/

这个时候,你应该是能看出规律了,你的 conda config --add channels 命令所添加的url,就会被写入名为 .condarc 的文件。

使用conda配置的python的pip来安装包

其实有一些基于python的软件,本质上就是一个python的包,比如multiqc软件。

# 我们的conda的py38配套的pip,版本是20,所以可以永久性设置镜像
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 接下来安装任何python包,都是一句话解决战斗
pip install multiqc

pip 会自动解决依赖问题;

Installing collected packages: click, humanfriendly, coloredlogs, future, MarkupSafe, jinja2, lzstring, markdown, cycler, kiwisolver, pyparsing, python-dateutil, numpy, matplotlib, decorator, networkx, pyyaml, simplejson, colormath, spectra, multiqc

只要是自动,就会有报错的可能性, 因为对你来说是黑箱过程,所以万一遇到报错,就推断重来即可,多试几次。

配置好了各大NGS组学的conda环境后

接下来就学习我好几年前全部免费共享在b站的技术流程的视频教程,如果你没有看,而且我同步分享了视频配套讲义和教辅材料;

  • 学徒第1月,基础知识介绍掌握:文档链接:https://mubu.com/doc/38tEycfrQg 密码:vl3q
  • 学徒第2月,RNA-seq数据分析实战训练:文档链接:https://mubu.com/doc/38y7pmgzLg 密码:p6fo
  • 学徒第3月,WES数据分析实战训练:文档链接:https://mubu.com/doc/1iDucLlG5g 密码:7uch
  • 学徒第4月,ChIP-seq数据分析实战训练:文档链接:https://mubu.com/doc/11taEb9ZYg 密码:wk29

也为每个组学视频课程,设置了练习题,不知道大家是否有学习呢?

基本上每个过来我这边学习一个月以上的学徒我都会让他们学习多种组学(围绕着中心法则),而且有了Linux基础和R语言能力后, 跟着我们的视频教程很容易就学会基础流程,毫无压力。

比如对安装转录组环境,可以查看哪些软件可以安装:https://bioconda.github.io/

conda create -n rna   -y 
source activate rna
# source deactivate
# conda install -y -c bioconda fastqc multiqc trim-galore bwa samtools bedtools deeptools qualimap
### 到这里就已经有 1.9G了,感觉有点尴尬,如果拿到笔记本电脑空间不够
conda install -y  salmon star hisat2 bowtie2 rsem subread   -c bioconda
# 相应的conda子环境里面 perl/python/R 都被改变了。

这样自己写好的转录组分析shell流程就可以顺利运行啦!!!

再比如前面提到的hisat2+stringtie流程,主要是lncRNA-seq数据分析之新lncRNA鉴定和注释

参考:猪狗的参考基因组构建索引,还有使用ebi数据库直接下载fastq测序数据 ,做好准备工作,然后使用conda安装一些软件,建立好目录

conda create -n lncRNA
conda activate lncRNA
conda install -y -c  bioconda hisat2 stringtie samtools fastp   gffcompare
# conda search gffcompare
mkdir 0.qc 1.raw_fq 2.clean_fq 3.hisat2_bams 4.stringtie_gtfs 5.lncRNA

流程基本上3个软件,衔接好即可!

conda activate lncRNA
index=/home/jmzeng/reference/genome/pig/pig_hisat2
gtf=/home/jmzeng/reference/genome/pig/Sus_scrofa.Sscrofa11.1.99.chr.gtf

fastp -i 1.raw_fq/${id}_1.fastq.gz \
                    -o 2.clean_fq/${id}_1.fastp.fq.gz \
                    -I 1.raw_fq/${id}_2.fastq.gz \
                    -O 2.clean_fq/${id}_2.fastp.fq.gz \
                    -l 36 -q 20 --compression=6 \
                    -R ${id} -h ${id}.html
fq1=2.clean_fq/${id}_1.fastp.fq.gz
fq2=2.clean_fq/${id}_2.fastp.fq.gz
hisat2 -p 4 -x $index -1  $fq1 -2  $fq2 | \
samtools sort -@ 4  -o 3.hisat2_bams/$sample.bam -

stringtie -p 4 -G $gtf \
            -o 4.stringtie_gtfs/$sample.gtf  \
            -l  $sample 3.hisat2_bams/$sample.bam                 

当然,你需要自己去搜索理解软件的参数啦。

还等什么了,赶紧把自己的mac用起来吧,基本上的NGS数据上游分析流程都是可以hold住的哈!毕竟也是好几万人民币的电脑啊!

本文分享自微信公众号 - 生信技能树(biotrainee),作者:生信技能树

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 测试conda镜像问题

    最近(2019-05-08 )很多人反映conda镜像挂掉的问题,所以我有必要给粉丝测试一下:

    生信技能树
  • 阅读量过万的conda使用总结,跨越一年的更新

    conda分为anaconda和miniconda。anaconda是包含一些常用包的版本(这里的常用不代表你常用 微笑.jpg),miniconda则是精简版...

    生信技能树
  • conda第一步,你确定安装成功了吗?

    2 安装过一款软件,我特别想知道他都载入了环境什么命令,能不能从服务器上查询到,这样的话我就不用记住安装过哪个软件,需要调取哪个命令的帮助文档啦???

    生信技能树
  • Nature Method:Bioconda解决生物软件安装的烦恼

    其它之前很多人都用过Conda,特别是生信科学家近两年都在用Bioconda,那叫一个妙不可言、根本停不下来。这里我郑重通知大家,Bioconda于今年6月2号...

    生信宝典
  • 【新手向】PyTorch实践之环境配置

    conda 是开源包(packages)和虚拟环境(environment)的管理系统。

    BBuf
  • 数据透视表多表合并|字段合并

    今天要跟大家分享的内容是数据透视表多表合并——字段合并! 因为之前一直都没有琢磨出来怎么使用数据透视表做横向合并(字段合并),总觉得关于表合并绍的不够完整,最近...

    数据小磨坊
  • pytorch学习笔记(二十一): 使用 pack_padded_sequence

    下面附上一张 pack_padded_sequence 原理图(其实只是将三维的输入去掉PAD的部分搞成了二维的。在RNN前向的时候,根据batch_size...

    ke1th
  • 【PMP】四、项目整合管理

    项目整合管理是项目管理的核心,是为了实现项目各要素之间的相互协调,并在相互矛盾,相互竞争的目标中寻找最佳平衡点。之所以需要整合管理,是因为项目的结合部最容易出问...

    心跳包
  • 2017年关于数据科学六大预言

    大数据文摘
  • nginx 端口转发

    这两天在写 go 项目, 一个 HTTP 服务器. 之前写的是 php 项目, nginx 监听80端口, 根据域名将请求分配给不同项目. 现在换了 go, 自...

    烟草的香味

扫码关注云+社区

领取腾讯云代金券