测序数据比对到参考基因组

2023-07-02  本文已影响0人  路人里的路人

1.准备转录组数据

转录组数据可以从数据库中下载,也可以使用公司返回的测序数据,在服务器上下载完成后将原始文件名改为自己熟悉的格式,方便后期分析的进行。

2.准备样本信息表

样本信息表主要包括三部分,第一部分样品分组,第二部分:样本名称,第三部分:测序数据存在的绝对路径,例如以下的示例:

CB_S1   CB_S1_CF1   /path/to/your/workplace/CB_S1_CF1_1.fq.gz       /path/to/your/workplace/CB_S1_CF1_2.fq.gz
#第一列,样品分组。第二列,样本名称。第三列,正向测序文件存在的绝对位置。第四列,反向测序文件存在的绝对位置。

使用awk命令生成sample.txt文件

先将所有测序文件的文件名放在一个文件中,再替换掉不需要的部分,以下是相应代码。

ls *.gz > name.lst
#将所有以.gz结尾的文件的文件名写入一个名为name.lst的文件中
sed -i 's/.fq.gz//' name.lst
#将name.lst文件中所有.fq.gz替换成空格,sed -i 是原位替换,会直接更改文件中的内容
awk -F '_' '{print $1"_"$2"\t"$1"_"$2"_"$3"\t/path/to/your/workplace/"$1"_"$2"_"$3"_"$4".fq.gz""\t/path/to/your/workplace/"$1"_"$2"_"$3"_""2.fq.gz"}' name.lst
#使用awk命令批量生成代码,-F '_'表示以_为分隔符,\t为制表符,即大空格,其他部分同awk命令。

3. hisat2构建参考基因组

在正式比对前还需要构建参考基因组,所使用的软件是hisat2,基本命令为hisat2 -build,基础命令为:

hisat2-build /path/to/the/genome.fasta /path/to/your/output/genome 1>hisat2-build.log 2>&1

以上各代码分别为:
/path/to/the/genome.fasta:参考基因组所处位置;
/path/to/your/output/genome:输出文件所存储位置及所使用的前缀;
1>hisat2-build.log 2>&1:将标准输出流与错误输出流同时输入到hisat2_build.log这个文件中。
step1的结果文件会存放在参考基因组所在的文件夹

4.比对(参考基因组与测序结果生成sam文件)

记在前面的话:如果生成的比对日志文件比对率在70%以下,可能就需要调整命令中的相关参数

4.1 使用hisat2比对的基本命令

hisat2 --new-summary -p 6 -x /path/to/genome -U /path/to/the/seqdata -S outname.sam --rna-strandness R 1>name.log 2>&1

hisat2 --new-summary:命令的开头
-p 6:软件运行的线程数,一般为2-6
-x /path/to/genome:参考基因组所处的文件夹及构建的hisat2索引文件开头
-U /path/to/the/seqdata:测序文件所处的文件夹
**-S outname.sam **:比对结果的输出文件名
--rna-strandness:测序的策略,一般为非链特异性测序,所以此步可省略
R 1>name.log 2>&1:指定日志文件的输出的文件名

4.2 使用awk命令批量生成命令

要点:灵活使用常量与变量

awk '{print "hisat2 --new-summary -p 6 -x /path/to/genome -U "$3" -S "$2".sam --rna-strandness R 1>"$2".log 2>&1 &"}' sample.txt > step2.hisat_run.sh

以上命令是针对单末端测序项目的,单末端测序只产生一个测序文件,故直接使用-U后接$3即可,但是如果是双末端测序,则会产生两个测序文件,此时需要指定两个输入文件,命令有所变化,如下所示:

awk '{print "hisat2 --new-summary -p 6 -x /path/to/genome -1 "$3" -2 " $4" -S  "$2".sam --rna-strandness R 1>"$2".log 2>&1 &"}' sample.txt > step2.hisat_run.sh

4.3 samtools压缩文件生成bam文件

awk '{print "samtools sort -o "$2".bam "$2".sam"}' sample.txt > step3_sam2bam.sh

使用awk命令批量生成命令,使用的软件是samtools,生成的命令保存到step3_sam2bam.sh脚本中

4.4 samtools构建索引

awk '{print "samtools index "$2".bam"}' sample.txt > step4.bamindex.sh

使用awk命令批量生成命令,使用的软件是samtools,生成的命令保存到step4.bamindex.sh脚本中

5.IGV对测序比对结果可视化

5.1可视化所需数据

(1)基因组序列:参考基因组(genome.fasta;gene.gtf)
(2)压缩后的bam文件和对应的bai文件

5.2 IGV的使用

5.2.1创建基因组

Genomes\Rightarrowcreate a genome file\Rightarrowunique identifier(文件名)\Rightarrowdescriptive name(描述名称)\Rightarrowfasta file(参考基因组)\Rightarrowgene file(gtf文件)\RightarrowOK

5.2.1导入测序文件

file\Rightarrowload from file\Rightarrowbam文件

上一篇下一篇

猜你喜欢

热点阅读