这可能是你!点击这里提交 Maker 博客系列的摘要。
大量的生命科学研究依赖于重组 DNA 分子的构建或分析。这些分子的精确序列对于它们所参与的科学工作的可重复性至关重要。通常会附带一个关于克隆策略的临时描述来发布每篇文章。不幸的是,大多数已发表的克隆策略要么不完整,要么含糊不清,而且有些干脆是错误的。手动遵循克隆策略是一个艰苦的过程,这可能是为什么这么多这类错误通过了同行评审过程。Pydna 是 Python 的扩展,用于以紧凑的方式表达克隆策略。具有基本 Python 知识的用户可以读取 Jupyter Notebook 中的 Pydna,因为其叙述格式类似于传统的自由格式描述。这些克隆策略很容易通过简单地重新执行笔记本进行验证。一个额外的好处是使用自动集成服务(如GitHub Actions)进行自动验证。
问题
代谢工程是一个生命科学领域,它通常涉及调节代谢途径以实现代谢物过量生产,旨在创造所谓的细胞工厂,用于生物技术上有趣的分子。细胞工厂被认为将在向绿色经济转型中发挥未来作用。在我的实验室里,我们试图通过将新基因插入面包酵母中来生产辣椒素分子的脂肪酸部分,使辣椒具有辣味,本质上与在家制作面包时使用的生物体相同。
图 1:来自大肠杆菌的基因(绿色)被转移到面包酵母细胞(蓝色)。最终目标是生产辣椒素(红色方框)中的脂肪酸。图由Cláudia Barata,米尼奥大学提供。
我们需要确保新的 DNA 分子通过将较小的 DNA 分子组合成较大的分子(重组 DNA)来稳定地维持和在细胞内发挥功能,根据一个计划,通常被称为克隆策略。
那么为什么博客标题会如此具有挑衅性呢?事实证明,许多涉及重组 DNA 的学术出版物并没有包含用于实验中使用的 DNA 结构的完整、明确的克隆策略。克隆策略有时很笼统,例如“基因 X 克隆在质粒 Y 中,形成质粒 Z”。(一个质粒是一个可以自我复制的小型环状 DNA 片段,而在此背景下的克隆仅仅意味着将 DNA 分子连接在一起。)这远远不足以重现质粒 Z,使得质粒 Z 上的研究不可重复。未能记录克隆策略中涉及的精确努力既不幸又没有必要,因为它们包括一系列简单的单元操作串联在一起,结果几乎总是确定的。
克隆策略描述
克隆项目的计划,即使用点选 DNA 编辑器与从数据库或 DNA 测序实验获得的序列文件一起使用,非常普遍。这些数据文件、序列登录号、PCR 引物序列等需要与对执行的操作的详细描述一起使用,以便在体外或在硅片中重新创建最终的构建序列。即使提供这些信息,也不能保证它正确完整,除非手动重新创建每个步骤。但是,这可能并不容易,因为没有广泛采用的标准来明确规定应该包含哪些信息以及如何描述克隆策略。
Pydna:可执行克隆策略
可以使用 pydna 软件包以 Python 形式正式表达克隆策略。Pydna 可以以紧凑的方式处理最常见的亚克隆技术(即用于将 DNA 分子拼接在一起的技术)。Jupyter Notebook 支持通常已经用于描述克隆实验的线性叙述格式。
Pydna 在实践中
在合成酵母中的辣椒素脂肪酸的背景下,所做的几个基因修饰之一是表达来自大肠杆菌的脂肪酸合酶基因 AcpH(酰基载体蛋白磷酸二酯酶)。该基因在名为 pYPKa 的质粒中的克隆将用作使用 pydna 的简单示例。
图 2:pYPka 质粒用限制性内切酶(吃豆人)切割。来自大肠杆菌的 AcpH 基因通过 PCR 扩增。最后,这两个 DNA 分子通过连接结合在一起。
通过限制性内切酶克隆构建质粒
第一步是从 pydna 中导入一些需要的功能。
pYPKa 质粒从本地文本文件读取。这个 DNA 分子是环状的。
限制性内切酶AjiI是从 Python 软件包 Biopython 中导入的。(限制性内切酶是一种分子剪刀,它可以以可预测的方式切割 DNA 链。)
使用限制性内切酶将环状质粒线性化,该限制性内切酶在一个独特的部位切割质粒。
需要访问Genbank才能下载 AcpH 基因。美国国家生物技术信息中心 (NCBI) 提供了一个名为“E-utilities”的 API,可以通过 Python 访问。在执行此脚本之前更改下面的电子邮件地址,因为在使用 e-utilities 时应始终提供电子邮件地址。
下面从 Genbank 下载 AcpH 基因。
可以在这里查看下载的基因:NC_000913 424337-424918。我们通过将 DNA 序列作为字符串打印出来来检查该基因。
使用聚合酶链式反应 (PCR) 从源 DNA(通常称为模板 DNA)复制基因。相对于模板 DNA,复制了一个相对较短的特定 DNA 片段,数量很多。(PCR 顺便说一下,也用于检测像 COVID-19 这样的传染病。)下面两个 PCR 引物(868 & 867)用于 PCR 扩增 AcpH 基因。PCR 引物是用于引导 PCR 基因复制过程的短片段单链 DNA。
使用两个 PCR 引物通过 PCR 合成基因
我们可以这样可视化引物如何位于 AcpH 基因的每个末端
最终载体从两个线性 DNA 分子连接在一起
我们只需将两个线性 DNA 分子加在一起,并告诉 pydna 我们想要使用 looped 方法的环状序列。然后我们最终可以使用 write 方法将质粒写入文件。
一个包含上面完整示例的 Jupyter 笔记本可在此处获取。
通过同源重组构建质粒
我们在前面的示例中制作的质粒不足以使基因发挥作用。基因通常需要启动子和终止子才能转录。启动子和终止子是启动和结束转录的 DNA 片段,转录会创建基因的 RNA 拷贝 (mRNA)。
同源重组和 Gibson 组装技术通常用于组装更大的、更复杂的重组 DNA 分子。这些技术需要 DNA 末端具有短片段的相同 DNA 序列。Pydna 实现了一种 DNA 组装算法,该算法完全依赖于分子的 DNA 序列。在下面的示例中,我们使用 pydna 模拟同源重组来制作我们之前示例中克隆的基因的表达质粒。
图 3:pYPkpw 质粒用限制性内切酶(吃豆人)切割。启动子、AcpH 基因和终止子通过 PCR 获得。四个线性 DNA 分子通过共享的 DNA 序列重组在一起,形成一个新的环状分子。
我们从本地文件读取 DNA 序列。
pYPKa_Z_RPL17A 和 pYPKa_E_RPL16B 质粒类似于之前示例中构建的质粒,但分别携带启动子和终止子。我们使用三对 PCR 引物来合成三个 PCR 产物
质粒载体通过用限制性内切酶EcoRV消化而线性化。
组装算法会遍历参数中的 DNA 序列,丢弃长度小于一定限制的序列。
组装类有两个可供选择的方法,assemble_circular 和 assemble_linear,具体取决于组装的目标。我们对环状组装感兴趣。
我们获得了 pYPK0_RPL17A_EcacpH_RPL16B 载体的两个环状产物。这是预期的,因为这两个分子互为反向互补。
我们可以可视化四个线性 DNA 分子如何组合成一个新的环状质粒。下图中的数字代表共享相同序列的长度。
为了简洁起见,上面的代码示例省略了一些必要步骤。包含完整同源重组示例的 Jupyter 笔记本可从 这里 获取。
结论
pydna 采用的一个当前障碍是,一些生物学家仍然对“编写代码”持略微负面的看法。然而,由于该领域不断产生的数据量越来越大,编程可能成为未来生物学家工具箱中不可或缺的一部分。pydna 和类似工具可以帮助解决生命科学中可重复性的挑战。
致谢
这项工作得到葡萄牙科学技术基金会 (FCT) 通过项目 FatVal PTDC/EAM-AMB/032506/2017 的支持,该项目由 FCT I.P. 的国家资金资助,以及通过 COMPETE2020 – 竞争力与国际化运营计划 (POCI) 的欧洲区域发展基金 (ERDF) 资助。CBMA 由国家资金通过 FCT I.P. 资助的战略项目 UIDB/04050/2020 支持。
关于作者
Björn Johansson 是葡萄牙米尼奥大学生物系助理教授,在那里他领导着一个小型研究小组并教授生物学。他的研究领域是酵母生理学和代谢工程,他的团队正在努力扩展面包酵母的代谢,使其包含有趣的新产品和底物。在生物学之外,Björn 对生物信息学和开放式可重复科学感兴趣。他也是开源软件爱好者,从 2007 年开始在台式机上使用 Linux。
关于 Maker 博客系列
Anaconda 在 每月博客系列 中放大了一些最活跃和最受珍视的社区成员的声音。如果您是一位 Maker,一直在寻找机会讲述您的故事,详细阐述您喜欢的项目,教育您的同行,并打造您的个人品牌,请考虑提交摘要。有关更多详细信息以及访问大量教育数据科学资源和讨论线程(包括关于这篇博文的帖子)的信息,请访问 Anaconda Nucleus。