美文网首页单细胞分析tips
提取基因组fasta与比对bam/sam文件序列

提取基因组fasta与比对bam/sam文件序列

作者: 纷纷不可诉 | 来源:发表于2024-01-23 22:09 被阅读0次

二代、三代测序被广泛应用,组学数据爆发,经常会遇到需要可视化比对效果的情况,常用的可是化工具就是IGV, samtools, tablet等,但是在本地处理的时候,经常会由于文件过大而打不开,所以我们需要截取关注的目标区域(染色体或基因),进一步可视化。

测序比多效果检查(IGV可视化)

1.首先需要了解常见的文件格式(基础数据)

(1)常见的基因组参考文件:fasta文件(缩写可能是.fa,分染色体的ATCG序列文本)
(2)基因组注释文件:gtf或gff文件(可以互相转化,内含基因组注释信息的文本文件);bed文件(另一种记录注释信息的文本文件)
(3)测序数据下机文件:fastq或fasta文件(也是TACG序列的文本文件,一条一条测到的read的记录,非常大)
(4)测序数据比对参考基因组后的文件:sam或bam文件(SAM就是把序列比对到基因组的文本文件,bam是其二进制的格式,可互相转化)

普通分析人员以上文件都基本听过就好,反正后面都能跑起来,对于生信工程师具体内部结构和信息其实只是基础知识。

2. 常用软件及其常用命令(提取序列)

可以从fasta中提取基因序列的4款软件 - 简书 (jianshu.com)

1. 利用samtools截取基因组上指定位置的序列
需要对照基因组注释文件查看目标基因或序列的位置(染色体名字:起始位点-终止位点)

# 1. 生成后缀为.fai 的文件索引文件(为了快速提取用的)'
samtools faidx input.fa  # input.fa是指你的参考基因组文件路径
# 2. 可选 (调整统一,你的fasta文件除了最后一行,其他行必须等长,一般都是没问题的)
seqtk seq -l 50 -L 50 input.fa >input1.fa
# 3. 提取
samtools faidx input.fa chr1 > chr1.fa # 直接提取一个染色体
samtools faidx input.fa chr1:10-20 > chr1.fa # 提取片段

参见:https://www.omicsclass.com/article/1169

2.用seqkit从fasta文件中提取gene/cds/exn/scaffold等序列

gffread GRCh38.gtf -g GRCh38.fa -w input.transcripts.fa # 所有基因基因'
seqkit grep -f requre.txt input.transcripts.fa > output.fa # requre.txt 是一个基因名的list

参照:https://zhuanlan.zhihu.com/p/619528554
(扩展:如果是要全部的基因/蛋白/cds序列,用gffread直接提取全部类别序列:https://zhuanlan.zhihu.com/p/439168788)

3. 用samtools提取bam文件序列

# 1. 对bam文件排序(默认的bam文件是乱序的,可以按照染色体循序排序)
samtools sort -@ 4 -o output.sort.bam input.sam # -@加线程数目 
# 2. 构建索引(要用排序后的bam)
samtools index -@ 4 output.sort.bam 
# 3. 提取目标区域 (注意自己选择要的输出方式SAM/BAM)
samtools view output.sort.bam NC_007897.1 -O BAM -o NC_007897.1.bam #提取比对到  NC_007897.1 Scaffold 的reads输出到NC_007897.1.bam (并输出成bam格式)
samtools view output.sort.bam chr20:100000-200000 > chr20_100k-200k.sam # 提取chr20上100k到200k区域的比对结果(输出成sam格式)

samtools view -bS test.sam > test.bam SAM转BAM
samtools view -h test.bam | less 查看bam文件(-h加上会显示头文件)

【注意:samtools和seqkit还有其他非常好用的功能,这里不再扩展,大家可以自行去看】

3. 可视化软件的使用(可视化)

接下来的操作就比较简单了,把提取的fasta文件+对应的gtf文件+提取的bam文件读入软件,就可以开始可视化了,具体大家可以自行学习,这里挂几个不错的连接:
IGV、Tablet、Samtools——比对可视化怎么做? - 知乎 (zhihu.com)

  1. IGV使用(一般是可视化界面,好看,用的广泛)
    基因组可视化软件IGV的使用方法_哔哩哔哩_bilibili
    IGV的使用教程直播回放来咯~_哔哩哔哩_bilibili
    IGV基因组浏览器打开BAM文件查看reads比对情况 - 简书 (jianshu.com)
    基本上看完这两个视频和自己学会安装就搞定IGV了,最后是一个全流程指南。
  2. samtools(coding的界面,用途很多,使用也比较广)
    samtools的安装和使用 - 简书 (jianshu.com)
    Samtools - 上海交大超算平台用户手册 Documentation (sjtu.edu.cn)
    samtools tview 可视化查看比对结果 - 组学大讲堂问答社区 (omicsclass.com)
    samtools的交互可视化需要用到samtools tview这个功能,注意conda装的用不了,需要手动安装github包&make&make install三部曲。
  3. tablet(小众可视化界面,和IGV差多不,但是听说更好看)

Mark: 后面还会写一个多条基因序列比对的笔记,可以对比学习(和这里讲的测序数据与参考基因组的比对(map)效果可视化,后面会讲的是多条序列(也可能是来着不同物种基因组已经测得的)内部之间的相似性比较)

相关文章

网友评论

    本文标题:提取基因组fasta与比对bam/sam文件序列

    本文链接:https://www.haomeiwen.com/subject/cdhpodtx.html