大肠杆菌基因组分析详细指南
1. 前期准备与安装检查
在开始基因组分析之前,我们需要进行一些必要的准备工作。首先,使用详细列表命令
ls -l
可以将当前文件夹中的所有文件打印到屏幕上。其中,文件属性带有 “x” 的即为可执行文件,也就是程序。
在解压二进制文件后,为了节省大约 430MB 的磁盘空间,我们可以使用
rm
命令删除源文件
ncbi-blast-2.2.25+-ia32-linux.tar
。接下来,我们要检查 BLAST+ 的安装是否成功。
运行以下命令来查看
blastp
程序的帮助信息:
$ ./bin/blastp -h
执行该命令后,如果出现许多行输出,说明程序可以正常运行。
2. 蛋白质组下载
我们将从美国国家生物技术信息中心(NCBI)的 FTP 服务器下载两种大肠杆菌的蛋白质组。具体步骤如下:
1.
下载大肠杆菌 K12 的蛋白质组
:
bash
$ wget "ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/Escherichia_coli_K_12_substr_MG1655_uid57779/NC_000913.faa"
2.
下载大肠杆菌 O157:H7 的蛋白质组
:
bash
$ wget "ftp://ftp.ncbi.nlm.nih.gov/genomes/Bacteria/Escherichia_coli_O157_H7_EDL933_uid57831/NC_002655.faa"
3.
重命名文件
:为了方便后续操作,我们将下载的文件重命名为
ecoli-k12.faa
和
ecoli-h7.faa
。
bash
$ mv NC_000913.faa ecoli-k12.faa
$ mv NC_002655.faa ecoli-h7.faa
4.
下载大肠杆菌 O104:H4 的蛋白质组
:从美国病原体系统资源整合中心(PATRIC)的 FTP 服务器下载该菌株的蛋白质组,并将其重命名为
ecoli-h4.faa
。
bash
$ wget "http://brcdownloads.vbi.vt.edu/patric2/genomes/Escherichia_coli_TY-2482/Escherichia_coli_TY-2482.PATRIC.faa"
$ mv Escherichia_coli_TY-2482.PATRIC.faa ecoli-h4.faa
3. 统计各文件中的蛋白质数量
由于这些文件是以 FASTA 格式保存的,我们可以通过搜索每个文件中 “>” 字符的数量来统计蛋白质的数量。
$ grep -c ">" ecoli*faa
运行结果如下:
| 文件名称 | 蛋白质数量 |
| ---- | ---- |
| ecoli-h4.faa | 5414 |
| ecoli-h7.faa | 5298 |
| ecoli-k12.faa | 4146 |
从结果可以看出,大肠杆菌 O157:H7 比大肠杆菌 K12 大约多 1000 个蛋白质,而大肠杆菌 O104:H4 的蛋白质编码序列更多。
4. 基因组比较
我们将使用 BLAST+ 来对大肠杆菌 O157:H7 和大肠杆菌 K12 的翻译注释基因组进行计算比较,这需要两个基本步骤:为一个基因组设置数据库文件和进行查询。
4.1 BLAST 数据库设置
我们为大肠杆菌 K12 创建数据库,使用
makeblastdb
命令,具体操作如下:
$ ls
ecoli-h4.faa ecoli-h7.faa ecoli-k12.faa ncbi-blast-2.2.25+
$ ./ncbi-blast-2.2.25+/bin/makeblastdb -in ecoli-k12.faa -dbtype prot -title "Escherichia coli K12" -out ecolik12 -parse_seqids
该命令的参数说明如下:
-
-in ecoli-k12.faa
:指定用于构建数据库的 FASTA 格式输入文件。
-
-dbtype prot
:告诉
makeblastdb
我们的序列是蛋白质序列,而不是核苷酸序列。
-
-title
:设置 BLAST 结果文件的标题。
-
-out ecolik12
:命名数据库及其相关文件。
-
-parse_seqids
:生成一个额外的数据库,以便通过基因标识符从 BLAST 数据库中检索单个序列。
成功执行该命令后,活动文件夹中会出现八个新文件,这些是 BLAST+ 可读的数据库文件。我们只需记住数据库名称
ecolik12
即可。
4.2 BLAST 查询
接下来进行最关键的查询步骤,该步骤可能需要约 30 分钟。我们使用
blastp
程序来测试大肠杆菌 O157:H7 中的每个蛋白质是否能在大肠杆菌 K12 的基因组中找到。
$ time ./ncbi-blast-2.2.25+/bin/blastp -db ecolik12 -query ecoli-h7.faa -out h7vsk12.txt -evalue .00001
该命令的参数说明如下:
-
-db ecolik12
:指定要查询的数据库名称。
-
-query ecoli-h7.faa
:指定包含要查询的蛋白质序列的 FASTA 格式输入文件。
-
-out h7vsk12.txt
:定义用于保存查询结果的输出文件。
-
-evalue .00001
:限制每个蛋白质要显示的命中数量,该值对应于期望阈值或期望值,值越小,匹配越显著。
查询结果将保存在
h7vsk12.txt
文件中,该文件较大,有 707447 行,约 31MB。
5. 查看 BLAST+ 结果文件
我们可以使用
less
命令打开结果文件
h7vsk12.txt
查看其内容:
less h7vsk12.txt
使用箭头键和 PageUp/Down 键滚动文本,按
Q
键退出。结果文件的结构如下:
- 开头是 BLAST 程序的版本和引用信息。
- 接着是被查询的数据库信息。
- 每个查询序列以
Query=
开头。
- 有些序列可能没有命中结果,而有些序列可能有多个命中结果,每个命中结果会显示序列比对信息。
为了找出大肠杆菌 O157:H7 特有的蛋白质,我们需要关注那些在大肠杆菌 K12 中没有命中结果的序列。
6. 处理 BLAST+ 结果文件
由于结果文件太大,手动浏览几乎不可能。我们可以使用 AWK 编程语言来提取我们需要的信息。
6.1 提取包含
Query=
或
No hits
的行
$ awk '/Query=/ || /No hits/{print}' h7vsk12.txt | head
6.2 提取紧跟在
No hits found
后面的
Query=
行
$ awk '/Query=/ || /No hits/{print}' h7vsk12.txt | awk '{i++; line[i]=$0; if($0~/No hits/){print line[i-1]}}' | head
通过这一步,我们得到了大肠杆菌 O157:H7 特有的蛋白质列表,共有 1099 个。
6.3 清理列表
列表中包含许多假定、假设或未知的蛋白质,我们可以使用
egrep
命令排除包含这些关键词的行:
$ awk '/Query=/ || /No hits/{print}' h7vsk12.txt | awk '{i++; line[i]=$0; if($0~/No hits/){print line[i-1]}}' | egrep -v "([Uu]nknown|[Pp]utative|[Hh]ypothetical)" | head -20
通过以上步骤,我们得到了大肠杆菌 O157:H7 特有的、有注释的蛋白质列表。这些蛋白质可能与大肠杆菌 O157:H7 的致病性有关,我们可以进一步研究这些蛋白质,以了解大肠杆菌 O157:H7 的致病机制。
以下是整个操作流程的 mermaid 流程图:
graph LR
A[安装检查] --> B[蛋白质组下载]
B --> C[统计蛋白质数量]
C --> D[基因组比较]
D --> D1[数据库设置]
D --> D2[查询]
D2 --> E[查看结果文件]
E --> F[处理结果文件]
F --> F1[提取特定行]
F --> F2[提取紧跟行]
F --> F3[清理列表]
通过以上详细的操作步骤,我们可以完成大肠杆菌基因组的比较分析,找出可能与致病性相关的蛋白质。在实际应用中,我们可以根据这些结果进行更深入的研究,例如对这些蛋白质进行功能验证,以揭示大肠杆菌的致病机制。
大肠杆菌基因组分析详细指南
7. 对特有的有注释蛋白质的进一步分析
得到大肠杆菌 O157:H7 特有的、有注释的蛋白质列表后,我们可以对这些蛋白质进行进一步的分类和功能推测。以下是对部分蛋白质功能的简单分析:
| 蛋白质编号 | 蛋白质名称 | 可能功能 |
| ---- | ---- | ---- |
| gi|15799681|thr 操纵子前导肽 | 参与苏氨酸操纵子的调控 |
| gi|15799732|gyrase 抑制的抗毒素 | 可能与抑制 gyrase 相关,影响细菌的 DNA 拓扑结构 |
| gi|15799733|gyrase 抑制的毒素 | 与抗毒素相对应,可能起到毒性作用 |
| gi|15799819|菌毛蛋白 | 参与细菌的黏附等过程 |
| gi|15800218|RTX 家族外蛋白 | 可能具有细胞毒性等作用 |
通过这样的分类和分析,我们可以初步了解这些特有的蛋白质在大肠杆菌 O157:H7 中的可能作用,为后续的实验研究提供方向。
8. 结果验证与拓展
为了确保我们得到的结果的准确性和可靠性,我们可以进行一些验证工作。
8.1 重复实验
使用相同的方法和参数,再次对大肠杆菌 O157:H7 和大肠杆菌 K12 进行基因组比较分析,看是否能得到相似的结果。如果两次结果差异较大,需要检查实验过程中是否存在错误或不稳定因素。
# 再次设置数据库
$ ./ncbi-blast-2.2.25+/bin/makeblastdb -in ecoli-k12.faa -dbtype prot -title "Escherichia coli K12" -out ecolik12 -parse_seqids
# 再次进行查询
$ time ./ncbi-blast-2.2.25+/bin/blastp -db ecolik12 -query ecoli-h7.faa -out h7vsk12_again.txt -evalue .00001
8.2 与其他工具比较
可以使用其他的序列比对工具,如 FASTA 等,对相同的基因组进行比较,看是否能得到类似的特有的蛋白质列表。如果不同工具得到的结果有较大差异,需要进一步分析原因。
# 使用 FASTA 进行比对示例(假设已安装 FASTA)
$ fasta36 -d ecolik12 -i ecoli-h7.faa -o h7vsk12_fasta.txt
8.3 拓展分析
除了比较大肠杆菌 O157:H7 和大肠杆菌 K12,我们还可以将更多的大肠杆菌菌株纳入分析范围,如大肠杆菌 O104:H4 等。这样可以更全面地了解不同菌株之间的差异和相似性,找出更广泛的与致病性相关的蛋白质。
# 为大肠杆菌 O104:H4 创建数据库
$ ./ncbi-blast-2.2.25+/bin/makeblastdb -in ecoli-h4.faa -dbtype prot -title "Escherichia coli O104:H4" -out ecolih4 -parse_seqids
# 将大肠杆菌 O157:H7 与大肠杆菌 O104:H4 进行比较
$ time ./ncbi-blast-2.2.25+/bin/blastp -db ecolih4 -query ecoli-h7.faa -out h7vsh4.txt -evalue .00001
9. 总结与展望
通过以上一系列的操作,我们完成了对大肠杆菌 O157:H7 和大肠杆菌 K12 的基因组比较分析,找出了大肠杆菌 O157:H7 特有的、有注释的蛋白质列表。这些蛋白质可能与大肠杆菌 O157:H7 的致病性密切相关。
在未来的研究中,我们可以基于这些结果进行更深入的实验研究。例如,对这些特有的蛋白质进行基因敲除实验,观察细菌的致病性是否发生变化;或者对这些蛋白质进行结构分析,了解其作用机制。同时,随着测序技术的不断发展,我们可以获取更多的大肠杆菌菌株的基因组数据,进行更全面和深入的分析,为预防和治疗大肠杆菌感染提供更有效的策略。
以下是结果验证与拓展部分的 mermaid 流程图:
graph LR
A[重复实验] --> B[与其他工具比较]
B --> C[拓展分析]
D[特有的有注释蛋白质列表] --> A
D --> B
D --> C
总之,通过基因组比较分析,我们为研究大肠杆菌的致病性提供了重要的线索和基础,未来的研究有望进一步揭示大肠杆菌的致病奥秘。
超级会员免费看
1070

被折叠的 条评论
为什么被折叠?



