这是一个尝试性的文章,能不能解决我要解决的问题,并不清楚。

===本文利用NCBI的blast界面,实现将短序列比对上reference基因组,并实现变异位点可视化。===补言===

比对常用的是NCBI网站,打开NCBI。(百度 谷歌直接搜索NCBI, 现在中国也在搭建和完善国家生物信息中心,一个是位于深圳的国家基因库,由BGI代运营,一个是北京的国家生物信息中心,由BIG开发和运营)。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_搜索

 

 

核苷酸序列比对选默认的blast就好,其他的比对模块可以自行查看,有必要的情况下公众号再讲。

搜索自己想要比对的物种(reference)。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_02

 

serch (点击搜索)

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_03

好了,database已经为我们选定的物种基因组(可自行选择版本),如果没有基因组的话,可能需要自己上传或者是其他的办法(本处未做尝试)。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_04

 

 输入需要查找的序列,或者文件。

格式为fasta格式,如下(关于序列的格式文件说明,可以参见鄙人公众号):

>ID1

ATCG

>ID2

ATCG

...

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_05

 

 相似度一般用默认的,个人习惯在新的页面打开,然后点blast。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_06

 

 我给的是双子叶植物的一段序列,不负众望,没有搜到任何信息。

==============================================================================

下面我想找一段同物种的基因:

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_07

 

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_08

 

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_09

 

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_10

 

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_11

 

 管它三七二十几(这里省略了约三个步骤),终究找了一段序列,贴进去看看效果:

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_12

 

然后结果:

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_搜索_13

 

 没错,就是这段,点开果然是100%的相似度。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_14

 

 

 现在我突变3个位点,再比对一次。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_15

 

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_搜索_16

 

 可以看到相似度变低了:右侧pre.ident 为99.75%(前一分钟是100%)。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_17

 

 三个位点发生了差异。

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_搜索_18

 

 可以看到被人为突变的位置是无法对齐的,但是没有颜色标记不是很好看。

 继续,打开右边的可视化页面:

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_19

 

 可视化信息如下:

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_20

 

 

点击红色的query(没错,这就是刚刚输入的sequence,现在被重命名为Query_8543),可以看到我们之前人为做的三个突变位点,如下(红线所示):

 

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_公众号_21

 

 放大mismatch的位点,可以看到详细的碱基信息:

BLAST算法比对两条序列python编码 如何在blast中进行序列比对_相似度_22