一个超简单的转录组项目全过程--iMac+RNA-Seq(一)

由于实验室没有服务器,我只有一台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 安装相应软件

先读文献调研,得到转录组分析需要用到的软件列表;

  • 质控
  • fastqc , multiqc, trimmomatic, cutadapt ,trim-galore
  • 比对
  • star, hisat2, bowtie2, 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哦

教训:坑队友系列:ftp协议下载ensembl参考基因组

## 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老师给我的无私帮助;感谢豆豆和花花给我的指导和帮助,尤其给了我非常多的基础知识方面的辅导,不厌其烦的解答我非常幼稚的问题;谢谢洲更在我项目实操过程中给予了强有力的支持。

你可能感兴趣的:(一个超简单的转录组项目全过程--iMac+RNA-Seq(一))