生物统计学/生物信息学常用软件

生物统计学/生物信息学常用软件

Python& AI 2018-09-29 461 次浏览 Comments Off on 生物统计学/生物信息学常用软件

  生物统计学涉及海量生物数据的收集、整理以及分析。随着生物统计学分析数据数量级的不断增长,研究人员对计算机统计软件的依赖程度也越来越高。统计分析的软件种类繁多,而选择合适的软件往往能帮助生物统计学研究人员在研究中事半功倍,本文将分别介绍5款生物统计学常用的软件,并分析其优缺点及适用场景。


Excel
  EXCEL电子表格是Microsoft公司推出的Office系列产品之一,是一个功能强大的电子表格软件。特点是对表格的管理和统计图制作功能强大,极其容易操作。Excel的数据分析插件XLSTAT,也能进行数据统计分析,但不足的是运算速度慢,统计方法不全。 学习成本较低。一般用于数据的汇总与整理,以及一些简单的分析计算。


SPSS
  SPSS是英文Statistical package for the social science 的缩写,翻译成汉语是社会学统计程序包,20世纪60年代末由美国斯坦福大学的三位研究生研制,1975年在芝加哥组建SPSS总部。SPSS系统特点是操作比较方便,统计方法比较齐全,绘制图形、表格较有方便,输出结果比较直观。SPSS是用FORTRAN语言编写而成。SPSS原名社会科学统计软件包,现已改名为统计解决方案服务软件。是世界著名的统计分析软件之一。
  SPSS的基本功能包括数据管理、统计分析、图表分析、输出管理等等。SPSS统计分析过程包括描述性统计、均值比较、一般线性模型、相关分析、回归分析、对数线性模型、聚类分析、数据简化、生存分析、时间序列分析、多重响应等几大类,每类中又分好几个统计过程,比如回归分析中又分线性回归分析、曲线估计、Logistic回归、Probit回归、加权估计、两阶段最小二乘法、非线性回归等多个统计过程,而且每个过程中又允许用户选择不同的方法及参数。SPSS也有专门的绘图系统,可以根据数据绘制各种统计图形和地图。
SPSS for Windows的分析结果清晰、直观、易学易用,而且可以直接读取EXCEL及DBF数据文件,现已推广到多种操作系统的计算机上,最新的版采用 DAA(Distributed Analysis Architecture,分布式分析系统),全面适应互联网,支持动态收集、分析数据和HTML格式报告,领先于诸多竞争对手。 方便易用是SPSS for Windows的主要优点,同时也是SPSS不够全面的原因所在。 学习成本较低,但是泛用性不佳。


SAS
  SAS (Statistical Analysis System)是一个模块化、集成化的大型应用软件系统。它由数十个专用模块构成,功能包括数据访问、数据储存及管理、应用开发、图形处理、数据分析、报告编制、运筹学方法、计量经济学与预测等等。
SAS系统基本上可以分为四大部分:SAS数据库部分;SAS分析核心;SAS开发呈现工具;SAS对分布处理模式的支持及其数据仓库设计。
SAS系统主要完成以数据为中心的四大任务:数据访问;数据管理(sas 的数据管理功能并不很出色,而是数据分析能力强大所以常常用微软的产品管理数据,再导成sas数据格式.要注意与其他软件的配套使用);数据呈现;数据分析。当前(2016年)软件最高版本为SAS9.4。其中Base SAS模块是SAS系统的核心。其它各模块均在Base SAS提供的环境中运行。用户可选择需要的模块与Base SAS一起构成一个用户化的SAS系统。
它适用于一些规模庞大、需要成熟配套技术支持的数据分析需求,适用于中型或大型项目。使用成本与学习成本都比较高。


R语言
  R语言是现今世界统计分析领域炙手可热的分析工具。尽管它叫做一门“语言”,但它从使用来说更像是一个软件。因为几乎针对眼前的所有任务,你都能找到一个成熟的包可以直接调用。它很好的在可拓展性与易用性之间找到了一个平衡。


Python语言
  相比于R,Python更接近于“编程语言”的定义。Python是一个简单易学,功能强大的脚本式编程语言。相比于统计分析的软件固定的功能,Python可以编写出无限的功能,以适应不同的应用场景。除此之外,Python还拥有极大的用户基数,这意味着你可以在社区和论坛获得其他人的支持。且Python有大量科学分析相关的库可以直接调用,不必为实现复杂的分析功能而从从头编写需要的分析程序。且编写的程序对数据来源的可适应性和结果的定制性使研究人员可以分环节的编写需要的程序,从而实现数据的“管道式处理”。相比于其他编程语言,Python代码的可读性更高,可以让研究人员专注于算法而非其他的细枝末节。但它的缺点也很明显,速度较慢,效率较低。因此,数据工程师往往要做“两段式”的编程,即第一阶段用Python做算法和功能实现,之后再用c等性能强大的更为底层的编程语言转制汇编,最终投入生产环境使用。


Julia语言
  针对Python与R性能低下等缺点,MIT从2009年开始开发了一种面向科学计算领域的一种全新的编程语言。Julia可以调用Python的所有东西(JuliaPy/PyCall.jl),可以调用大部分的R,除此之外,Julia像C语言一般快速而有拥有如同Ruby的动态性;具有Lisp般真正的同像性(Homoiconicity)而又有Matlab般熟悉的数学记号;像Python般通用、又像R般在统计分析上得心应手、像Perl般自然地处理字符串、像Matlab般具有强大的线性代数运算能力、像shell般胶水语言的能力,易于学习而又不让真正的数据分析人员感到无聊;还有,它是交互式的,同时又是编译型的。尽管Julia现阶段尚不成熟、使用人数较少,配套资源不完善,但它越来越受到科学计算领域研究人员的关注,是一门面向未来的,拥有无穷潜力的统计分析与科学计算编程语言。

总结

软件名称 泛用性 性能(效率) 易用度 适用场景
Excel 最高 数据收集、简单的统计分析
SPSS 较低 较高 需要快速完成一些不复杂的统计分析任务
SAS 较高 一些大型项目,或者巨大的数据容量。
R 较高 较低 较低 需要快速完成一些多种类型的统计分析任务。
Python 需要灵活的处理各类数据,或者期望制作一个“管道式”的统计分析流程。
Julia 面向未来的科学计算工具,可学习。
梓沨

站长 INTP,生物搬砖工