12.windows Ubuntu 子系统:构建非冗余基因集

        上次我们用prodigal对contig进行了ORF(开放阅读框)预测,可见11.windows ubuntu 子系统 contig ORF(开放阅读框)预测。-CSDN博客,接下来我们便开始构建非冗余基因集。

        构建非冗余基因集有几个重要的原因:

  1. 简化分析: 在大规模基因组学研究中,存在大量的基因序列。去除冗余可以简化数据集,减少分析的复杂性和计算的资源消耗。

  2. 提高准确性: 去除冗余基因集可以减少重复的信息,从而提高分析的准确性。每个基因在非冗余基因集中只出现一次,避免了重复计算和统计分析中的偏差。

  3. 便于比较和注释: 非冗余基因集更容易进行基因功能注释和进化比较分析。每个基因都是唯一的,使得对其功能、结构和进化关系的研究更加清晰和准确。

        上次,我们使用prodigal -i contigs.fasta -o  prodigal/a1.gff -d  prodigal/a1.fasta -a  prodigal/a1pro.fasta -p meta ,得到

        其中a1pro.fasta指定输出的蛋白质序列文件名,用于存储预测出的蛋白质序列,我们用来构建非冗余基因集。我们用CD-HIT来构建。

        (CD-HIT(http://weizhongli-lab.org/cd-hit/)是一个广泛使用的蛋白或核酸序列比较聚类工具,其将所有序列按照参数设定进行聚类,并将每一组聚类中的最长序列作为代表序列进行输出,同时给出每组聚类下的每个序列名可供相似度分析使用。CD-HIT的基本思路是首先对所有序列按照其长度进行排序,然后从最长的序列开始,形成第一个序列类,然后依次对序列进行处理,如果新的序列与已有的序列类的代表序列的相似性在cutoff以上则把该序列加到该序列类中,否则形成新的序列类。

        CD-HIT速度快主要是两个方面的原因:一个是使用了word过滤方法,即如果两条序列之间的相似性在80%(假设序列长度为100),那么它们至少有60个相同的长度为2的word,至少有40个相同的长度为3的word,至少有20个相同的长度为4的word。基于这个原则,在处理新的序列的时候,如果新的序列与已有序列的相同word的长度能满足这些要求则不需要进行比对了,这极大的降低了时间消耗;另外一个速度快的原因是使用了index table,可以很快的计算序列之间相同word的数目。

        尽管CD-HIT速度快使用方便,但是也需要注意其缺点:

        ①它不能保证同一个序列类中的序列的相似性都在threshold之上,因为每次比对都是用新序列与序列类的代表序列进行,这就有可能使得序列类中除了代表序列外其他序列之间的相似性在threshold之下。比如A是代表序列,B与A的相似性大于0.95,C与A的相似性也大于0.95,但是这并不能保证B与C的相似性也大于0.95。

        ②它不能保证一个序列类的病毒与另外一个序列类中的病毒的相似性也在threshold之上,原因还是在于用代表序列代表了整个序列类。

        ③基于word filter的方法使得使用每个长度的word能够处理的冗余性水平有限,如使用长度为2的word只能够得到相似性在50%以上的序列,长度为3的word只能够得到相似性在66.7%以上的序列类,类似的,长度为5的word只能够得到相似性在80%以上的序列。在实际应用的时候需要注意选择的word长度与threshold的匹配。)来自宏基因组基因集去冗余:CD-HIT-腾讯云开发者社区-腾讯云 (tencent.com)

#安装CD-HIT

conda install -c bioconda cd-hit -y

#CD-HIT基础应用

cd-hit -i a1pro.fasta -o qurongyuprotein.fasta -c 0.95 -M 640000 -T 24 -n 5 -d 0 -aS 0.9 -g 1 -sc 1 -sf 1

  • -i a1pro.fasta:输入文件,即包含蛋白质序列的 FASTA 文件。
  • -o qurongyuprotein.fasta:输出文件,即聚类后的蛋白质序列的 FASTA 文件。
  • -c 0.95:设置聚类阈值,表示两个序列之间的相似度阈值,超过该阈值的序列将被聚类在一起。在这里是 0.95,即相似度达到 95% 以上的序列会被聚类在一起。
  • -M 640000:设置内存限制,单位为 MB。这里设置为 640000 MB,即 640 GB。
  • -T 24:设置线程数,即并行处理的线程数量,这里设置为 24。
  • -n 5:设置聚类后的序列名字的长度,即在输出文件中每个序列的名字长度限制为 5 个字符。
  • -d 0:用于设置聚类时是否考虑序列的长度差异,0 表示不考虑。
  • -aS 0.9:设置序列比对的阈值,即序列相似性的阈值,超过该阈值的序列将被认为是相似的。这里设置为 0.9,表示相似性达到 90% 以上的序列会被认为是相似的。
  • -g 1:设置是否使用贪婪法进行聚类,默认为 0,表示不使用。
  • -sc 1:设置是否使用长度和序列相似性的联合评分来确定序列相似性,默认为 0,表示不使用。
  • -sf 1:设置是否按比对的序列的第一个序列的序列名字进行输出,默认为 0,表示不按序列名字进行输出。

然后得到两个输出文件qurongyuprotein.fasta  qurongyuprotein.fasta.clstr

其中qurongyuprotein.fasta.clstr的内容为

>Cluster 0
0    958aa, >NODE_416_length_5114_cov_66.925948_1... *
1    55aa, >NODE_33207_length_299_cov_3.144144_2... at 96.36%
2    90aa, >NODE_47254_length_274_cov_1.076142_1... at 95.56%
3    32aa, >NODE_67526_length_259_cov_0.961538_1... at 96.88%
4    81aa, >NODE_88620_length_245_cov_1.952381_1... at 95.06%
5    79aa, >NODE_101987_length_238_cov_1.279503_1... at 96.20%
6    47aa, >NODE_112950_length_232_cov_1.483871_1... at 95.74%

其中标*的为代表序列,可以将代表序列挑取出来进行后续分析,构建非冗余基因集。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/783416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis持久化 RDB AOF

前言 redis的十大类型终于告一段落了,下面我们开始redis持久化新篇章 为啥需要持久化呢? 我们知道redis是挡在mysql前面的带刀侍卫 是在内存中的,假如我们的redis宕机了,难道数据直接冲入mysql??? 这显然是不可能的,mysql肯定扛不住这样的场景,所以我们有了redis持久化策略…

【洛谷】P9241 [蓝桥杯 2023 省 B] 飞机降落

挺有意思的一道题,分享给大家 题目链接 P9241 [蓝桥杯 2023 省 B] 飞机降落 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目描述 输入格式 输出格式 输入输出样例 说明/提示 思路 一开始尝试贪心能不能做,但是不好确定飞机的顺序 因为这题的数…

时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测

时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测 目录 时序预测 | Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现OOA-BP鱼鹰算法优化BP神经网络时间序列预测(完整源码和数据…

Available platform plugins are: linuxfb, minimal, offscreen, vnc.

说明: buildroots根文件中已经移植好了QT的库,但是运行QT交叉编译之后的可执行文件报错: qt.qpa.plugin: Could not find the Qt platform plugin "eglfs" in "" This application failed to start because no Qt platf…

认识V模型、W模型、H模型

软件测试与软件工程息息相关,软件测试是软件工程组成中不可或缺的一部分。 在软件工程、项目管理、质量管理得到规范化应用的企业,软件测试也会进行得比较顺利,软件测试发挥的价值也会更大。 要关注软件工程、质量管理以及配置管理与软件测试…

记录实现水平垂直居中的5种方法

记录块级元素实现水平垂直居中的方法&#xff0c;效果如图。 <div class"parent"><div class"child">居中元素</div> </div><style> .parent {position: relative;width: 600px;height: 300px;background-color: #679389; …

Spring IoC详解

1.什么是IoC Spring IoC&#xff08;Inversion of Control&#xff0c;控制反转&#xff09;是Spring框架的核心之一&#xff0c;它是一种设计模式&#xff0c;也称为依赖注入&#xff08;Dependency Injection&#xff0c;DI&#xff09;。在传统的程序设计中&#xff0c;对象…

算法学习——LeetCode力扣动态规划篇10(583. 两个字符串的删除操作、72. 编辑距离、647. 回文子串、516. 最长回文子序列)

算法学习——LeetCode力扣动态规划篇10 583. 两个字符串的删除操作 583. 两个字符串的删除操作 - 力扣&#xff08;LeetCode&#xff09; 描述 给定两个单词 word1 和 word2 &#xff0c;返回使得 word1 和 word2 相同所需的最小步数。 每步 可以删除任意一个字符串中的一个…

HarmonyOS 应用开发之Stage模型绑定FA模型ServiceAbility

本小节介绍Stage模型的两种应用组件如何绑定FA模型ServiceAbility组件。 UIAbility关联访问ServiceAbility UIAbility关联访问ServiceAbility和UIAbility关联访问ServiceExtensionAbility的方式完全相同。 import common from ohos.app.ability.common; import hilog from o…

Qt源码调试步骤记录

1.源码&#xff1a; 两种方式&#xff0c;要么安装qt时选择source&#xff0c;要么从官网下载源码&#xff0c;然后在qt creator中设置路径。二选一即可。我选的第二种。 1.1.第一种&#xff0c;安装时选择source&#xff1a; 1.2.第二种&#xff0c;下载源码设置路径&#x…

安装部署MariaDB数据库管理系统

目录 一、初始化MariaDB服务 1、安装、启动数据库服务程序、将服务加入开机启动项中。 2、为保证数据库安全性和正常运转&#xff0c;需要对数据库程序进行初始化操作。 3、配置防火墙&#xff0c;放行对数据库服务程序的访问请求&#xff0c;允许管理员root能远程访问数据…

灵动翻译音频文件字幕提取及翻译;剪映视频添加字幕

参考&#xff1a;视频音频下载工具 https://tuberipper.com/21/save/mp3 1、灵动翻译音频文件字幕提取及翻译 灵动翻译可以直接chorme浏览器插件安装&#xff1a; 点击使用&#xff0c;可以上传音频文件 上传后自动翻译&#xff0c;然后点击译文即可翻译成中文&#xff0c;…

跨越界限:AI大模型在关键技术领域的综合应用

AI大模型学习 在当前技术环境下&#xff0c;AI大模型学习不仅要求研究者具备深厚的数学基础和编程能力&#xff0c;还需要对特定领域的业务场景有深入的了解。通过不断优化模型结构和算法&#xff0c;AI大模型学习能够不断提升模型的准确性和效率&#xff0c;为人类生活和工作带…

深入理解MySQL:拼接字符串、查询、删除表和创建索引的关键命令

MySQL是一种功能强大的关系型数据库管理系统&#xff0c;广泛应用于各种类型的应用程序中。本文将介绍MySQL中一些常用的关键命令&#xff0c;包括拼接字符串、查询、删除表和创建索引&#xff0c;帮助读者更好地理解和利用MySQL数据库。 mysql拼接字符串 在MySQL中&#xf…

android WMS服务

android WMS服务 WMS的定义 窗口的分类 WMS的启动 WindowManager Activity、Window、DecorView、ViewRootImpl 之间的关系 WindowToken WMS的定义 WMS是WindowManagerService的简称&#xff0c;它是android系统的核心服务之一&#xff0c;它在android的显示功能中扮演着…

python安装删除以及pip的使用

目录 你无法想象新手到底会在什么地方出问题——十二个小时的血泪之言&#xff01; 问题引入 python modify setup 隐藏文件夹 环境变量的配置 彻底删除python 其他零碎发现 管理员终端 删不掉的windous应用商店apps 发现问题 总结 你无法想象新手到底会在什么地方…

StructStreaming Batch mode和Continuous mode

StructStreaming Batch mode和Continuous mode 让我们把目光集中到 Structured Streaming&#xff0c;也就是流处理引擎本身。Structured Streaming 与 Spark MLlib 并列&#xff0c;是 Spark 重要的子框架之一。值得一提的是&#xff0c;Structured Streaming 天然能够享受 S…

JWFD流程图转换为矩阵数据库的过程说明

在最开始设计流程图的时候&#xff0c;请务必先把开始节点和结束节点画到流程图上面&#xff0c;就是设计器面板的最开始两个按钮&#xff0c;先画开始点和结束点&#xff0c;再画中间的流程&#xff0c;然后保存&#xff0c;这样提交到矩阵数据库就不会出任何问题&#xff0c;…

本地搭建多人协作ONLYOFFICE文档服务器并结合Cpolar内网穿透实现公网访问远程办公

文章目录 1. 安装Docker2. 本地安装部署ONLYOFFICE3. 安装cpolar内网穿透4. 固定OnlyOffice公网地址 本篇文章讲解如何使用Docker在本地服务器上安装ONLYOFFICE&#xff0c;并结合cpolar内网穿透实现公网访问。 Community Edition允许您在本地服务器上安装ONLYOFFICE文档&…

【Vue】搭建第一个vue3+vite前段项目

不要奇怪我为啥突然开始写前端的文章&#xff0c;唉&#xff0c;一切都是公司的任务罢了。 其实这周学习了前端和coverity&#xff0c;但是后者就算学了我也不能写在我博客里&#xff0c;所以还是写一写前端吧。 node.js 和 npm npm是一个类似于 maven 的包管理器。 去以下…