1.Blast

1) Pipeline

2) Data Structure

了解存储 sequence 的常用文件格式——FASTA格式.fasta or .fa )

>gi|47115317|emb|CAG28618.1| VIM [Homo sapiens]
MSTRSVSSSSYRRMFGGPGTASRPSSSRSYVTTSTRTYSLGSALRPSTSRSLYASSPGGVYATRSSAVRL

The word following the > symbol is the identifier of the sequence, and the rest of the line is the description (optional). Normally, identifiers are simply protein accession, name or Entrez gi's (e.g., Q5I7T1, AG10B_HUMAN, 129295), but a bar-separated NCBI sequence identifier (e.g., gi|129295) will also be accepted. Any arbitrary user-specified sequence identifier can also be used (e.g., CLONE00073452).

2a) Inputs

Format

Description

Notes

fasta

contains gene name and sequence

gene name start with >

2b) Outputs

Format

Description

Notes

blastp

query aligned to database

-

3) Blast in Terminal

3a) 准备

Step 1: 进入到docker容器

docker exec -it bioinfo_tsinghua bash

Step 2: 进入到工作目录

以下步骤均在 /home/test/blast/ 下进行

cd /home/test/blast/

Step 3: 准备一个输出目录

mkdir output

3b) 两条序列比对

Protein sequence alignment

利用 blastp 进行蛋白质比对

blastp -query protein/VIM.fasta -subject protein/NMD.fasta -out output/blastp

VIM.fastaNMD.fasta 分别是金属beta酶家族的两个亚种酶的序列

DNA sequence alignment

利用 blastn 进行DNA序列比对

blastn -query dna/H1N1-HA.fasta -subject dna/H7N9-HA.fasta -out output/blastn

H1N1-HA.fastaH7N9-HA.fasta 是流感病毒序列文件

3c) 一条序列与远程序列库比对

Protein sequence alignment 比对远程pdb数据库

运行时需要联网,无法上网请跳过。

blastp -query protein/VIM.fasta -db pdb -remote -out output/blastp_remote

DNA sequence alignment 比对远程nr数据库

运行时需要联网,无法上网请跳过。

blastn -query dna/H1N1-HA.fasta -db nr -remote -out output/blastn_remote

3d) 一条序列在自定义的序列库里比对

例如:在yeast基因组序列中搜索Yeast.fasta序列

Step 1: 建库

makeblastdb -dbtype nucl -in dna/YeastGenome.fa -out database/YeastGenome
  • -dbtype: 待建库的类型(nucl, prot)

  • -in: 待建库的序列文件

  • -out: 序列库名前缀

Step 2: 比对

blastn -query dna/Yeast.fasta -db database/YeastGenome -out output/Yeast.blastn

4) Tips/Utilities for blast in Terminal

4a) 查看序列比对结果文件的方式

你可以利用 more, less等命令或者利用vi等文本编辑工具查看结果文件。

4b) A better view of fasta file

less -S dna/H1N1-HA.fasta # chop long lines rather than wrap them (记得按 q 退出)

4c) 安装blast及其子程序blastn, blastp,blastx, ...

Note: Docker 中已经装好

安装方式1-自动安装(推荐方式)

Ubuntu 自动安装软件方法: sudo apt-get install ncbi-blast+

这里 blast 由 ncbi-blast+ 提供

安装方式2-手动安装

Download link

寻找类似如下文件:

  • 32位计算机(老机器)安装文件:如 ncbi-blast-2.2.28+-ia32-linux.tar.gz

  • 64位机器安装文件: 如 ncbi-blast-2.2.28+-x64-linux.tar.gz

可以通过 uname -a 查看机器类型是64还是32位

5) Blast online

首先,进入NCBI官网在线BLAST,显示如下图所示界面,选择一种序列比对类型,然后根据提示进行序列比对。

5a) Input sequence

Input the following sequences:

MSTRSVSSSSYRRMFGGPGTASRPSSSRSYVTTSTRTYSLGSALRPSTSRSLYASSPGGVYATRSSAVRL

5b) Select database

Select "Non-redundant Protein Sequences (nr)"

5c) Select algorithm

Select "blastp"

5d) Output results

5e) Output table

5f) Alignment details

6) Homework

  • Blast sequence with mouse genome

请使用网页版的 blastp, 将上面的蛋白序列只与 mouse protein database 进行比对, 设置输出结果最多保留10个, E 值最大为 0.5。将操作过程和结果截图。

注: blast的网站会提供多个mouse的databases,可以任选1个进行比对;也可以重复几次,每次选一个不同的database看看不同的输出结果,可以在作业中比较和讨论一下输出结果不同的原因。

  • 挑战题:

我们常见的PAM250有如下图所示的两种(一种对称、一种不对称),请阅读一下 Symmetry_of_the_PAM_matrices (copied from wikipedia),再利用Google/wikipedia等工具查阅更多资料,然后总结和解释一下这两种(对称和不对称)PAM250不一样的原因及其在应用上的不同。

PAM matrices are also used as a scoring matrix when comparing DNA sequences or protein sequences to judge the quality of the alignment. This form of scoring system is utilized by a wide range of alignment software including BLAST. — wikipedia

对称的PAM250:

对称的PAM250

不对称的PAM250:

不对称的PAM250

Figure 83. Atlas of Protein Sequence and Structure, Suppl 3, 1978, M.O. Dayhoff, ed. National Biomedical Research Foundation, 1979

休息一会

Jim Kent

Jim Kent

Jim Kent 1960年生于夏威夷,在旧金山长大。

Kent的编程生涯始于23岁,1983年Kent开始在Island Graphic Inc工作。当时Kent为Amiga家用电脑编写了一个能够结合3D渐变效果与2D简单动画的软件。

1985年他干脆自己开了一家软件公司 Dancing Flame, 将之前自己写的动画程序创建成为一个汇集各种动画和绘画功能的程序Cyber Paint,为CAD-3D开发提供便利。这是是第一个允许用户跨时间制作压缩视频的软件。之后他还开发了软件Autodesk Animator用于个人电脑中,可以为各种视频游戏创作艺术作品。 2000年Kent在攻读加州大学圣克鲁兹生物学博士学位,此时人类基因组计划进行到后期,他写出了GigAssembler, 帮助人类基因组项目能够拼装和发布人类基因组序列。

在GigAssembler之后,Kent继续编写BLAT(BLAST-like alignment tool)和参与维护UCSC Genome Browser 来帮助分析重要的基因组数据。目前,Kent仍然在UCSC工作,主要是在网络工具上帮助理解人类基因组。他帮助维护和升级浏览器,并致力于比较基因组学, Parasol,UCSC kilocluster的运营和ENCODE项目。