生物信息学软件工具的大致分类

生物信息学领域涉及到大量的不同种类的数据的分析和处理工作,因此这个领域就必然产生许多不同类型的软件工具,比如处理DNA、RNA、蛋白质序列等不同层面的数据。但是我们这里并不想按照组学种类来对生物信息学软件工具进行分类,因为不同组学经常是有软件是交叉的,比如fastqc软件就可以针对不同ngs组学数据进行质量控制。我这里把生物信息学软件工具按照使用难易程度的大致分成3类:

其中网页工具和云平台都不是针对专门的生物信息学工程师设计的,因为并不需要使用者会编程语言,所以使用起来非常简单。下面来一一介绍一下它们:

生物信息学领域有许多在线工具和资源,这些工具提供了各种分析和可视化功能,无需用户进行大量的本地安装和配置。而且绝大部分都是大机构开发和维护,知名度比较好的大机构包括:

它们各自提供了海量的工具,比如NCBI的在线blast,UCSC的GenomeBrowser,以及EMBL-EBI的EMBOSS。

当然了,网页工具其实也可以按照功能来进行分类,或者ngs组学数据种类分类就更复杂了。比如实现生物学功能数据库(go以及kegg)注释(富集分析)的就有3大在线分析工具:Enrichr、WebGestalt、gprofiler,还有大名鼎鼎的DAVID(DatabaseforAnnotation,Visualization,andIntegratedDiscovery),以及后起之秀Metascape,它们都可以用于功能富集分析的工具,帮助理解一组基因的生物学含义。

生物信息学云平台提供了在线的计算和数据存储服务,使研究人员能够在云环境中进行生物信息学数据分析和处理,而无需购买和维护本地服务器。云平台其实很难跟上面的网页工具完全区分开,它们在使用难易程度,能解决的问题复杂程度是各有侧重点的。其中网页工具很少做存储和计算,主打的是查询,而且偏重于实现某个功能需求即可。而云平台呢,是可以系统性完成多个任务需求,比如主打单细胞全流程数据分析,或者集成了几十个甚至上百个统计可视化工具。相比较而言,云平台成本会比较高,所以很难是完全免费,一般来说可以做到对指定客户免费。

排名不分先后,我是在搜索引擎随意检索的,而且这些云平台因为是网页工具提供,所以很容易变化域名甚至直接倒闭:

正经的生物信息学数据处理工程师通常都有跟成百上千个不同编程语言开发的生物信息学软件工具做斗争的噩梦般的经历,虽然说现在有了conda这样的软件工具管理方案,而且不同操作系统本身也有自己的软件管理方案有时候也不错,所以现在大家其实很少接触需要从零开始(从源代码)安装的软件啦。但是还是有必要了解一下不同编程语言的源代码安装软件方式,因为绝大部分操作系统默认自带了C语言编辑器,java运行环境,perl和Python默认环境,所以我们就不讲解它们本身的安装啦。

我这里给出来一点自己的看法,所谓基于编程语言的生物信息学软件,就是可以在Linux等操作系统的终端,通过命令行方式并且设置合理的参数(比如输入输出文件路径或者文件名)的命令。比如:

它们都是在通过命令行方式并且设置合理的参数(比如输入输出文件路径或者文件名)的命令,如下所示:

因为现在conda用得多,所以我已经很少接触C语言体系源代码软件安装啦,首先需要配置一下环境变量,另外就是configure,make,和makeinstall是在源代码中常见的一套构建和安装过程。这一流程通常被用于开源软件,使得软件在多种环境(不同的操作系统)中能够更容易地进行构建和安装。

不过,因为有了conda这样的软件工具管理方案,所以其实C语言体系源代码一个软件的出场率就很低了,大家了解一下即可。

类似的C语言体系源代码软件安装策略都是下载解压然后configure+make+makeinstall即可,比如:

请注意,对于某些软件,也可能会有其他构建工具和流程,不一定都使用configure、make和makeinstall。这一套流程的广泛使用主要是因为它简单、通用,并且在许多情况下都能够满足构建和安装的需求。

更多软件这里就不一一举例啦,每个软件都有自己的官方文档,其实看看官方文档就明白了它的最佳安装方式啦。

broad研究所也是喜欢使用Java语言开发生物信息学软件,比如大名鼎鼎的GATK系列软件套件。

Python是生物信息学领域的后起之秀,基于Python开发的软件数量早就远超于传统的Perl啦,目前多组学的ngs流程里面也有很多步骤的软件是Python开发的。

比如MultiQC,它可以接受来自各种生物信息学工具的输出文件,包括但不限于质控工具(例如FastQC)、比对工具(例如BWA、Bowtie)、RNA-seq工具(例如STAR、HISAT2)、ChIP-seq工具等。通过整合这些工具的输出,MultiQC可以提供全面的数据质量和分析结果。MultiQC能够自动检测当前目录下的分析结果文件,并生成一个HTML报告。用户只需运行简单的命令,而不需要手动整合和解释来自多个工具的输出。

再比如MACS2(Model-basedAnalysisofChIP-Seq2),它是一款用于分析染色质免疫共沉淀测序(ChIP-seq)等表观ngs组学数据的生物信息学工具。主要功能是寻找ChIP-seq数据中染色质峰值的位置。这些峰值通常代表着与蛋白质结合的区域,如转录因子结合位点或组蛋白修饰的区域。使用统计模型来估计ChIP-seq信号在基因组上的分布,然后通过比较实验组与对照组来确定峰值。这使得它对于各种不同的实验设计和信号强度具有一定的灵活性。

上面的这些软件本身就是一个单一的python模块,所以只需要使用Python模块安装方式即可安装软件:

看起来单个python模块架构的软件非常容易安装,就是简单的pipinstall即可,但是因为它往往是依赖于特定的Python版本和Python其它模块,而且也取决于操作系统,以至于其实往往是也很难一次性安装成功,比如华大基因出品的空间单细胞转录组数据处理软件stereopy,大家可以试试看,在自己的机器上面安装它:

但是它的安装方法仍然是普通的简单的pipinstall即可,如下所示的命令:

R编程语言跟前面的Perl和Python比起来算是后起之秀,而且它并不是默认安装在常见的操作系统里面的,无论是个人电脑的Windows还是MacOS系统,还是服务器级别的Ubuntu或者centos,理论上需要先安装R编程语言软件本身,然后才能是安装使用R编程语言制作好的软件。

其实R编程语言的软件也跟前面的Python类似,很难区分软件和R包的界限,也是有一些软件是单个R包而有一些软件需要大量的R包。不过呢,纯粹基于R编程语言的生物信息学软件其实并不多,目前主流的R功能单元仍然是脚本文件或者R包。

MATLAB开发的软件,比如GISTIC2软件等

通常情况下,生物信息学软件并不会开发图形用户界面(GUI),这一现象有几个原因:

而且,如果生物信息学软件有了图形用户界面(GUI),其实就类似于网页工具了,本地版的,可以使得非专业的生物学研究人员更容易上手和使用这些工具,降低使用门槛。GUI通常更适合初学者或非专业程序员,而命令行界面则更适合有编程经验的研究人员。

比如Cytoscape,它是一款网络可视化工具,主要用于可视化和分析生物学网络。它能够绘制和分析分子互作网络、信号传导通路等,同时支持网络的进化和动态变化的可视化。

还有IGV(IntegrativeGenomicsViewer),甚至fastqc软件本身也可以是图形界面使用它。

也是有非常多的细节,等后面一起整理吧:

比如前面的网页工具开发,通常是会涉及到MySQL,以及PHP或者JavaScript,这些往往是需要管理员权限,如果是个人电脑Windows或者MacOS其实蛮简单的,都是有界面段的软件管理仓库,鼠标点击任意软件都可以自动下载。其实这个也应该是我们生物信息学软件的理想下载模式,目前借助于conda我们勉强能实现在服务器上面使用单一命令任意安装绝大部分生物信息学软件。不过,如果是有服务器的管理员权限,其实也可以借助于软件管理仓库,比如在Ubuntu操作系统来安装必备的库文件以及软件,代码如下:

如果是网络问题需要等待,有了deb文件就很容易使用gdebi命令在Ubuntu操作系统下面安装软件啦,具体的代码如下所示:

THE END
1.php代码大全php教程php中文网 发布: 2016-06-23 14:30:15 原创 1383人浏览过 1、连接mysql数据库代码$connec=mysql_connect("localhost","root","root") or die("不能连接数据库服务器: ".mysql_error());mysql_select_db("liuyanben",$connec) or die ("不能选择数据库: ".mysql_error());mysql_query("set names...https://www.php.cn/faq/265663.html
2.大学生网页源码下载TOM源码一个优秀的网页源码分享平台TOM源码是一个优秀的网页源码分享平台,大学生网页成品设计,拥有各种类型的网站源码,html静态网页以及Java动态网站定制设计。各种主题的大作业毕设论文等。http://www.jshtml.cn/
3.使用HTML制作网页时,不论源代码中有多少空格,在浏览器中只会显示...【单选题】网页HTML源代码中,不可缺少的标签是 A. html B. p C. ta?b?le D. b?r 查看完整题目与答案 【单选题】古琴的人文精神用一个字来概括就是( )字。 A. 和 B. 敬 C. 清 D. 淡 查看完整题目与答案 【简答题】在PHP中,输出中文之前,为了防止乱码,通过【】告知浏览...https://www.shuashuati.com/ti/ac2d49052a934dc697b8387f0a494520.html
4.WEB网页在线制作系统1.4最新版源码.zip144G网页制作系统v1.50完美破解版源码主要是用来一键生成表白页面、个人网站、搞笑网页在线制作生成源码查看更多关于 网页在线制作生成源码 的文章,让制作网页变更更简单,真个页面的前端设计非常美观,动画效果很棒,可以设置购买网站会员来使用指定的网页制作模板,从而增加网站收入。该系统是纯PHP代码,无需安装数据库即可正常...https://www.iteye.com/resource/jacky00yyp-11205390
5.怎么使用php获取网页源代码问答<?php // 获取网页源代码 $url = 'https://www.example.com'; $html = file_get_contents($url); // 输出网页源代码 echo $html; ?> 复制代码 在上面的示例中,首先指定要获取源代码的网页URL,然后使用file_get_contents()函数获取该网页的源代码,并将其存储在$html变量中。最后,通过echo语句输出网页...https://www.yisu.com/ask/38956526.html
6.PHP获取网页的Html源代码输出并执行PHP 获取指定网站、网页、URL 的 Html 源代码: 获取网页Html源代码: $lines = file('http://www.baidu.com/'); foreach ($lines as $line_num => $line) { echo "Line{$line_num}: " . htmlspecialchars($line) . " \n"; } ?> https://www.jianshu.com/p/c02a92ef3ef0
1.简单的php编程代码大全简易php代码现在我们已经准备好了一个基本的开发环境,接下来将通过几个例子学习如何编写PHP代码。 php 深色版本 1<?php 2echo"欢迎来到PHP的世界!"; 3?> 这段代码会输出一段文本“欢迎来到PHP的世界!”到网页上。<?php ... ?>标签告诉服务器这是PHP代码段;而echo语句则用来向用户展示信息。 https://blog.csdn.net/2401_86781857/article/details/142905959
2.如何用源代码制作网站网站制作源代码如何用源代码制作网站 制作网站的源代码可以使用各种编程语言和技术来实现。下面是一种常见的方法: 选择编程语言:常见的编程语言包括HTML、CSS、JavaScript、Python、PHP、Java等。根据自己的需求和熟悉程度选择合适的编程语言。 设计网站结构:使用HTML语言创建网页的结构,包括标题、段落、图像、链接等。可以使用HTML标签来...https://cloud.tencent.com/developer/information/%E5%A6%82%E4%BD%95%E7%94%A8%E6%BA%90%E4%BB%A3%E7%A0%81%E5%88%B6%E4%BD%9C%E7%BD%91%E7%AB%99-album
3.源码网站大全51CTO博客提供asp,cgi,php源代码下载,以及网页模板素材等下载。 www.ttxx.com 19.中国软件开发资料网 提供源代码,技术文章,vc,C++Builder,JAVA。 www.csdn.com.cn 20.无忧源码 提供源码下载和交流。 www.5ucode.com 21.中国无忧站长 提供ASP源码、CGI源码、PHP源码等源代码下载。 https://blog.51cto.com/u_1160259/3610146
4.ASP.NETCore适用于.NET的开源Web框架NET 在 GitHub 上是开放源代码的,已收到 100,000 次贡献,并已有 3,700 家公司参与。 加入.NET 社区 Azure 上的免费托管 使用Microsoft Azure 可免费获取 10 个 ASP.NET Core 网站。 还可以部署到任何主要云平台、自己的 Linux 或 Windows 服务器,或多个托管提供程序其中之一。 https://asp.net/
5.25个经典网站源代码25个经典网站源代码 点赞(0) 踩踩(0) 反馈 所需:1 积分 电信网络下载 xhr8897 2020-08-30 21:21:57 评论 谢谢超值的分享!adench 2018-06-10 12:58:16 评论 非常好的分享dqjiugui 2018-04-20 16:07:48 评论 全都是静态页面,一个带后台的都没有,骗c币的,跟那个36个网站源码一个玩意,鄙视...https://www.coder100.com/index/index/content/id/1123191
6.php输出html页面;php输出html源代码php输出html页面;php输出html源代码 PHP魔法般的力量:让你的网页瞬间呈现! 在当今数字化的世界中,网页设计是至关重要的。而PHP作为一种强大的脚本语言,它不仅可以帮助我们构建动态网页,还可以通过输出HTML页面的方式,让我们的网站瞬间呈现在用户眼前。介绍如何使用PHP输出HTML页面,并展示出其神奇的魔力。 https://www.nzw6.com/29300.html
7.php学习心得范文(通用14篇)学习php只是一部分,html、css、js是都要学的,而且是必须的,但是这些东西尤其是js很像php,其它的就太简单了,没什么难的。如果更好的学习建议可以先看看些HTML和SQL的基础。另外w3school也是个不错的地方,里面有详细的手册和资料。 开始学习的时候,尤其是最开是下手编程很艰难,可以上网找些源代码来琢磨,但是一定要...https://www.yjbys.com/edu/PHP/471525.html
8.php网站毕业设计,PHP大作业,学生网页设计作业源码,php毕业设计...作业窝十年专注网页设计作业,业务包含PHP+Mysql动态网页设计,Dreamweaver网页设计作业,HTML静态网页制作,动态PHP网站毕业设计作业,数据库作业等,记录去向可查重大学生DW简单网页作品,phpstudy,xampp,wamp,DIV CSS个人简单网页作业成品模板免费下载,大一二三年级网站作业定http://www.zuoyewo.com/
9.php查看网页源代码的方法php技巧本文实例讲述了php查看网页源代码的方法。分享给大家供大家参考。具体实现方法如下: 1 2 3 4 5 6 7 8 9 <?php $url="https://www.jb51.net"; $fp= @fopen($url,'r') ordie("Cannot Open $url via Get method"); while($line= @fgets($fp, 1024)) { ...https://www.jb51.net/article/62178.htm
10.国外优秀的php网页源码,分享国外知名的源代码网站...2015 大陆 奇幻 《国外优秀的php网页源码,分享国外知名的源代码网站...》剧情简介:赵薇出事这15位明星被波及有人火速撇清关系有人默不作声原创2021-08-28 00:06·宁小娱随着赵薇的作品被除名、超话被封、相关节目被下架她在圈中的好友也一个个默默删除了与她相关的动态一夜之间赵薇用28年闯出的江湖变为泡影属于...http://www.asetrc.org/curxhuxaba/20240801.html