RNA-Seq基因组比对工具HISAT2

来源:BioChen生物评论12,597

HISAT2是TopHat2/Bowti2的继任者,使用改进的BWT算法,实现了更快的速度和更少的资源占用,作者推荐TopHat2/Bowti2和HISAT的用户转换到HISAT2。
官网:
https://ccb.jhu.edu/software/hisat2/index.shtml

HISAT2安装

下载HISAT2-2.0.1,并解压:

unzip hisat2-2.0.1-beta-Linux_x86_64.zip

将HISAT2目录添加到环境变量:

vi ~/.bashrc

在文件末位添加:

export PATH=/lustre/home/lcn/chenwen/bin/hisat2-2.0.1-beta:$PATH
source ~/.bashrc

建立索引保存退出

建立基因组索引

hisat2-build –p 4 genome.fa genome

建立基因组+转录组+SNP索引:

bowtie2的索引只有基因组序列信息,tophat2比对时,转录组信息通过-G参数指定。HISAT2建立索引时,就应该把转录组信息加进去。

HISAT2提供两个Python脚本将GTF文件转换成hisat2-build能使用的文件:

extract_exons.py Homo_sapiens.GRCh38.83.chr.gtf > genome.exon
extract_splice_sites.py Homo_sapiens.GRCh38.83.chr.gtf > genome.ss

此外,HISAT2还支持将SNP信息加入到索引中,这样比对的时候就可以考虑SNP的情况。这仍然需要将SNP文件转换成hisat2-build能使用的文件:

extract_snps.py snp142Common.txt > genome.snp

最后,将基因组、转录组、SNP建立索引:

hisat2-build -p 4 genome.fa --snp genome.snp --ss genome.ss --exon genome.exon genome_snp_tran

官网提供了人和小鼠的索引文件下载,压缩包有make_grch38_tran.sh文件,详细记录了创建索引的过程。

运行HISAT2

hisat2 -p 16 -x ./grch38_tran/genome_tran -1 SRR534293_1.fastq -2 SRR534293_2.fastq –S SRR534293.sam

 

-x 指定基因组索引

-1 指定第一个fastq文件

-2 指定第二个fastq文件

-S 指定输出的SAM文件

更多参数请查看HISAT2的操作手册:

https://ccb.jhu.edu/software/hisat2/manual.shtml

官方操作手册简要版

用法:

hisat2 [options]* -x <hisat2-idx> {-1 <m1> -2 <m2> | -U <r> | –sra-acc <SRA accession number>} [-S <hit>]

主要参数:

-x <hisat2-idx>

参考基因组索引文件的前缀。

-1 <m1>

双端测序结果的第一个文件。若有多组数据,使用逗号将文件分隔。Reads的长度可以不一致。

-2 <m2>

双端测序结果的第二个文件。若有多组数据,使用逗号将文件分隔,并且文件顺序要和-1参数对应。Reads的长度可以不一致。

-U <r>

单端数据文件。若有多组数据,使用逗号将文件分隔。可以和-1、-2参数同时使用。Reads的长度可以不一致。

–sra-acc <SRA accession number>

输入SRA登录号,比如SRR353653,SRR353654。多组数据之间使用逗号分隔。HISAT将自动下载并识别数据类型,进行比对。

-S <hit>

指定输出的SAM文件。

输入选项:

-q

输入文件为FASTQ格式。FASTQ格式为默认参数。

-qseq

输入文件为QSEQ格式。

-f

输入文件为FASTA格式。

-r

输入文件中,每一行代表一条序列,没有序列名和测序质量等。选择此项时,–ignore-quals参数也会被选择。

-c

此参数后是直接比对的序列,而不是包含序列的文件名。序列间用逗号隔开。选择此项时,–ignore-quals参数也会被选择。

-s/–skip <int>

跳过输入文件中前条序列进行比对。

-u/–qupto <int>

只使用输入文件中前条序列进行比对,默认是没有限制。

-5/–trim5 <int>

比对前去除每条序列5’端个碱基

-3/–trim3 <int>

比对前去除每条序列3’端个碱基

–phred33

输入的FASTQ文件碱基质量值编码标准为phred33,phred33为默认参数。

–phred64

输入的FASTQ文件碱基质量值编码标准为phred64。

–solexa-quals

将Solexa的碱基质量值编码标准转换为phred。

–int-quals

输入文件中的碱基质量值为用空格分隔的数值,而不是ASCII码,例如40 30 30 40。

发表评论

匿名网友