基因组比对软件常用bwa,转录组比对软件常用bowtie2、hisat2等,其中有参考基因组的常用hisat2,没有参考基因组的常用bowtie2。
一、建立索引
建立基因组索引
* 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 -p4 genome.fa --snp genome.snp --ss genome.ss --exon genome.exon genome_snp_tran
官网提供了人和小鼠的索引文件下载,压缩包有make_grch38_tran.sh文件,详细记录了创建索引的过程。
二、运行HISAT2
* hisat2 -p10 -x ./genome -1 Sample.R1.fastq -2 Sample.R2.fastq --rna-strandness RF --fr–S Sample.sam
-p 线程数
--rna-strandness RF 链特异性
-x 指定基因组索引
-1 指定第一个fastq文件
-2 指定第二个fastq文件
-S 指定输出的SAM文件
最终,我们需要使用samtools软件,对sam排序得到一个sorted.bam文件,用于后面的定量,AS等分析;
* samtools view -uS Sample.hisat2.sam |samtools sort - -o Sample.sorted.bam && samtools index NC5.sorted.bam
官方操作手册简要版
用法:
hisat2 [options]* -x <hisat2-idx> {-1 <m1> -2 <m2> | -U <r> |[-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。
网友评论