由于实验室没有服务器,我只有一台iMac,跟之前学的时候已经有完善的服务器系统完全不一样,我需要在iMac上搭建环境用于分析数据。
0. 准备工作
16 G内存,1 TB硬盘,有terminal
第一部分 搭建环境
1.1 下载软件,构建环境变量
什么是环境变量?就是一个环境,里面有你想要的东西,不知道大家有没有遇到过快捷键冲突的,这就意味着很多软件的快捷键或者用法是一样的,如果同时启用很多软件可能会冲突。
下载软件只是下载,还需要安装,安装成功之后还需要打开才能使用,创建一个环境变量(相当于创建一个房间),将软件安装在该环境变量下之后(将软件都拖到一个房间),只要激活这个环境变量(打开这个房间的门),那么下面的软件就全部激活了,不需要一个一个的再打开。
# 创建新的文件夹
mkdir biosoft
cd biosoft
# 和Linux不同,Linux用的是wget来下载,而iMac用的是curl -O
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
bash Miniconda3-latest-MacOSX-x86_64.sh
yes
# 激活miniconda之后,构建新的环境变量
conda create -n rna python=2
y # 回答 yes
conda info --envs # 查看当前环境变量
source activate rna # 激活环境变量
1.2 安装相应软件
先读文献调研,得到转录组分析需要用到的软件列表;
- 质控
- <u>fastqc , multiqc</u>, trimmomatic, cutadapt ,<u>trim-galore</u>
- 比对
- star, <u>hisat2, bowtie2</u>, tophat, bwa, subread 我的电脑内存不够,star跑不起来
- 计数
- htseq, bedtools, deeptools, salmon, featureCount
如果你对一个软件不了解的话,那么安装之前在https://bioconda.github.io/recipes.html,检索该软件包是否存在,或者使用conda search packagename
进行检索。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
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 --set show_channel_urls yes
# 速度还挺快的,大约不到半分钟能安装一个软件
conda install -y fastqc
conda install -y sra-tools
conda install -y trimmomatic
conda install -y cutadapt multiqc
conda install -y trim-galore
conda install -y star hisat2 bowtie2
conda install -y subread tophat htseq bedtools deeptools
conda install -y salmon source deactivate #注销当前的rna环境
conda install -y featurecounts hisat2 ## 查看表达量的话,这两个是足够了的 featurecounts 可能是subred 下面的,所以我单独去下载是没有的
conda install -y bowtie2
有点丑,改一改界面字体的颜色
cd ~
vim ~/.bash_profile # 在后面添加上代码如下
PS1="\[\e[32;1m\]\u \[\e[33;1m\]\t \[\e[35;1m\]\w \n\[\e[0;40m\]$"
bash ~/.bash_profile # 退出后激活环境变量
# 酱紫颜色就会变得漂漂亮亮的啦~
1.3 下载参考基因组
请注意参考基因组+注释的下载需要在同一个平台,推荐顺序 ensemble> UCSC,NCBI.
一般来说,需要下载相应的参考基因组,然后构建索引index,而且每一种比对软件都需要自己的索引(也可以去软件相应的网站上下载)。
因为界面太丑了,希望用tree功能去查看文件夹架构,所以我们安装一个tree功能
# 将相应命令写入bash文件里面,然后激活
vim ~/.bash_profile
# 在后面加入以下代码
alias tree="find . -print | sed -e 's;1*/;|____;g;s;____|; |;g'"
# bash
bash ~/.bash_profile
# 妥妥的
正式开始下载!
human-不要下载top level哦
## genome
curl -O ftp://ftp.ensembl.org/pub/release-95/fasta/homo_sapiens/dna/Homo_sapiens.GRCh38.dna.toplevel.fa.gz
## 再说一遍,不要下载top-level!!!以上这个代码千万不要运行!
curl -O ftp://ftp.ensembl.org/pub/release-95/fasta/homo_sapiens/dna/Homo_sapiens.GRCh38.dna_sm.primary_assembly.fa.gz
# 或者
cp /Volumes/dna/Homo_sapiens.GRCh38.dna.primary_assembly.fa.gz ./
## gtf 注释文件下载
curl -O ftp://ftp.ensembl.org/pub/release-95/gtf/homo_sapiens/Homo_sapiens.GRCh38.95.gtf.gz
1.4 构建索引
索引是什么东西?我们去图书馆查找书籍,都会按照图书背后的编码去查找吧!或按照图书分类法,或者按照首字母大写等等,这些查找书籍的方法,就叫做索引,有了索引就可以快速的找到我们想要的书。那么对于参考基因组的比对来说,也是酱紫的!我们拿到一个reads,想知道它是在基因组上的那个位置,不可能一条一条的比对吧?当然是有偷懒的办法啦,那就是用索引index。
## hisat 2 -p 4 是设置4个线程的意思
hisat2-build -p 4 /Users/bioinformatic/reference/hg38/hg38.fa /Users/bioinformatic/reference/hg38/hg38.ht2
## bowtie2 --threats 4 是设置4个线程的意思
bowtie2-build --threads 4 /Users/bioinformatic/reference/hg38/hg38.fa /Users/bioinformatic/reference/hg38/hg38 &
总结
要学会这部分内容,至少需要掌握以下基本知识:
(1)你需要了解转录组的基本原理:推荐“陈巍学基因”,Statquest,还有Illumia的官方视频,三个视频加起来不超过1个小时,需要认真体会学习;
(2)还需要会简单的linux操作,比如cd,mkdir等最基本的命令的理解和使用;
(3)基本的去可视化思维和linux操作,比如linux下载和安装软件的思维和基本操作。
(4)理解所用到的文件的基本含义;
(5)待补充。
简而言之,你遇到的每一个疑惑的地方,都是一个新的知识点。万事开头难,加油吧!
在这里感谢生信技能树的教程分享,感谢Jimmy老师给我的无私帮助;感谢豆豆和花花给我的指导和帮助,尤其给了我非常多的基础知识方面的辅导,不厌其烦的解答我非常幼稚的问题;谢谢洲更在我项目实操过程中给予了强有力的支持。
网友评论