54
《基因组信息学》 实验讲义 苏州大学医学部 基础医学与生物科学学院 生物信息学系 张高川,2019.02-06

《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

《基因组信息学》实验讲义

苏州大学医学部

基础医学与生物科学学院

生物信息学系

张高川,2019.02-06

Page 2: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

Table of Contents

概述.....................................................................................................................................................3

实验报告格式.....................................................................................................................................4

第一部分 必选实验项目....................................................................................................................6

实验项目 1:基因组测序模拟..........................................................................................................6

实验项目 2:序列组装......................................................................................................................9

实验项目 3:基因组注释之同源搜索............................................................................................12

实验项目 4:基因组注释之从头预测与基因结构建模................................................................15

实验项目 5:基因组注释之启动子分析和预测............................................................................21

实验项目 6:基因组数据可视化【暂缺】....................................................................................22

第二部分 可选实验项目..................................................................................................................22

实验项目 7:基因组测序模拟【编程】........................................................................................22

实验项目 8:序列组装【编程】....................................................................................................29

实验项目 9:基于 EST文库的基因转录变异体鉴别...................................................................31

实验项目 10:基因组注释之基因分析和预测..............................................................................36

实验项目 11:真核生物基因预测中的序列特征分析..................................................................40

实验项目 12:真核生物基因预测的软件使用比较......................................................................43

实验项目 13:启动子的分析和预测【应用】..............................................................................48

实验项目 14:启动子的分析和预测【编程】..............................................................................50

实验项目 15:启动子的分析和预测【编程 2】...........................................................................51

软件参数解读...................................................................................................................................53

Page 3: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

概述

整个实验以一个项目形式开展,针对一个注释信息完善的小规模基因组,从全

基因组测序数据开始,进行组装、注释和可视化。考虑到计算量的影响,实验课

上可以使用诸如酵母这样的模式生物。一方面基因组规模较小,计算量不是太大

另一方面就是这些模式生物具有完善的注释信息,可以进行对比和验证。

在实验项目开展的过程中,按照制定要求撰写实验记录【准备一个范文】、保存

实验结果【保存结果模式见下图】;每一个阶段结束之后,都要撰写总结性的实

验报告【格式要求】。

该项目的开展,需要在教学电脑上提前安装好以下软件:

art软件、NCBI SRA Toolkit、fastqc、BLAST系列 、

bowtie 、bowtie2 、samtools 、gffcompare、bedtools、...

Page 4: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验报告格式

第 1页(封面):

基因组信息学实验总结报告

年级: 专业:

学号: 姓名:

第 2页(目录):

使用文档编辑软件中有关标题或目录索引功能,自动添加目录。

第 3页(摘要):

首先是对每一个实验阶段的总结,一般一两百字即可。

最终实验全部完成后,将这些阶段总结汇总成对整个实验报告的总结,一般三

五百字即可,最多不超过一页1000字(小四号字体)。

从第 4页开始属于报告的正文详细内容:

一、材料和方法

1.1、分析平台:1.1.1、硬件平台:1.1.2、操作系统:1.1.3、分析软件:含版本号1.3.4、数据库资源:含网址

1.2、研究对象:注明目标物种名称和基因组的 Genbank数据库的Accession Number。

1.3、方法:

所有的实验阶段中涉及的方法和步骤全部在这一部分描述,包括含命令行脚

本,如果脚本太长,则注明参见实验记录文档的那一部分或页面!

1.3.1、实验一…1.3.2、实验二…1.3.3、实验三…

Page 5: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

1.3.4、实验四…1.3.5、实验五…1.3.6、实验六…

二、结果

与方法相对应,只要有结果输出,在这里依次描述!!!每一项结果描述要有标题和正文内容!!!结果中,图要有图注表要有表注!!!

1.3.1、实验一…1.3.2、实验二…1.3.3、实验三…1.3.4、实验四…1.3.5、实验五…1.3.6、实验六…

三、讨论与结论

对实验中明确规定的对比分析要求,进行分析讨论;对实验中出现的问题进行分析讨论;如果有结论,也在这部分进行描述。

Page 6: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

第一部分 必选实验项目

实验项目 1:基因组测序模拟

一、实验目的:

1、加深全基因组鸟枪法测序原理的理解;2、熟悉和掌握常用基因组测序模拟和评估程序的使用;3、能够独立地使用自己所掌握统计学分析手段来对实验数据进行对比分析;4、加强学生自主学习能力;5、加深统计学在基因组数据分析中的应用;6、培养学生发现问题、分析问题和解决问题的能力。

二、实验内容:

1、基因组测序模拟工具相关文献资料的调研:通过检索公共搜索引擎或专业数据库(PubMed),查阅不少于 3 种不同基因组测序模拟工具,并对其功能特征进行描述【不少于 100 字】。

2、基因组测序模拟软件下载:2.1、从 ART官网(http://www.niehs.nih.gov/research/resources/software/biostatistics/art/)下载并安装ART系列(ART Illumina/454/SOLiD read simulator)软件【可选】,查阅常用测序平台信息。2.2、搜索下载其他基因组测序模拟软件【扩展选项】。

3、基因组数据下载:

3.1、基因组组装序列:从 Genbank数据库的 Genome子库中搜索下载某个物种的基因组序列;建议下载基因组规模较小的物种基因组序列,如真菌 (fungi)中的 Saccharomyces

cerevisiae,目前已有 666 个基因组测序结果(2019-02-21 数据);保存物种名称(如:Saccharomyces cerevisiae)、菌株编号(如:S228C)和该菌株的基因组组装结果摘要信息(如下表所示)、以及FASTA格式的基因组序列和 GFF格式的基因组注释文档。【要求每个同学选择不同物种或不同菌株】Assembly: GCA_000146045.2 R64 scaffolds: 17 contigs: 17 N50: 924,431 L50: 6

BioProjects: PRJNA128, PRJNA43747

Statistics: total length (Mb): 12.1571

protein count: 6002

Page 7: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

GC%: 38.1556

基因组下载链接位于 Genome数据库检索结果页面顶端:Saccharomyces cerevisiae S288C

Download sequences in FASTA format for genome, transcript, protein

Download genome annotation in GFF, GenBank or tabular format

BLAST against Saccharomyces cerevisiae genome

All 666 genomes for species:

Browse the list

Download sequence and annotation from RefSeq or GenBank

3.2、基因组测序数据:在 Genbank的 SRA子库中,搜索上述物种菌株的高通量测序结果,从中挑选常用测序平台(如:illumina HiSeq 2500)的测序结果数据【截图保存结果页面,如下图所示】;

继而利用NCBI SRA Toolkit下载和提取该测序数据(fastq格式)。

注意:(1)双末端测序;(2)长短库;(3)raw data【优先下载这个】;(4)clean data; (5)下载的fastq文件不能太小,否则结果可能不准确;(6)使用 fastq-dump提取双末端测序数据时,不能只提取了一个fastq。

Page 8: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

3.3、理论覆盖度(m值)、丢失率(e-m)和覆盖率(1-e-m)的计算:在前面搜索范例中,基因组大小为(total length): 12.1571 Mb,测序碱基总长度为 1.7G,由此可知:覆盖度(m值)= 1.7G/ 12.1571 Mb = 1.7*1000/12.1571 ≈ 140 丢失率(e-m) = 1.58*10-61 ≈ 0%覆盖率(1-e-m) ≈ 100%

4、基因组测序模拟:

4.1、使用 art系列软件,采用与3.2步一样的测序平台,对下载基因组序列进行全基因组测序进行模拟(至少使用 5次不同的参数设置进行模拟)。【截图保存程序运行结束后的屏幕回显结果】

4.2、查看模拟运算的输出结果文件:节选结果文档的第一页内容存放实验结果部分。【可以截图保存】

4.3、统计不同参数设置下的模拟结果,计算理论覆盖度(m值)、论丢失率(e-

m)和覆盖率(1-e-m),汇总成一个表格。

注意:(1)不同覆盖度的模拟,产生的数据量大小变化; (2)art_illumina模拟程序有点问题, 在模拟计算过程中会出现读长(read length)与设定参数不一致的错误,该错误会导致模拟程序提前终止,修改长度参数重试。

5、基因组测序模拟的数据模型(profile)创建:5.1、利用art系列软件,根据下载的测序结果数据,创建相应测序平台【与上面的测序模拟一致】的模拟基因组测序的数据模型(profile)。

5.2、查看模拟运算的输出结果文件:节选结果文档的第一页内容存放实验结果部分【可以截图】。

5.3、将模拟结果与该软件自带的数据模型(profile)进行对比分析,有何异同之处【难点:需要读懂弄通并编程进行统计绘图等】。

注意:(1)解读 art_illumina 等模拟软件中的各种测序平台模拟相关的profile文件内容需要扎实的专业功底; profile数据对比需要一定的数理统计方面的知识;(3)创建 profile 的 perl脚本需要在 linux平台下运行;(4)SOLid没有创建 profile的程序。

Page 9: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 2:序列组装

一、实验目的:

1、加深序列组装原理的理解;2、熟悉并掌握常用的序列组装软件的使用(如 AllPathsLG、 soapdenovo2、Velvet等);3、加强学生自主学习能力;4、培养学生发现问题、分析问题和解决问题的能力。

二、实验内容:

1. 序列组装软件概览:1.1、软件搜索练习:

在公共搜索引擎或 PubMed 数据库中,搜索“sequence assembly”,并阅读搜索结果,优先阅读外文资料。然后,列举至少 3 个基因组序列组装的常用程序,并加以简介【不少于 100 字、不可直接复制网上文字】。

1.2、软件安装练习【可选内容】:自行从网上下载至少 3款与基因组序列拼接相关的软件进行安装练习;无

论成功与否,都要记录整个安装过程——安装成功的话,进行软件运行测试,记录测试情况;如果安装失败,记录出现的问题,并及时告之指导老师,探讨问题所在,在当前软硬件条件下是否能够解决。

2、数据准备:(1)各个拼接软件配套的测试数据【可选内容】;(2)“实验项目1”所下载和模拟产生的两套高通量测序数据;(3)“实验项目1”所下载的原始基因组组装序列,用来评估序列组装结果;(4)数据上传:远程登录IBM_S812L小型机,上传上述数据到工作目录;(5)bowtie2比对时用到的参考基因组:https://support.illumina.com/sequencing/sequencing_software/igenome.html【注意基因组的版本号】

3、序列组装练习【可选内容】:3.1、使用各个拼接软件配套的测试数据,进行组装实践;3.2、利用blastn将组装结果与该配套数据中基因组进行对比,分析其中是否存在差异,并阐述原因。(1)创建本地 blast数据库:makeblastdb -in SC_gDNA.fasta -input_type fasta -title SC_gDNA -dbtype nucl -out

SC_gDNA

Page 10: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

(2)本地 blast:blastn -query ./assembly.fasta -db SC_gDNA -out ./blastx_results.outfmt6 -evalue 1e-5

-outfmt 6 -max_target_seqs 1 -num_threads 10

4、质控分析:(1)利用fastqc分别对上述两套高通量测序数据进行指控分析,保存分析结果文档【至少一套数据】;fastqc -t 10 frags.A.fastq frags.B.fastq

(2)对比两套数据分析结果的异同之处【可选内容】。

5、测序数据与参考基因组的比对:5.1、利用bowtie2,分别把上述两套高通量测序数据与第 2步准备的基因组序列进行比对,保留比对结果;如果没有可下载的参考基因组索引文件,可以远程登陆小型机使用 bowtie2-

build系列软件来自己创建。

ls /opt/BioBuilds/bin/*bowtie2*

/opt/BioBuilds/bin/bowtie2 /opt/BioBuilds/bin/bowtie2-build-s

/opt/BioBuilds/bin/bowtie2-align-l /opt/BioBuilds/bin/bowtie2-inspect

/opt/BioBuilds/bin/bowtie2-align-s /opt/BioBuilds/bin/bowtie2-inspect-l

/opt/BioBuilds/bin/bowtie2-build /opt/BioBuilds/bin/bowtie2-inspect-s

/opt/BioBuilds/bin/bowtie2-buildc /opt/BioBuilds/bin/bowtie2sam.pl

/opt/BioBuilds/bin/bowtie2-build-l

bowtie2-build gDNA.fasta index

5.2、然后利用samtools对比对结果进行简单的统计分析,保留分析结果;

5.3、对samtools输出的“*.stat”结果文档进行可视化;

5.4、对基因组序列按照特定片段长度(如:500bp),统计其GC含量;同时对samtools输出的“*.stat”结果文档也按照同样的分段模式,统计每个分段中所有位点的测序深度均值和标准差;以 GC含量为横坐标,测序深度为纵坐标,绘制两者关联的折线图,并对其进行拟合分析【可选内容】。

5.5、对比两套数据统计结果的异同之处【可选内容】。

6、序列组装及结果分析:6.1、选择一个合适上述高通量测序数据的组装软件,对上述任意一套高通量测序数据进行组装,保存组装结果【只保留最终的 FASTA格式结果】;

Page 11: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

6.2、利用 blastn(mega类型)或 Quast(http://quast.bioinf.spbau.ru/)等将组装结果与参考基因组进行对比,保存比对结果;

6.3、从比对结果中提取匹配区间信息,并以参考基因组为基准进行可视化绘图【下图是一条染色体或scaffold的匹配示意图】【如:ProcessOn 在线作图】。

6.4、分析比对结果,计算实际覆盖率;试结合理论讲授内容和第 5 步统计结果 ,探讨其与理论覆盖率之间的差异。

7、序列组装程序的编写【简化】:【可选内容】编写程序对上述数据源进行拼接【与第6步的选择相同】。算法流程可以参考

理论课上讲授的任意一种。以下是一个参考方案【贪婪算法,基于表格查询,简化,仅供参考】:(1)编写两条序列重叠模式、打分的判定模块;【核心】

(2)创建一个所有序列打分和重叠模式的二维表格;(3)设定阈值遍历表格,一边遍历一边拼接,直到所有高于阈值的单元格都遍历完成;(4)把拼接结果与原始基因组模板序列进行比较,计算覆盖率。

8. 不同组装结果的对比:【可选内容】把上述软件和自行编程得到的拼接结果进行比较,分析它们之间的覆盖率,

以及 contigs的差异等。

Page 12: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 3:基因组注释之同源搜索

一、实验目的:

1、加深同源搜索相关理论知识的理解;2、掌握全基因组的同源基因预测方法;3、掌握相关数据库和软件的使用。

二、实验内容:

1、数据准备及预处理:1.1、基因组序列:“实验项目 1”中下载或组装或由任课教师提供 的基因组序列(FASTA格式)、以及相应的 GFF格式注释文件;

1.2、已知蛋白序列:根据基因组序列的物种来源,从 UniProt数据库搜索、下载近缘物种所有已知蛋白序列(reviewed)【如:所有真菌(fungi)已知蛋白】,保存序列条数以及FASTA 格式序列,用于全基因组的同源搜索;

1.3、把上述数据上传到 IBM小型机上的工作目录中。

Page 13: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

#远程上传示例脚本:

#Ubuntu16终端命令行模式,使用 sftp指令远程登录小型机sftp [email protected]

#切换到自己在小型机上的工作目录cd /home/zhanggaochuan/workdir

#设定本地工作目录,即需要上传的数据文档所在目录lcd /home/zhanggaochuan/workdir

#上传基因组序列文档,如:SC_gDNA.fasta

put SC_gDNA.fasta

#如果需要上传本地工作目录中的所有数据文档,可以使用: put *

#上传完成,退出 sftp终端exit

2、BLAST 程序的下载与安装【可选内容】:从 NCBI主页上打开“Data & Software”的“Downloads”,从该页面可以

找到下载“BLAST (Stand-alone)”的链接;打开该链接即可找到BLAST程序的下载链接,如 ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/,打开 BLAST 最新版程序的下载页面,在该页面提供了多个不同操作系统平台下已编译好的BLAST程序,可根据具体的需求下载对应的BLAST程序。#ubuntu16 终端命令行下载脚本

#下载到当前用户的“/Downloads/blast+”目录下

#如:/home/zhanggaochuan/Downloads/blast+

cd Downloads

mkdir blast+

cd blast+

wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/*

3、创建本地 BLAST 数据库:远程登录 IBM 小型机,使用 makeblastdb程序,对上述 FASTA格式的基因组序列进行处理,建立本地 BLAST数据库。#脚本示例:

makeblastdb -in ./SC_gDNA.fasta -input_type fasta -title SC_gDNA -dbtype nucl -out

SC_gDNA

4、全基因组的同源基因搜索:4.1、使用tblastn程序,把已知蛋白质序列和上述建立的本地 BLAST数据库进行比对,注意参数设置(如e-value设为 0.00001,建议输出格式6和 7,格式6为 tabular格式,7相对于6更为详细,可以查看 6中缺失的表格标题信息);#脚本示例:

nohup tblastn -query ./protein.fasta -db SC_gDNA -out ./blastx_results.outfmt6 -evalue 1e-5

-outfmt 6 -max_target_seqs 1 -num_threads 10 &

Page 14: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

nohup tblastn -query ./protein.fasta -db SC_gDNA -out ./blastx_results.outfmt7 -evalue 1e-5

-outfmt 7 -max_target_seqs 1 -num_threads 10 &

#远程下载示例脚本:

#Ubuntu16终端命令行模式,使用 sftp指令远程登录小型机sftp [email protected]

#切换到自己在小型机上的工作目录cd /home/zhanggaochuan/workdir

#设定本地工作目录,即所下载数据文档的存放目录lcd /home/zhanggaochuan/workdir

#批量下载结果文档mget blastx_results*

#使用 get指令可以下载制定文档,如:get blastx_results.outfmt6

#下载完成,退出 sftp终端exit

4.2、使用blast92gff3.pl 和 blast2gff.py程序,分别把结果转成 GFF3格式

4.3、比较两个程序转换结果的异同之处;

4.4、排除 blast比对结果中的冗余项:【可选内容】(1)不同物种的同源蛋白在基因组上的匹配位置存在的重叠问题;(2)同一蛋白家族的不同成员在基因组上的匹配位置存在的重叠问题;(3)同一个蛋白在基因组上的不同位置的高相似区域问题;

5、同源搜索结果的评估:使用gffcompare工具把第4步结果与1.1步原始 GFF格式数据进行比较,查看结果,并分析它们之间的异同之处。gffcompare工具下载、安装和使用说明文档的参考网站:GFF utilities (http://ccb.jhu.edu/software/stringtie/gff.shtml)GitHub gffcompare (https://github.com/gpertea/gffcompare)

Page 15: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 4:基因组注释之从头预测与基因结构建

一、实验目的:

1、加深从头预测基因和基因结构建模相关理论知识的理解;2、熟悉和掌握基于从头预测方法的基因预测软件的使用。

二、实验内容:

1、数据准备及预处理:1.1、基因组序列:“实验项目 1”中下载或组装或由任课教师提供 的基因组序列(FASTA格式)、以及相应的 GFF格式注释文件;

1.2、已知蛋白序列:根据基因组序列的物种来源,从 UniProt数据库搜索、下载近缘物种所有已知蛋白序列(reviewed)【如:所有真菌(fungi)已知蛋白】,保存序列条数以及FASTA 格式序列,用于全基因组的同源搜索;

1.3、把上述数据上传到 IBM小型机上的工作目录中。

2、创建本地 BLAST 数据库:远程登录 IBM 小型机,使用 makeblastdb程序,对上述 FASTA格式的蛋白质序列进行处理,建立本地 BLAST数据库。#脚本示例:

makeblastdb -in ./uniprot_protein.fasta -input_type fasta -title uniprot_protein -dbtype prot -out

uniprot_protein

3、从头预测基因软件的安装与测试:从 网 上 搜 索 、 下 载 并 安 装 基 因预测 相 关 软 件 【 至 少 1 个 】 , 如GeneMarkES/ET、Augustus等。

3.1、Augustus 的安装与测试:#测试平台:Ubuntu16.04#需要安装很多依赖包(Install dependencies):sudo apt-get install libboost-iostreams-dev zlib1g-dev libgsl-dev libmysql++-dev libsqlite3-dev libboost-graph-dev libsuitesparse-dev liblpsolve55-dev bamtools libbamtools-dev bcftools

#如果不能自动成功安装上述依赖包,那么只能手动下载、编译、安装

Page 16: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

#下载软件(http://bioinf.uni-greifswald.de/augustus/binaries/)cd Downloads/#最新版3.3.2 (2019.04.08)wget http://bioinf.uni-greifswald.de/augustus/binaries/augustus.current.tar.gz#Length: 184643563 (176M) [application/x-gzip] => for about 15min#uncompress to the current foldercd augustus-3.3.2make#bam2wig.c:18:17: fatal error: sam.h: No such file or directory

#换成 v3.3wget http://bioinf.uni-greifswald.de/augustus/binaries/old/augustus-3.3.tar.gz

#uncompress to the current foldercd augustus#编译、安装makesudo make install#屏幕回显:install -d /opt/augustus-3.3

cp -a config bin scripts /opt/augustus-3.3

ln -sf /opt/augustus-3.3/bin/augustus /usr/local/bin/augustus

ln -sf /opt/augustus-3.3/bin/etraining /usr/local/bin/etraining

ln -sf /opt/augustus-3.3/bin/prepareAlign /usr/local/bin/prepareAlign

ln -sf /opt/augustus-3.3/bin/fastBlockSearch /usr/local/bin/fastBlockSearch

ln -sf /opt/augustus-3.3/bin/load2db /usr/local/bin/load2db

ln -sf /opt/augustus-3.3/bin/getSeq /usr/local/bin/getSeq

ln -sf /opt/augustus-3.3/bin/espoca /usr/local/bin/espoca

#查看安装路径which augustus/usr/local/bin/augustus

#以 yeast基因组序列为例进行预测augustus --gff3=on --outfile=Sc_augustus_out.gff3 --species=saccharomyces_cerevisiae_S288C ./Sc_gDNA.fa=》使用1 CPU(Intel® Pentium(R) CPU G4400 @ 3.30GHz × 2 )=》运行时间大约 10分钟=》结果文档 5.3MB(gff3格式)

Page 17: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

3.2、GeneMark 的安装与测试:#测试平台:Win10下的 VirtualBox虚拟机——操作系统 Ubuntu14.04#下载适合自己系统的版本(http://exon.gatech.edu/GeneMark/license_download.cgi)#这里下载测试的是 GeneMark-ES / ET v.4.33 (Linux 64位)版本#解压缩之后,打开终端(terminal)切换到genemark程序目录下cd /home/bioinformatics/Downloads/GeneMark/gm_et_linux_64/gmes_petap

#复制该目录下的授权码到 home目录,如果下面的指令不成功,就手动复制;如果该目录下没有授权码文档,就从其官网单独下载cp gm_key ~/.gm_key#genemark使用perl语言编写的,需要系统安装perl#查看 perl的安装目录#一般安装在/usr/bin/、或/usr/bin/perl目录下which perl #genemark的正常使用还需要安装一些perl扩展包perl -MCPAN -e shell=》yes=》sudo=》yes=》也可以全默认选择

install YAMLinstall Hash::Mergeinstall Logger::Simpleinstall Parallel::ForkManagerinstall Getopt::Longinstall File::Specinstall File::Pathinstall Data::Dumper

=》exit

#genemark基本用法(软件目录下自带 readme文档有问题):./gmes_petap.pl [options] --sequence [filename]#输入序列格式为FASTA#主要参数:Algorithm options --ES to run self-training --fungus to run algorithm with branch point model (most useful for fungal genomes) --ET [filename]; to run training with introns coordinatesfrom RNA-Seq read alignments (GFF format)

Page 18: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

--et_score [number]; $cfg->{'Parameters'}->{'et_score'} (default) minimum score of intron in initiation of the ET algorithm --evidence [filename]; to use in prediction external evidence (RNA or protein) mapped to genome --training to run only training step --prediction to run only prediction step --predict_with [filename]; predict genes using this file species specific parameters (bypass regular training and prediction steps)#主程序(gmes_petap.pl)中,创建hmm模型的相关代码中有点小问题,如下:# predict genes$dir = "/output/gmhmm";mkdir $dir;

#其中的$dir变量赋值有误,多了一个"/", Unix系统对于第一个"/"的判定输入系统根目录,所以mkdir根本不是作者预想的在当前目录下创建子目录#删除第一个"/"即可,如下:$dir = "output/gmhmm";

#下载酵母(yeat)基因组,并复制到软件工作目录中,进行建模测试(self-training)./gmes_petap.pl --ES --fungus --sequence ./Sc_gDNA.fa#1 CPU(Intel Pentium CPU G4400T @ 2.90GHz 2.90GHz)=》整个计算过程大约 40分钟

#使用刚才的酵母基因组进行预测 GC%: 38.1556#使用 heu_dir目录下mod作为起始模型进行预测分析./gmes_petap.pl --prediction --predict_with ./heu_dir/heu_05_gcode_1_gc_38.mod --sequence ./Sc_gDNA.fa#屏幕回显:here: ./heu_dir/heu_05_gcode_1_gc_38.mod#运行时间大约 10分钟#最终结果文档:genemark.gtf

#根据结果文档(gtf),从基因组草图中提取序列./get_sequence_from_GTF.pl ./genemark.gtf ./Sc_gDNA.fa#prot_seq.faa是蛋白质序列,nuc_seq.fna是核酸序列

#使用模式生物 yeast进行评估测试./gmes_petap.pl --prediction --predict_with ./heu_dir/heu_05_gcode_1_gc_38.mod --sequence ./Sc_gDNA.fa --test_set./Sc_genome_anno.gff

Page 19: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

#perl脚本调试运行模式perl -d ./gmes_petap.pl --prediction --predict_with ./heu_dir/heu_05_gcode_1_gc_38.mod --sequence ./Sc_gDNA.fa

#可以将建模训练和预测一起进行,上述mod是基础的启发式模型,该软件可以基于该模型,针对你的序列进行建模,然后再预测

4、从头预测全基因组中的基因:4.1、任选一个能够进行从头预测基因的软件,如 GeneMarkES/ET、Augustus等。

4.2、使用该软件对第1步准备的基因组序列进行基因预测分析,保存 GFF 格式的预测结果,以及相应的多肽或CDS序列(FASTA格式);

4.3、如果该软件没有直接输出 FASTA格式的多肽序列,则使用 bedtools中的getfasta程序或其他工具,从基因组序列中提取;#安装bedtools

sudo apt-get install bedtools

#或下载预编译好的bedtools

#或者把编译好的bedtools复制到自己的工作目录

#安装samtoolssudo apt install samtools

#或下载预编译好的samtools

#或者把编译好的samtools复制到自己的工作目录

#创建基因组序列(Sc_gDNA.fa)的索引文件

#切换到工作目录后,执行如下指令samtools faidx ./Sc_gDNA.fa

#输出文档为:Sc_gDNA.fa.fai

#非安装版,执行如下指令./samtools faidx ./Sc_gDNA.fa

#根据提供的BED/GFF/VCF格式,从基因组序列中提取目标基因序列

bedtools getfasta -fi ./Sc_gDNA.fa -bed ./Sc_genome_anno.gff -fo ./results.fa

#非安装版,执行如下指令

./bedtools getfasta -fi ./Sc_gDNA.fa -bed ./Sc_genome_anno.gff -fo ./results.fa

#输出文档为:results.fa

4.4、使用合适的 blast 程序对该预测基因与已知蛋白序列进行比对(只保留打分最高的一条结果),以此来鉴别从头预测出来的基因;

Page 20: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

4.5、把 4.4结果合并到4.2获得的 GFF格式结果中,使用相似性蛋白的缩写名称,替换原来预测的基因名称,保存为一个新的 GFF 文档。

5、从头预测结果的评估:使用gffcompare工具把第4步结果与1.1步原始 GFF数据以及实验2结果进行比较,查看结果,并分析它们之间的异同之处。gffcompare工具下载、安装和使用说明文档的参考网站:GFF utilities (http://ccb.jhu.edu/software/stringtie/gff.shtml)GitHub gffcompare (https://github.com/gpertea/gffcompare)./gffcompare -r ./Sc_genome_anno.gff ./Sc_augustus_out.gff3

附:GLIMMER3输出格式转换成 GFF格式参考来源;http://seqanswers.com/forums/showthread.php?t=20663

GLIMMER (ver. 3.02; iterated) predictions:

orfID start end frame score

-------- ----- ----- -- -----

>FASTA_HEADER

orf00003 560 63 -3 3.04

orf00004 865 752 -2 5.42

orf00010 2199 4055 +3 3.14

orf00027 4028 9019 +2 3.06

Shell script:grep ^orf output.glimmer.raw | awk '{OFS="\t"}{strang ="+"}{if($4 < 0) strang="-"}{gsub(/[+-]/," ")}{print"FASTA_HEADER", "GLIMMER", "gene" , $2 , $3, $5, strang ,$4, "ID="$1"; NOTE:GLIMMER ORF prediction;"}'

Result:

FASTA_HEADER GLIMMER gene 560 63 3.04 -

3 ID=orf00003; NOTE:GLIMMER ORF prediction;

FASTA_HEADER GLIMMER gene 865 752 5.42 -

2 ID=orf00004; NOTE:GLIMMER ORF prediction;

FASTA_HEADER GLIMMER gene 2199 4055 3.14 +

3 ID=orf00010; NOTE:GLIMMER ORF prediction;

FASTA_HEADER GLIMMER gene 4028 9019 3.06 +

2 ID=orf00027; NOTE:GLIMMER ORF prediction;

Page 21: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 5:基因组注释之启动子分析和预测

一、实验目的:

1、加深对基因启动子的理解和认知;2、学会如何获取已知基因的启动子序列数据;3、熟悉 EPD和TransFac数据库的使用;4、学会使用已知的启动子和转录因子 TFBSs的 HMM模型,并能够独立编程利用该 HMM模型来计算鉴别未知启动子。

二、实验内容:

1、数据准备:实验项目1”中下载的基因组序列(FASTA格式)和 GFF格式注释文件、或由任课教师提供;

2.启动子或转录因子的的计算鉴别【二选一】2.1、自行编程进行核心启动子的计算鉴别【计算分支一】(1) 从 EPD数据库中下载任意一种启动子相关的 DNA元件的 HMM数据【保存】;(2) 根据该 HMM 数据,编写程序对上述基因组序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行可靠性计算或p值计算【保存程序代码】;

(3) 根据输出的分值,绘制曲线(Excel)【保存曲线图】;(4) 根据可靠性或 p值,提出该启动子序列,在什么位置,具有该启动子元

件及其可能性大小的(一般,可靠性>95%,或p<0.05)【提出建议】;(5) 把分析结果,按照 GFF3格式保存。2.2、自行编程进行 TFBSs 的计算鉴别【计算分支二】(1) 从 TransFac 或 ENCODE 等数据库搜索并下载一个常见转录因子

(transcription factor)结合位点的 Matrix数据【保存】;(2) 根据该 Matrix数据,编写程序对上述基因组序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行可靠性计算或p值计算【保存程序代码】;

(3) 根据输出的分值,绘制曲线(Excel)【保存曲线图】;(4) 根据可靠性计算或 p值,提出该启动子序列,在什么位置,具有该转录

因子结合位点(TFBSs)及其可能性大小的(一般,可靠性计算或p<0.05)【提出建议】;

(5) 把分析结果,按照 GFF3格式保存。

3、把上述分析结果与基因组的注释信息进行对比,分析这些预测结果与已知基因的位置关系。

Page 22: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 6:基因组数据可视化【暂缺】

第二部分 可选实验项目

实验项目 7:基因组测序模拟【编程】

一、实验目的:

1、加深全基因组鸟枪法测序原理的理解;2、熟悉和掌握常用基因组测序模拟和评估程序的使用;3、能够独立地使用自己所掌握的编程语言编写程序模拟全基因组鸟枪法测序;4、加强学生自主学习能力;5、加深统计学在基因组数据分析中的应用;6、培养学生发现问题、分析问题和解决问题的能力。

二、实验步骤:

1、基因组测序模拟工具相关文献资料的调研:通过检索公共搜索引擎或专业数据库(PubMed),查阅不少于 3 种不同基因组测序模拟工具,并对其功能特征进行描述,至少精度其中一个工具的相关算法文献【不少于 100 字】。

2、基因组测序模拟软件下载:2.1、从 ART官网(http://www.niehs.nih.gov/research/resources/software/biostatistics/art/)下载 ART系列(ART Illumina/454/SOLiD read simulator)软件。2.2、搜索下载其他基因组测序模拟软件【扩展选项】。

3、测序数据下载:3.1、从 Genbank数据库的 Genome子库中下载某个物种的基因组序列,建议下载的基因组规模较小的物种基因组序列,如真菌类;要求每个同学选择不同物种或同一物种的不同软染色体序列。3.2、利用NCBI SRA Toolkit从 Genbank数据库的SRA子库中下载不同测序平台

Page 23: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

的测序结果数据(fastq格式)【优先选择基因组 DNA测序结果】。

4、基因组测序模拟:

4.1、使用art系列软件,对下载基因组序列进行全基因组测序模拟(至少模拟一种测序模式),截图保存程序运行结束后的屏幕回显结果。4.2、查看模拟运算的输出结果文件:节选结果文档的第一页内容存放实验结果部分【可以截图】。4.3、使用其他基因组测序模拟软件进行全基因组测序模拟【扩展选项】。

5、基因组测序模拟的数据模型(profile)创建5.1、利用art系列软件,根据下载的不同测序平台的测序结果数据,创建模拟基因组测序的数据模型(profile)【至少创建一种测序平台的】。5.2、查看模拟运算的输出结果文件:节选结果文档的第一页内容存放实验结果部分【可以截图】。5.3、与该软件自带的数据模型(profile)进行对比分析,有何异同之处。

6、编程模拟全基因组鸟枪法测序6.1、FASTA 格式序列解析

自行编程解析 FASTA格式序列。【注意:多序列 FASTA格式问题】FASTA格式示例:

>seq1

cgatgctagatcgatcgactgcactacgatcgtaaagtcgactg

>seq2

gcatcagtagcgaagcatgctgtagtccgctagctagaatgctgtgtcaac

建议定义一个单独的 FASTA格式序列解析类(class)。伪代码示例:

Class SeqIO{

var $name; //序列名称,字符串数组

var $seq; //序列本身,字符串数组

… //你还可以定义更多与序列相关的变量,可以参考BioPerl

//定义读取FASTA格式序列的函数

function read_fasta($seq_file)

{在这里编写读取FASTA格式序列的函数过程}

//定义读取Genbank格式序列的函数

function read_genbank($seq_file)

{在这里编写读取Genbank格式序列的函数过程}

Page 24: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

//定义更多读取***格式序列的函数

//定义一个总的序列读取函数,根据指定序列文件和格式,读取序列信息

function read_seq($seq_file,$format)

{在这里编写读取指定格式序列的函数过程

分别调用上述每个序列格式对应的函数}

//定义当前class的构造函数,根据指定序列文件和格式,读取序列信息

Function __construct($seq_file,$format)

{调用read_seq 函数}

}// Class SeqIO

//外部调用示例

$seq_file = “test.fa”; //指定序列文件

$seq_ format = “FASTA”; //指定文件格式

$genome = new SeqIO($seq_file,$format); //实例化序列文件

//然后,访问$genome->seq即可。

6.2、基因组序列随机打断过程模拟的程序模块编写建议定义一个单独的类,根据给定的若干条基因组序列,将其随机打断成

若干片段(fragment)。伪代码示例:

Class Genome_Frag{

//定义片段长度范围

var $frag_min_len = 500;

var $frag_max_len = 1000;

//[optional]定义物理丢失概率,片段克隆过程中,并不能做到 100%的克

var $phy_lost;

var $fragments; //定义存放序列片段的变量

var $N = 10; //定义单倍体基因组拷贝数

//定义一个处理单条基因组序列的函数

function seq_frag($seq)

{ 根据给定的片段长度范围对序列$seq进行打断处理

结果存放在$fragments中【尾部追加模式】}

//定义一个多序列处理函数

Page 25: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

function mseq_frag($mseq)

{ 循环遍历多条序列$mseq=>$seq

调用函数seq_frag($seq)

结果存放在中}

//[option] define a function for the lost simulation of fragments

($phy_lost)

function sim_lost()

{step1:根据类编变量$phy_lost定义的概率,以及$fragments总数量,计

算要丢失的片段数量;

step2:随机生成每个要丢失的片段下标,清除当前下标对应的$fragments

元素即可。

}

//定义一个总的基因组碎片化的当前类构造函数

function __construct($mseq)

{ step1:根据设定的$N值,循环调用函数mseq_frag($mseq);

step2:调用函数sim_lost()模拟片段丢失。

}

}// Class Genome_Frag END

//外部调用过程【接着上一个示例】

$ genome2frag = new Genome_Frag($genome->seq);

//然后,访问$ genome2frag-> fragments即可

6.3、单/双末端测序模拟建议在 6.2步的基础之上,定义一个扩展类,根据给定的若干条基因组序

列,模拟单/双末端测序。伪代码示例:

Class Seq_Simulator extends Genome_Frag{

//在 Genome_Frag类基础之上进行扩展,直接利用片段化结果进行测序模拟

//定义测序reads长度范围,注意不同测序平台是不一样的

//如果最小值与最大值相同,说明是固定长度的reads

var $read_min_len = 50;

var $read_max_len = 100;

//定义reads存放变量

//单末端测序模式

var $reads_id; //存放 reads编号,相当于 FASTA格式序列名称

var $reads; //存放 reads序列

Page 26: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

//双末端测序模式

var $reads1_id, $reads2_id;

var $reads, $reads2;

//定义单末端测序模拟函数

function single_end()

{ 遍历$fragments

Step1:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度;

Step2:在当前片段上,从左侧(5’)截取指定长度的片段作为当

前片段的测序结果,存放到类变量reads中;

Step3:当前片段序号存放到类变量reads_id中。

循环遍历$fragments

}

//定义双末端测序模拟函数

function paired_end()

{ 遍历$fragments

step1:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度,在当前片段上,从左侧(5’)截取指定长度的片段作为

当前片段的测序结果,存放到reads1变量中;

step2:当前片段序号+1 作为当前read的 id号;

step3:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度,在当前片段上,从左侧(3’)截取指定长度的片段作为

当前片段的测序结果,存放到reads2变量中;

step4:当前片段序号+2 作为当前read的 id号。

循环遍历$fragments

}

}//Class Seq_Simulator END

//外部调用过程【接着上一个示例】

$single_end = new Seq_Simulator($genome->seq); //继承于父类的构造函

$single_end-> single_end(); //模拟单末端测序

//然后,访问$single_end->reads 即可获得 reads 序列,访问$single_end-

>reads_id,获得其编号。

6.4、理论覆盖度( m 值)、论丢失率( e -m )和覆盖率 (1-e -m ) 的计算

Page 27: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

统计测序结果(reads)的总长度,与原始基因组长度比较,计算覆盖度( m 值)、丢失率( e -m )和覆盖率 (1-e -m )。对于上述编程计算过程过程,改变不同参数的设定,并运行!同时,记录不同参数设置下,覆盖度( m 值)、丢失率( e -m )和覆盖率 (1-e -m )计算结果。最终通过不同参数设定的运行结果,能够回答,什么情况下能够达到特定覆盖度(m值),如10X。

建议在上述类中定义相应的统计计算函数。

结果示例:基因组

大 小

(bp)

片段长度

区间 (bp)

N

Reads

长 度 范

(bp)

Read

s 总

数量

Read

s 总

长度

覆 盖

度 (m

值 )

理 论

丢 失

率 (e -

m )

覆盖率

(1-e -

m )

100kb 500~1000 10 ? 50~100 ? ? ? ? ?

100kb 500~1000 20 ? 50~150 ? ? ? ? ?

100kb 1000~1500 10 ? 50~100 ? ? ? ? ?

100kb 1000~1500 20 ? 100~200 ? ? ? ? ?

伪代码示例:

Class Genome_Frag{

//增加如下变量定义,片段数量

var $frag_num;

//修改原类构造函数

function __construct($mseq)

{ step1:根据设定的$N值,循环调用函数mseq_frag($mseq);

step2:调用函数sim_lost()模拟片段丢失。

step3:count一下当前类变量$fragments,将结果存放到$frag_num即可。

}

}// Class Genome_Frag END

Class Seq_Simulator extends Genome_Frag{

//增加如下变量和函数定义

var $reads_num;

var $reads1_num;

var $reads2_num;

var $reads_len=0; //reads总长度

//修改单末端测序模拟函数

function single_end()

Page 28: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

{ 遍历$fragments

Step1:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度;

Step2:在当前片段上,从左侧(5’)截取指定长度的片段作为当

前片段的测序结果,存放到类变量reads中;

Step3:当前片段序号存放到类变量reads_id中;

Step4:计算当前reads长度,累加到类变量$reads_len中。

循环遍历$fragments

count一下当前类变量$reads,将结果存放到$reads_num即可

}

//定义双末端测序模拟函数

function paired_end()

{ 遍历$fragments

step1:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度,在当前片段上,从左侧(5’)截取指定长度的片段作为

当前片段的测序结果,存放到reads1变量中;

step2:当前片段序号+1 作为当前read的 id号;

step3:根据设定的 reads长度范围,随机生成一个随机数最为当前

read长度,在当前片段上,从左侧(3’)截取指定长度的片段作为

当前片段的测序结果,存放到reads2变量中;

step4:当前片段序号+2 作为当前read的 id号。

Step5:计算当前 reads1 和 reads2长度,累加到类变量$reads_len

中。

循环遍历$fragments

count一下当前类变量$reads1,将结果存放到$reads1_num即可

count一下当前类变量$reads2,将结果存放到$reads2_num即可

}

}//Class Seq_Simulator END

//外部调用过程【接着上一个示例】

$single_end = new Seq_Simulator($genome->seq); //继承于父类的构造函

$single_end-> single_end(); //模拟单末端测序

//然后,访问$single_end->reads 即可获得 reads 序列,访问$single_end-

>reads_id,获得其编号。

//访问其他类变量,将分别获得对应得统计计算结果

6.5、引入测序品质信息或突变位点【可选内容】

Page 29: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

【这部分内容可以参考ART相关文献的详细资料来开展】建议在上述类中定义相应的函数。

6.6、输出 reads输出这些 reads序列(FASTA 格式或 FASTQ)到文本文件备用【下一个实验

需要】。建议在上述类中定义相应的函数。

实验项目 8:序列组装【编程】

一、实验目的:

1、加深序列组装原理的理解;2、加强学生的编程能力;3、加强学生自主学习能力;4、培养学生发现问题、分析问题和解决问题的能力。

二、实验步骤:

1. 序列组装软件的概览:1.1、软件搜索练习:

在公共搜索引擎或 PubMed 数据库中,搜索“sequence assembly”,并阅读搜索结果,优先阅读外文资料。然后,列举至少 3 个基因组序列组装的常用程序,并加以简要的功能和使用方法的中文简介【不少于 100 字】。

1.2、软件安装练习:自行从网上下载一款与基因组序列拼接相关的软件进行安装练习;无论成

功与否,都要记录整个安装过程——安装成功的话,进行软件运行测试,记录测试情况;如果安装失败,记录出现的问题,并及时告之指导老师,探讨问题所在,在当前软硬件条件下是否能够解决。

2、待拼接序列数据源的准备(1)各个拼接软件配套的测试数据;(2)利用实验一所掌握的全基因组测序模拟工具,生成一组单末端和双末端测序结果;同时,保留原始基因组模板序列,用来评估序列组装结果;(3)Genbank等公开数据库中下载合适的测序数据及其组装结果【可选内容】。

Page 30: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

3、数据上传:远程登录IBM_S812L小型机,上传第2步获得数据源。4、全基因组序列拼接软件的使用练习:4.1、使用各个拼接软件配套的测试数据,进行组装实践【序列拼接软件AllPathsLG、soapdenovo2、Velvet三选一】;4.2、利用blastn将组装结果与该配套数据中基因组进行对比,分析其中是否存在差异,并阐述原因。

5、全基因组序列拼接软件的使用练习 2:5.1、利用实验一所掌握的全基因组测序模拟工具所生产的测序结果【第2-(2)步】或第2-(3)步下载的数据,利用AllPathsLG、soapdenovo2、或 Velvet进行拼装【三选一】;5.2、利用blastn将组装结果与原始基因组进行对比,分析其中是否存在差异,并阐述原因。

6、序列组装程序的编写【简化】编写程序对上述数据源进行拼接【与第 5步的选择相同】。算法流程可以参考

理论课上讲授的任意一种。以下是一个参考方案【贪婪算法,基于表格查询,简化,仅供参考】:(1)编写两条序列重叠模式、打分的判定模块;【核心】

(2)创建一个所有序列打分和重叠模式的二维表格;(3)设定阈值遍历表格,一边遍历一边拼接,直到所有高于阈值的单元格都遍历完成;(4)把拼接结果与原始基因组模板序列进行比较,计算覆盖率。

7. 不同组装结果的对比:【可选内容】把上述软件和自行编程得到的拼接结果进行比较,分析它们之间的覆盖率,

以及 contigs的差异等。

Page 31: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 9:基于 EST 文库的基因转录变异体鉴别

一、实验目的:

(1)熟悉 EST相关数据库的使用;

(2)熟悉基因组相关数据的获取;

(3)掌握 BLAST本地化使用方法;

(4)学会利用已有分析工具从 EST序列中鉴别出基因转录变异体。

二、实验步骤:

1、EST 文库序列获取从 UniGene数据库中下载一个人类肿瘤样本的 EST文库(不少于1000条序

列);同时记录这些序列的组织来源、肿瘤类型和 EST条目数。

图1、来自 UniGene数据库的一个 EST文库的描述页面2、EST 序列组装【可选】

利用基因组组装方法或相关软件,对该 EST文库序列进行组装。

3、BLAST 数据库——基因组或转录组的下载从 NCBI主页上打开“Data & Software”的”Downloads”,从该页面可以

找到下载“BLAST Databases”的链接(图 2);打开该链接即可找到人类BLAST数据库(基因组或转录组)的下载链接(图3)。

Page 32: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

图2、NCBI数据和软件下载页面

注:如果上述链接中,没有你要找的 BLAST 数据库,你可以使用 makeblastdb程序,给予 FASTA格式序列自行创建本地数据库。

4、基因组注释文件的下载:

Page 33: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无
Page 34: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

5、BLAST程序下载【本地化】从 NCBI主页上打开“Data & Software”的”Downloads”,从该页面可以

找到下载“BLAST Databases”的链接(图 2);打开该链接即可找到 BLAST程序的下载链接(图 4)。点击图4中的ftp链接,打开BLAST最新版程序的下载页面(图 5),在该页面提供了多个不同操作系统平台下的BLAST程序,可根据具体的需求下载对应的BLAST程序。

图4、BLAST程序下载说明页面

Page 35: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

图 5、BLAST最新版程序下载页面

5、本地 BLAST 比对使用本地安装好的 BLAST 程序或小型机,对下载 EST 文库(或组装后的结

果),与参考基因组或转录组进行比对,保留比对结果。(1)与基因组比对【不推荐】如果是与基因组比对,则需要对比对进行解析,并与相应的 GFF文件进行

比对,找出其中基因结构存在差异的结果,该结果应该就是新的转录变异体。(2)与转录组比【推荐】如果某个 EST片段,在排除低质量、测序错误等干扰的情况,与某个已知转

录本相匹配(应该是子集),则该 EST片段就是已知的;反之,则可能是新的转录变异体。

6、文献调研查阅该转录变异体的 EST文库来源,包括文库ID、名称和组织样本类型等,

以及相关的文献报道。

Page 36: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 10:基因组注释之基因分析和预测

一、实验目的:

1、加深基因预测相关理论知识的理解;2、掌握全基因组的同源基因预测方法;3、掌握基于RNA-seq数据的全基因组基因预测方法;4、掌握基于从头预测方法的基因预测软件的使用。

二、实验内容:

1、数据准备及预处理:1.1、基因组序列:“实验项目 1”中下载的基因组序列(FASTA格式)和 GFF格式注释文件、或由任课教师提供;

1.2、已知蛋白序列:根据基因组序列的物种来源,从 UniProt数据库搜索、下载近缘物种所有已知蛋白序列(reviewed),保存序列条数以及FASTA格式序列【如:所有真菌(fungi)已知蛋白】,用于全基因组的同源搜索;

Page 37: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

1.3、RNA-Seq 数据:【可选内容】从 Genbank的 SRA子库搜索、并利用NCBI SRA Toolkit下载和提取该物种的RNA-seq数据(clean reads)(fastq格式)、或有任课教师提供,用于 RNA-Seq 数据分析;【截图保存搜索结果页面,如下图所示】

1.4、把上述数据上传到 IBM小型机上的工作目录中。

2、BLAST 程序的下载与安装【可选内容】:从 NCBI主页上打开“Data & Software”的”Downloads”,从该页面可以

找到下载“BLAST Databases”的链接(图 2);打开该链接即可找到 BLAST程序的下载链接(图 4)。点击图4中的ftp链接,打开BLAST最新版程序的下载页面(图 5),在该页面提供了多个不同操作系统平台下的BLAST程序,可根据具体的需求下载对应的BLAST程序。

Page 38: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

图4、BLAST程序下载说明页面

图 5、BLAST最新版程序下载页面

Page 39: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

3、创建本地 BLAST 数据库:使用makeblastdb程序,对上述 FASTA格式的基因组序列进行处理,建立本

地 BLAST数据库。

4、从头预测:4.1、从网上搜索、下载并安装基因预测相关软件【至少 1个】;4.2、使用该软件对基因组序列进行基因预测分析,一方面保存预测基因编码的多肽,另一方面将基因结构信息输出成 GFF3格式;4.3、使用blastp程序对该预测基因与已知蛋白序列进行比对,以此来鉴别预测的基因。

5、同源基因搜索:5.1、使用tblastn程序,把已知蛋白质序列和上述建立的本地 BLAST数据库进行比对,注意参数设置(如e-value设为 0.00001,建议输出格式6或 7);5.2、使用blast92gff3.pl和 blast2gff.py程序,把结果转成 GFF3格式;5.3、比较两个程序转换结果的异同;

5.4、编程处理 BLAST比对结果文件,排除冗余项:【可选内容】(1)不同物种的同一种蛋白在基因组上的匹配位置存在的重叠问题;(2)同一物种的同一蛋白家族的不同成员白在基因组上的匹配位置存在的重叠问题;(3)同一个蛋白在基因组上的不同位置的高相似区域问题——是家族成员问题,还是冗余匹配;5.5、把去除冗余后的结果转成 GFF3格式。

6、基于 RNA-seq 数据进行基因预测【可选内容】:6.1、利用Trinity程序对RNA-seq数据进行组装,保存最终的组装结果;6.2、使用TrinityStats.pl程序获取组装结果的简要报告;6.3、使用blastn程序把 Trinity组装的转录本与基因组序列进行比对, 建议输出格式6或 7【每条转录本只取一条结果】,结果转成 GFF3格式;6.4、使用blastx程序,把 Trinity组装的转录本与蛋白质序列进行比对,以此来鉴别这些转录本,结果转成 GFF3格式;6.5、把 6.3和 6.4步的结果合并,并存为GFF3格式。

7、把不同分析流程预测的结果与原始 GEE格式数据进行比较,分析它们之间的异同点【可选内容】。

Page 40: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 11:真核生物基因预测中的序列特征分

一、实验目的:

1、加深基因预测基本原理的理解(如三联体密码子的偏好性、内含子外显子剪切识别序列等);2、能够独立地使用自己所掌握的编程语言编写程序分析基因组各个区域的序列分布特征。

二、实验步骤:1、基因组核酸序列的获取:任选一个物种【建议小规模基因组的模式生物,如酵母(yeast)】,从

Genbank的 Genomes 数据下载其基因组序列(fasta格式)和注释信息(gff格式);

2、基因组不同区域的序列特征信息的提取和认知

编写程序解析这两个文件,并根据解析结果分别获取如下序列集:(1)编码蛋白的基因CDS区域序列;(2)基因内含子序列;(3)基因间序列;(4)外显子-内含子剪切识别位点附近的序列【前后各 10bp】,分为

Intron_5和Intron_3两类。

Page 41: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

3、三联体密码子偏好性的分析:3.1、CDS区域序列的三联体密码子偏好性的统计分析:

对 上 述 提 取 的 CDS 序 列 进 行 三联体密码子 出 现频数 进 行 统 计(WordSize=3,step=3),终止密码子不计在内;所有序列统计完成后,计算各个密码子出现的相对比例。

3.2、基因内含子序列的三联体密码子偏好性的统计分析:按照六个阅读框进行统计分析(WordSize=3,step=1,互补链),终止密

码子不计在内;所有序列统计完成后,计算各个密码子出现的相对比例。

3.3、基因间序列的三联体密码子偏好性的统计分析:按照六个阅读框进行统计分析(WordSize=3,step=1,互补链),终止密

码子不计在内;所有序列统计完成后,计算各个密码子出现的相对比例。

3.4、对上述计算结果进行统计检验,分析其是否具有显著性差异。CDS区域序列 基因内含子序列 基因间序列

CDS区域序列 统计检验 统计检验基因内含子序列 统计检验基因间序列

4、外显子内含子剪切识别序列的碱基分析规律:对第 2.1步截取的长度为 20bp的内含子和外显子识别序列进行位点碱基统

计,建立序列谱【相当于 HMM中的输出概率】;即读取 Intron_5和Intron_3的序列信息,并统计出每个位点 a/g/c/t的频数和比例,建立如下的序列谱(填入比例数值<=>统计学中的概率分布模型):

Sit

e

Base

s

1

s

2

s

3

s

4

s

5

s

6

s

7

s

8

s

9

s1

0

s1

1

s1

2

s1

3

s1

4

s1

5

s1

6

s1

7

s1

8

s1

9s20

a . . . . . . . . . . . . . . . . . . . .

g . . . . . . . . . . . . . . . . . . . .

c . . . . . . . . . . . . . . . . . . . .

t . . . . . . . . . . . . . . . . . . . .

*注意:I类和II类内含子的区别,不可混合统计!!!

5、外显子内含子剪切识别序列的计算鉴别【可选内容】5.1、阳性经验分值:

利用上述概率模型,分别对 Intron_5和Intron_3中的序列进行打分:各位点的碱基比例乘积【当心溢出问题】;两个经验值集合分别记为 S5={S5

1,S52,

Page 42: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

…,S5i,…,S5

n}和S3={S31,S3

2,…,S3i,…,S3

n}。

5.2、阴性经验分值:利用上述概率模型,对第2.1步下载的其他三个序列集【混合】进行打分,

以【 WordSize=20bp , step=1 】进行统计;两个阴性经验值集合记作S5N={S5N

1,S5N2,…,S5N

j,…,S5Nm}和S3N={S3N

1,S3N2,…,S3N

j,…,S3Nm}。

5.3、统计检验:分析 Intron_5和Intron_3的阳性概率经验分值和阴性概率经验分值两者

之间是否具有显著性差异。

5.4、最佳识别序列谱问题:(1)改变外显子/内含子切割位点识别序列长度,如从外显子/内含子切割

位点前后各 10bp,缩短到前后各 9个,以此类推......,重复第 3.1-3.3步,直到找到差异最大的长度,此时建立的序列谱统计上来说就是最佳的。

(2)或者直接看序列谱的每一个位点碱基分布是否有足够大的偏好性。

5.5、基因结构的计算鉴别:(1)利用第 2.3 步建立的外显子内含子剪切识别序列的概率分布

(Intron_5和Intron_3),对所选物种的基因组序列(第 2.1步)进行计算分析, 步移截取序列 片段(WordSize=20bp,step=1)进行打分(记作 s5 和s3,分别对应 Intron_5和Intron_3概率分布模型)【注意互补链的计算问题】。

(2)利用第3.1和 3.2步中建立的阳性(Intron_5和Intron_3)和阴性经验分值,对当前片段进行 Intron_5或Intron_3 的判定,给出判定结果——即当前片段是否属于Intron_5或Intron_3类型,p值是多大。距离法判定:与 Intron_5阳性经验分值数据集的距离:

d 5 p=∑i=1

n

abs (s 5−Si5)

n

与Intron_5阳性经验分值数据集的距离:

d 5n=∑j=1

m

abs (s5−S j5N )

m

如果d5p>d5n,则判定片段属于Intron_5阳性所代表的类别(即 Intron_5),概率 p = 1 - d5p/(d5p+ d5n)。这是最简单的一种决策!如果对第3.1和 3.2步的阳性(Intron_5和Intron_3)和阴性的概率分值进行统计分布计算,建立贝叶斯分布,继而可用更复杂的贝叶斯决策进行判定。

Page 43: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

5.6、与所选物种的基因组注释信息(GFF格式)进行对比,探讨其中得失之处。

另:完整的基因预测还要加上起始和终止信号的计算鉴别。

实验项目 12:真核生物基因预测的软件使用比较

一、实验目的:

1、加深从头计算的基因预测方法的理解;2、熟悉已有从头计算的基因预测软件的使用;3、了解不同基因预测软件的适用物种范围等的差异。

二、实验步骤:

1、已知基因预测及建模练习1.1、基因组核酸序列的获取:

从 Genbank的基因组数据库或其他数据源中,任选一个物种(A)的基因组,从中挑选一段包含至少一个已知基因 X(protein coding)的基因组序列区域【包含基因 X的所有外显子、内含子区域,同时上下游至少各延伸 1kb】。

1.2、已知基因的 mRNA 和蛋白质序列的获取:从 Genbank 的 Gene 数据库或其他数据源中,任选一个 A 物种的近缘物种

(B)【生物分类中“目”以下层次】,以及一个远缘物种(C)【生物分类中“目”以上层次】的已知同源基因 X的mRNA和蛋白质序列。

1.3、基本的序列比对分析:使用BLAST程序,对物种 A的基因 X所在的基因组序列,分别与物种 B、C的

同源基因 X的mRNA和蛋白质序列进行比对;截图保存比对结果的”Graphic Summary”和”Descriptions”两部分,如

下图所示:

Page 44: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

根据”Alignments” 记录两者的匹配区间:物种 A的基因 X所在的基因组序列

物种 B的同源基因 XmRNA 在这里填入匹配区间

蛋白质 在这里填入匹配区间

物种 C的同源基因 XmRNA 在这里填入匹配区间

蛋白质 在这里填入匹配区间

1.4、基因结构建模:(1)分别利用物种 B、C的同源基因 X的mRNA序列,使用Splign对物种 A的基因 X所在的基因组序列,进行基因结构建模分析,记录比对结果和基因结构图示信息,如下图所示:

然后,根据Alignments结果记录基因结构的详细匹配区间。物种 A的基因 X所在的基因组序列

物种 B的同源基因 X mRNA 在这里填入匹配区间

Page 45: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

物种 C的同源基因 X mRNA 在这里填入匹配区间

(2)分别利用物种 B、C的同源基因 X的蛋白质序列,使用 GeneWise对物种 A的基因 X所在的基因组序列,进行基因结构建模分析【记录关键参数设置】,记录基因结构信息,以及预测的蛋白质序列,如下所示:

>gb|AMCU01000077.1|:c70041-66791.[1001:2251].sp.trSGMCKAGFAGDDAPRAVFRKSPSELPKLFSGTPSNALIMIGMGQKDSYVGDEAQSKRGILTLRYPIEHGVVTNWDDMEKIWHHTFYNELRVAPEEHPVLLTEAPINPKSNREKMTQIVFETFNAPAFYVSIQAVLSLYASGRTTGIVLDSGDGVTHVVPIYEGFALPHAISRVDMAGRDLTDYLMKILAERGYTFSTTAEREIVRDIKEKLCYVALDFEQEIQTASQSSSLEKSYELPDGQVITIGNERFRAPEALFQPSVLGLESGGIHVTTFNSIMKCDVDVRKDLYGNIVMSGGTTMYPGISDRMQKEITALAPSSMKVKIIAPPERKYSVWIGGSILASLSTFQQMWISKQEYDESGPSIVHRKCF

(3)使用 GenScan对物种 A的基因 X所在的基因组序列,进行从头计算鉴别基因【记录关键参数设置】,记录基因结构信息,以及预测的蛋白质序列,如下所示:

Page 46: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

>/tmp/11_18_14-9:08:07.fasta|GENSCAN_predicted_peptide_1|511_aaMSAPAAPSAPTKRSHKKKGVAAAAVTKRNTLAPAKRSHKKKVAASSTGTPVQSSPAPRSVLASSPARSSPDADGNGDQDMSGDDGEEEEGGAISDTDLYCICRKPDTGTFMIGCDGGCDDWFHGKCVNISEKWKTLIDKYICPFCEERGVGETTWKRMCRRNGCGLPAQVSNNSKFCSERCGQLFFQGLIAERTRQITDGDLGARGGLISGNELKSMFQACPTVEALHNFNNGSISPVPGSSPGAMRDEGAEDPETPFSHESALNDIERERIDQITNLRATARARHSLLRDKLKFVNMLKTVASRLADHRAVKPKDLCGYDFRLSWSEEEFDVWRSSEAGQEALRIESLPLPSDEDLDGDTGMAGFNDSQPTTCMKKKCSRHYDWARLAVDDTRDELAQNTQFRQGLDKEEKEIIERARLRAREIKAGGVGGTVEFHGLSAPKENKEDREMGVGPVVEERHVQAPAQDIEMQEEKTDGVVNAEEMPQQQDGHNDDDEDKEVDMVDAIAASI

1.5、基因结构的对比分析:对上述1.3和 1.4步计算出来的基因结构进行对比分析,探讨其中的异同之

处。

1.6、基因预测结果的 Blastp 验证:对1.4步中 Genewise和 GenScan预测出来的蛋白质进行Blastp分析,截图保存比对结果的”Graphic Summary”和”Descriptions”两部分,如下图所示,并据此探讨预测结果的可靠性。

Page 47: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

2. 不同基因预测软件的对比2.1、软件的基本方法、特色等的比较:(1)利用公共搜索引擎或 PubMed,找出至少5个不同的可用于真核生物基因预测的软件,每个软件给出一段不少于100字的描述;(2)在 PC机上尝试安装(Windows或 Ubuntu平台均可)【Web版的除外】。

2.2、测试数据的获取任选一个物种【建议小规模基因组的模式生物,如酵母(yeast)】,从

Genbank的 Genomes 数据下载其基因组序列(fasta格式)和注释信息(gff格式)。

注:如果基因组比较大,下面的软件使用测试可使用部分序列进行。

Page 48: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

2.3、基因预测;使用上述软件,对下载的基因组序列进行基因预测分析;保留预测结果中

有关基因结构、CDS和编码多肽的数据(一般软件会自动生成gff 格式结果)。

2.4、预测结果的评估:对第 2.3步每个软件的预测结果的准确性进行评估; 就是与测试基因组序

列对应的注释信息(gff格式)进行对比分析,模仿下列表格进行结果汇总【主要针对 Gene和 Exon两项】;然后,对评估结果进行综合讨论。对于gene的统计表:软件名称 所选基因组

区间基因数量

软件预测基因总数

软件预测真阳性【 预 测 正确】

软件预测假阳性【预测 错误】

软件预测假阴性【没有预测出来】

Software1 80【60+20】 100【60+40】

60 40 20

*可以模仿《BMC Bioinformaticsn》中发表的文献:GASP – the nematodegenome annotation assessment project来开展该项实验。

实验项目 13:启动子的分析和预测【应用】

一、实验目的:

4、加深对基因启动子的理解和认知;5、学会如何获取已知基因的启动子序列数据;6、熟悉不同启动子分析软件的使用及其适用范围;7、学会设计启动子克隆引物。

二、实验步骤:

2.1、获取启动子区域序列(1) 任选一个人类已知基因,每个同学不同;(2) 利用 UCSC genome browser查看该基因上游 5kb 范围内有无其他基因,

确定该基因的上游 promoter的大致区间(不超过 5kb);【截图保存】

Page 49: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

(3) 在 Genbank的 Gene数据库中搜索该基因,查看该基因在基因组中的定位和基因结构;【截图保存】

(4) 点击该图示右上方的“Genbank链接”,打开该基因的序列信息,【保存该基因的 Feature区域信息】;

(5) 在该页面右侧的基因组序列位置信息框中,重新输入数据,获取该基因的启动子序列(包含exon1),注意基因编码方向;【以 FASTA格式保存启动子序列】

你也可以使用其他可行的方案获取一个已知基因的启动子序列信息。

2.2、启动子的分析和预测

(1) 使用不少于 3种包含狭义启动子分析和预测功能的工具,对这段启动子序列进行计算分析【保存每一个软件关于核心启动子的计算结果,其余结果可以不要】;

(2) 使用不少于 2种包含转录因子分析和预测功能的工具,对这段启动子序列进行计算分析,如果结果太多,请自行修改阈值,保持结果在 10个左右即可【保存结果】。

2.3、启动子区域结构模型图的绘制:

使用 Visio软件【建议】或其他擅长的软件,根据上计算结果绘制【启动子区域的结构模型图】,需要标注每个结果的定位和分值。

2.4、启动子 PCR 引物设计:

(1) 根据第 2.3步绘制的启动子结构模型图,给出设计启动子 PCR扩增引物区间界定的建议;

(2) 使用 PrimerBlast设计扩增不同Promoter区间的特异性引物,【保存引物设计结果】,并把引物设计结果(位置)绘制到启动子区域的结构模型图上;

(3) 查询 pGL4.17的载体数据,获得酶切信息【保存】;(4) 使用NEBcutter分析该启动子序列,【保存没有酶切位点“0 cutters”

的核酸内切酶数据】;(5) 选择合适的核酸内切酶,根据 pGL4.17的载体酶切数据,把其识别序列

链接到相应的引物末端【保存修改过的引物对】 ;(6) 搜索所选核酸内切酶的末端保护碱基数目,根据 pGL4.17序列信息,添

加保护碱基至相应的引物末端【再次保存修改过的引物对】 。

Page 50: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

实验项目 14:启动子的分析和预测【编程】

一、实验目的:

加深对基因启动子的理解和认知;学会如何获取已知基因的启动子序列数据;熟悉不同启动子分析软件的使用及其适用范围;熟悉 EPD和TransFac数据库的使用;学会使用已知的启动子和转录因子 TFBSs的 HMM模型,并能够独立编程利用该

HMM模型来计算鉴别未知启动子。

二、实验步骤:

2.1、获取启动子区域序列任选一个人类已知基因,每个同学不同;利用 UCSC genome browser查看该基因上游 5kb 范围内有无其他基因,确定该

基因的上游 promoter的大致区间(不超过 5kb);【截图保存】在 Genbank的 Gene数据库中搜索该基因,查看该基因在基因组中的定位和基因

结构;【截图保存】点击该图示右上方的“Genbank链接”,打开该基因的序列信息,【保存该基因

的 Feature区域信息】;在该页面右侧的基因组序列位置信息框中,重新输入数据,获取该基因的启动

子序列(包含 exon1),注意基因编码方向;【以 FASTA格式保存启动子序列】

你也可以使用其他可行的方案获取一个已知基因的启动子序列信息。

2.2、启动子的分析和预测使用不少于3种包含狭义启动子分析和预测功能的工具,对这段启动子序列进

行计算分析【保存每一个软件关于核心启动子的计算结果,其余结果可以不要】;

使用不少于2种包含转录因子分析和预测功能的工具,对这段启动子序列进行计算分析,如果结果太多,请自行修改阈值,保持结果在 10个左右即可【保存结果】。

2.3、启动子区域结构模型图的绘制:使用 Visio软件【建议】或其他擅长的软件,根据上计算结果绘制【启动子区域

的结构模型图】,需要标注每个结果的定位和分值。

Page 51: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

2.4、启动子或转录因子的的计算鉴别【二选一】2.4.1、自行编程进行核心启动子的计算鉴别【计算分支一】从 EPD数据库中下载任意一种启动子相关的 DNA元件的 HMM数据【保存】;根据该 HMM 数据,编写程序对第一部分的启动子序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行p值计算【保存程序代码】;

根据输出的分值,绘制曲线(Excel)【保存曲线图】;根据p值,提出该启动子序列,在什么位置,具有该启动子元件及其可能性大

小的(一般,p<0.05或更低)【提出建议】;与之前的分析结果比较看看,你的计算结果是否与其一致【讨论】。

2.4.2、自行编程进行 TFBSs 的计算鉴别【计算分支二】从TransFac或 ENCODE等数据库搜索并下载一个常见转录因子(transcription

factor)结合位点的 Matrix数据【保存】;根据该 HMM 数据,编写程序对第一部分的启动子序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行p值计算【保存程序代码】;

根据输出的分值,绘制曲线(Excel)【保存曲线图】;根据 p 值,提出该启动子序列,在什么位置,具有该转录因子结合位点

(TFBSs)及其可能性大小的(一般,p<0.05或更低)【提出建议】;与之前的分析结果比较看看,你的计算结果是否与其一致【讨论】。

实验项目 15:启动子的分析和预测【编程 2】

一、实验目的:

加深对基因启动子的理解和认知;学会如何获取已知基因的启动子序列数据;熟悉不同启动子分析软件的使用及其适用范围;熟悉 EPD和TransFac数据库的使用;学会使用已知的启动子和转录因子 TFBSs的 HMM模型,并能够独立编程利用该

HMM模型来计算鉴别未知启动子;熟悉HUGO、BioMart的使用。

Page 52: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

二、实验步骤:

2.1、获取启动子区域序列任选一个人类某个染色体(每个同学不同),从 HUGO的 HGNC数据库下载基因IDs

和名称等信息,至少包含 Ensembl Gene IDs;随机提取其中100个基因的 Ensembl Gene IDs;在R语言环境中安装 biomaRt包,利用该包下载上述 1000个基因的上游启动子

序列(-1000bp);【FASTA格式保存】

你也可以使用其他可行的方案获取一个已知基因的启动子序列信息。

2.2、启动子或转录因子的的计算鉴别【二选一】2.2.1、自行编程进行核心启动子的计算鉴别【计算分支一】从 EPD数据库中下载任意一种启动子相关的 DNA元件的 HMM数据【保存】;根据该 HMM 数据,编写程序对第一部分的启动子序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行p值计算【保存程序代码】;

根据输出的分值,绘制曲线(Excel)【保存曲线图】;根据p值,提出该启动子序列,在什么位置,具有该启动子元件及其可能性大

小的(一般,p<0.05或更低)【提出建议】。

2.2.2、自行编程进行 TFBSs 的计算鉴别【计算分支二】从TransFac或 ENCODE等数据库搜索并下载一个常见转录因子(transcription

factor)结合位点的 Matrix数据【保存】;根据该 HMM 数据,编写程序对第一部分的启动子序列进行计算分析,使用

bootstrap抽样评估(注意随意打乱的次数问题)的方法对每个计算的片段进行p值计算【保存程序代码】;

根据输出的分值,绘制曲线(Excel)【保存曲线图】;根据 p 值,提出该启动子序列,在什么位置,具有该转录因子结合位点

(TFBSs)及其可能性大小的(一般,p<0.05或更低)【提出建议】。

Page 53: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

软件参数解读augustus

AUGUSTUS (3.3) is a gene prediction toolwritten by M. Stanke, O. Keller, S. König, L. Gerischer and L.Romoth.

usage:augustus [parameters] --species=SPECIES queryfilename

'queryfilename' is the filename (including relative path) to the filecontaining the query sequence(s)in fasta format.

SPECIES is an identifier for the species. Use --species=help to see alist.

parameters:--strand=both, --strand=forward or --strand=backward--genemodel=partial, --genemodel=intronless, --genemodel=complete,--genemodel=atleastone or --genemodel=exactlyone partial : allow prediction of incomplete genes at the sequenceboundaries (default) intronless : only predict single-exon genes like in prokaryotesand some eukaryotes complete : only predict complete genes atleastone : predict at least one complete gene exactlyone : predict exactly one complete gene--singlestrand=true predict genes independently on each strand, allow overlapping geneson opposite strands This option is turned off by default.--hintsfile=hintsfilename When this option is used the prediction considering hints(extrinsic information) is turned on. hintsfilename contains the hints in gff format.--AUGUSTUS_CONFIG_PATH=path

Page 54: 《基因组信息学》 - bioinformatics.suda.edu.cnbioinformatics.suda.edu.cn/teaching/2018-2019-2/genomics/exp/genomics... · 1.2、软件安装练习【可选内容】: 自行从网上下载至少3款与基因组序列拼接相关的软件进行安装练习;无

path to config directory (if not specified as environment variable)--alternatives-from-evidence=true/false report alternative transcripts when they are suggested by hints--alternatives-from-sampling=true/false report alternative transcripts generated through probabilisticsampling--sample=n--minexonintronprob=p--minmeanexonintronprob=p--maxtracks=n For a description of these parameters see section 4 of README.TXT.--proteinprofile=filename When this option is used the prediction will consider the proteinprofile provided as parameter. The protein profile extension is described in section 7 ofREADME.TXT.--progress=true show a progressmeter--gff3=on/off output in gff3 format--predictionStart=A, --predictionEnd=B A and B define the range of the sequence for which predictionsshould be found.--UTR=on/off predict the untranslated regions in addition to the codingsequence. This currently works only for a subset of species.--noInFrameStop=true/false Do not report transcripts with in-frame stop codons. Otherwise,intron-spanning stop codons could occur. Default: false--noprediction=true/false If true and input is in genbank format, no prediction is made.Useful for getting the annotated protein sequences.--uniqueGeneId=true/false If true, output gene identifyers like this: seqname.gN