HISAT2+StringTie+Ballgown安装及使用流程

2015年Nature Methods上面发表了一款快速比对工具hisat,作为接替tophat和bowtie的比对工具,它具有更快的比对速度和更高的比对率,最近把这个流程走完一遍,感觉优势还是很明显的。 
一、HISAT2: 
1、下载安装: 
hisat2下载地址:ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-2.1.0-Linux_x86_64.zip 
hisat2官方手册:http://ccb.jhu.edu/software/hisat2/manual.shtml 
下载完成后解压缩: 
unzip hisat2-2.0.5-Linux_x86_64.zip 
进入hisat2-2.0.5文件夹:

这里面的绿色文件都是可执行文件,所以只需要把目录添加到环境变量中即可: 
vim进入编辑bashrc文件,在文本中输入红色方框内的内容,保存退出,然后source ~/.bashrc 即可

此时我们就可以直接调用hisat2命令了。 
2、建立索引: 
如同tophat一样,比对之前需要利用bowtie建立index,hisat2同样需要建立索引: 
首先提取gtf文件中的剪切位点和外显子位置: 
extract_splice_sites.py gencode.vM4.annotation.gtf >gencode.vM4.annotation.for.hisat2.ss 
extract_exons.py gencode.vM4.annotation.gtf >gencode.vM4.annotation.for.hisat2.exon 
建立索引: 
hisat2-build -p 30 --ss gencode.vM4.annotation.for.hisat2.ss --exon gencode.vM4.annotation.for.hisat2.exon GRCm38.p3.genome.fa mouseGencodeIndex 
##如果电脑内存<200G,那么可以不用--ss/--exon参数,但是在比对的时候需要加 
--known-splicesite-infile参数。3、比对: 
我的数据是双段的无链特异性数据,此处需要把sam文件转化为bam文件,所以需要提前安装samtools: 
        hisat2 --known-splicesite-infile gencode.vM4.annotation.for.hisat2.ss --dta -t -p 24 -x mouseGencodeIndex -1 samp_1.fq.gz -2 samp_2.fq.gz -S accepted_hits.sam &> alignment_summary.txt 
       samtools view -bS accepted_hits.sam > accepted_hits.bam 
       samtools sort accepted_hits.bam -o accepted_hits_sorted.bam 
       rm accepted_hits.bam 
       rm accepted_hits.sam

二、StringTie: 
比对完生成了sam文件,我们利用samtools将它转化为了排好序的bam文件,下一步就需要量化和确定表达值了,这里用到的StringTie相比之前的cufflinks来说功能强大了好多。 
1、下载安装: 
stringtie下载地址:http://ccb.jhu.edu/software/stringtie/dl/stringtie-1.3.3b.Linux_x86_64.tar.gz 
stringtie官方手册:http://ccb.jhu.edu/software/stringtie/index.shtml?t=manual 
直接下载解压就可以用了,它是可执行文件,也可以按上述方法将路径添加到环境变量中方便调用。 
2、运行: 
stringtie accepted_hits_sorted.bam -o outRes.gtf -p 28 -G gencode.vM4.annotation.gtf -A gene_abund.tab -B -e 
运行后每个样本文件夹下结果如下:

这里我生成了结果gtf文件outRes.gtf和ballgown需要的.ctab文件,还有基因的表达量文件gene_abund.tab,该文件包括基因的表达量FPKM以及TPM等。当然如果你想要转录本的表达量,直接打开t_data.ctab这个文件,这里面有转录本的FPKM值。 
当然如果我们想利用DESeq2或者edgeR等计算差异表达,那我们就需要得到原始counts值矩阵来作为输入,此时我们需要利用StringTie自带的脚本prepDE.py来计算counts值,它可以同时对多个样本做: 
prepDE.py -i stringtieRes/ -g countsRes/gene_count_matrix.csv -t countsRes/transcript_count_matrix.csv 
stringtieRes/文件夹下面是我所有的样本的文件夹。

*这里我们能得到所有样本的count matrix,但是只能拿到每个样本对应的FPKM值,又有什么方法能得到合并在一起的FPKM matrix呢?这就需要借助ballgown了。 
三、Ballgown: 
1、安装: 
首先你需要下载安装R,我的是3.4.0版本。 
source("https://bioconductor.org/biocLite.R") biocLite("ballgown") 
这里可能提示你安装XML包的时候会出现错误提示:Cannot find xml2-config 
这就需要你在自己电脑上安装相应的模块了,我的是centos7,于是安装相应的模块:
yum install libxml2-devel 
顺利安装上ballgown包。 
2、使用: 
读取所有样本到ballgown对象中:de> 
bg = ballgown(dataDir=de>de>de>YSde>, samplePattern='YT1', meas='all'); 
#其中de>de>YS是我的所有样本的父目录,每个样本文件夹名字都包含YT1。 
#计算转录本和基因的FPKM值 
de>de>transcript_fpkm = texpr(bg, 'FPKM') 
row.names(de>de>de>transcript_fpkmde>) = transcriptNames(bg) 
write.csv(de>de>transcript_fpkm,"de>de>de>transcript_fpkm_matrix.csvde>")
de>de>gene_expression = gexpr(bg) 
de>de>write.csv(de>de>de>gene_expressionde>,"de>de>de>de>gene_fpkmde>_matrix.csvde>") 
任务完成。 
3、差异表达分析: 
ballgown可以做case/control两两比较的差异表达,也可以做多组比较的差异表达(此时不能计算Fold Change值), 
当然也可以做时间序列的差异。 
de>de>de>pData(bg) = data.frame(id=sampleNames(bg), group=rep(c(1,0), each=10)) 
#这里是条件矩阵,每行是一个样本,第二列是条件,如果是case/control那么就是0/1. 
de>de>de>de>stat_results = stattest(bg, feature='transcript', meas='FPKM', getFC=TRUE, covariate='group') 
#注意getFC在多组比较时候不能用,feature参数可以对基因'gene'或者转录本'transcript'或者外显子'exon'做 
差异表达分析。 
de>de>de>de>de>Data(bg) = data.frame(pData(bg), time=rep(1:10, 2)) #dummy time covariate timecourse_results = stattest(bg, feature='transcript', meas='FPKM', covariate='time', timecourse=TRUE)de> 
de> 
但是我个人不太推荐使用ballgown,喜欢使用DESeq2和edgeR来计算。 
de>

转载于:https://www.cnblogs.com/wangprince2017/p/9937395.html

HISAT2+StringTie+Ballgown安装及使用流程相关推荐

  1. HISAT2+STRINGTIE+BALLGOWN 分析转录组数据

    师兄推荐这篇文章,按照里面的命令,先做一套转录组分析. 参考文献: Pertea M, Kim D,Pertea G M, et al. Transcript-level expression ana ...

  2. 转录组分析---Hisat2+StringTie+Ballgown使用

    转录组分析---Hisat2+StringTie+Ballgown使用 (2016-10-10 08:14:45) 转载▼ 标签: 生物信息学 转录组   1.Hisat2建立基因组索引: First ...

  3. HISAT2 - StringTie - DESeq2 pipeline 进行bulk RNA-seq

    软件官网: Hisat2: Manual | HISAT2 StringTie:StringTie 文章:Transcript-level expression analysis of RNA-seq ...

  4. python安装步骤图解-Python安装与卸载流程详细步骤(图解)

    Python安装流程: 一.下载 在网上(输入网址https://www.python.org/downloads/)下载Windows最新的python程序(我电脑为64位) 二.安装 根据自己的电 ...

  5. sptk安装,编译流程

    SPTK是个有名的语音信号处理工具包. 其sptk安装,编译流程如下: 如果cygwin安装好(gcc,make,等安装好,见我另外的文章), ./configure make make instal ...

  6. python完整安装顺序_Python安装与卸载流程详细步骤(图解)

    Python安装流程: 一.下载 在网上(输入网址https://www.python.org/downloads/)下载Windows最新的python程序(我电脑为64位) 二.安装 根据自己的电 ...

  7. PHP7.2与apache环境安装部署详细流程

    php-agent 安装部署详细流程 一.环境 测试机内网IP: 10.128.5.98 用户名口令: root/oneapm21 cat /etc/system-release cat /etc/i ...

  8. Python安装.whl文件流程及问题解决

    安装.whl文件流程及问题解决 文章目录 安装.whl文件流程及问题解决 1.提前安装Python及pip工具 2.下载合适的whl安装包 3.安装.whl文件 Python中,.whl文件是使用wh ...

  9. CentOS7安装MariaDB的流程步骤

    安装前需要彻底清除你的服务器计算机上原来安装过的mysql.maraidb的文件,不然会出现各种问题. CentOS7安装MariaDB的流程步骤如下: ======================= ...

最新文章

  1. Py之huaweicloud-sdk-python:huaweicloud-sdk-python的简介、安装、使用方法之详细攻略
  2. leetcode 386. Lexicographical Numbers | 386. 字典序排数(Java)
  3. C语言精髓篇|函数的参数和返回值
  4. React面试题总结,就是这么简单
  5. 前端学习(2837):image图片标签
  6. Python--网络编程-----传输层tcp/udp协议
  7. django 1.8 官方文档翻译: 14-4-1 重定向应用
  8. System.Security.Cryptography.RSA.FromXmlString 系统找不到指定的文件和X509读取证书文件系统找不到指定的文件异常
  9. WPS最大的败笔是“免费用,广告弹窗”,难怪用户纷纷使用office
  10. 解决办法:error LNK2005: void * __cdecl operator new(unsigned int) 已经在 LIBCMTD.lib(new.obj) 中定义
  11. 百度地图加载shp_ArcGIS中加载无偏移谷歌卫星影像!奥维官方插件与ArcGIS协同互动...
  12. matlab匿名函数求导,MATLAB进行匿名函数求导出现错误
  13. DevOps流程demo(实操记录)
  14. 如何解决农村产权交易难的问题
  15. 猫耳FM导出音频转换为音频格式(m4a/mp3)
  16. 如何关闭华为手机连接电脑自动弹出cd驱动器和类似文件管理文件夹
  17. 1309:【例1.6】回文数(Noip1999)
  18. 基于机器学习建模的 XSS 攻击防范检测
  19. 不定积分知识结构图_高等数学各章知识结构(有高度、深度)
  20. android xfire,XFire完整入门教程

热门文章

  1. docker-compose部署prometheus
  2. ping发送超大数据包(高级用法)
  3. k3s helm3功能介绍
  4. loadrunner脚本设计:集合点(批量放行实现真正的并发)
  5. Linux隐藏文件标识
  6. 权限控制相关数据表分析和创建
  7. oracle0raD,在Radhat 5 上安装Oracle 10g(转)
  8. win8.1计算机开启远程桌面连接不上,启动Win8.1远程桌面不得不知的方案
  9. php将文件夹打包zip文件,php将文件夹打包成zip文件
  10. pytorch微调bert_香侬读 | RoBERT: 没错,我就是能更强——更大数据规模和仔细调参下的最优BERT