WebArray:微阵列数据分析的在线平台
审核人,1 ,1,2和
2 夏晓琴
1美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心基因组核心设施,邮编92121
迈克尔·麦克莱兰
1美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心基因组核心设施,邮编92121
2美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心癌症遗传学系,邮编92121
王一鹏
2美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心癌症遗传学系,邮编92121
1美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心基因组核心设施,邮编92121
2美国加利福尼亚州圣地亚哥Sidney Kimmel癌症中心癌症遗传学系,邮编92121
通讯作者。2005年9月24日收到;2005年12月21日接受。
版权©2005 Xia等人;被许可方BioMed Central Ltd。 摘要
背景
许多尖端的微阵列分析工具和算法,包括Bioconductor中常用的limma和affy软件包,都需要复杂的数学、统计学知识和计算机技能才能实现。商用软件可以以相当高的成本提供用户友好的界面。为了便于在开放平台上使用这些工具进行微阵列数据分析,我们开发了在线微阵列数据解析平台WebArray,供实验室生物学家使用这些工具探索单色/双色微阵列实验的数据。
结果
当前实现的功能基于Bioconductor的limma和affy包、间距LOESS直方图(SPLOSH)方法、PCA辅助的归一化方法和基因组作图方法。WebArray集成了这些软件包,并提供了一个用户友好的界面,用于访问limma和其他各种关键功能,如现场质量权重、背景校正、图形绘制、归一化、线性建模、经验贝叶斯统计分析、错误发现率(FDR)估计、,染色体定位用于基因组比较。
背景
微阵列技术的应用越来越广泛,许多模型和算法已被开发用于微阵列数据分析。然而,在许多情况下,人们需要有足够的数学、统计学和计算机技能知识才能使用这些方法。生物导体就是一个完美的例子[1]. 作为一个领先的基因组数据分析开源项目,Bioconductor收集了大量用于微阵列数据分析的软件包。然而,命令行界面编程技能对于使用Bioconductor和R计算机语言至关重要,这可能会成为许多生物学家的障碍。为了弥补生物学家的现实问题和最佳微阵列数据分析方法之间的差距,我们开发了WebArray,以帮助生物学家使用微阵列数据的分析工具,包括Bioconductor和其他软件包。
limma(Linear Models for Microarray Analysis)是Bioconductor中最常用的软件包之一,它融合了最前沿的统计分析方法,为cDNA微阵列提供了归一化和统计分析。limma包的关键功能是Smyth的经验Bayes线性建模方法的实现[2]. Affy是Bioconductor的另一个常用软件包,用于读取Affymetrix GeneChip CEL文件,然后进行背景校正、归一化、探针特定背景校正,并将探针集值汇总为一个表达式度量。用户还可以选择获取与稳健多阵列平均(RMA)方法对应的表达式值[三]、MAS 5.0或Li和Wong的MBEI(数据芯片)[4].
在测试数千个基因的背景下,错误发现率(FDR)可能是指定微阵列置信度的更好方法。WebArray中集成了一个单独的包,即间距LOESS直方图(SPLOSH),它估计条件FDR(cFDR),即以k个“显著”发现为条件的假阳性的预期比例,用于进一步估计假阳性、假阴性和FDR的发生率[5].
染色体定位不仅在比较基因组杂交(CGH)中很重要,有时在基因表达和甲基化分析中也很重要[6]. 染色体定位映射处理如下。微阵列数据(两个杂交基因组之间的log2比率)根据染色体位置进行排序。构造了一条二次黄土曲线,该曲线可以看作是通过每个数据集的局部加权多项式回归曲线。确定了黄土曲线连续段始终大于(或小于)用户定义值乘以偏离所有数据点平均值的标准偏差的区域,Mann-Whitney U检验用于确定每个选定区域是否与该检验未选定的区域的数据点集存在显著差异[6].
实施
WebArray运行在LAMP系统(Linux+Apache+MySQL+Python)上。Python是用以下包设置的:Numeric Pythons、Rpy、Karrigell和pycrypto。后台计算大多由R脚本完成。源代码是根据GNU通用公共许可证发布的,通过向作者发出请求,可以免费用于非营利用途。
在WebArray服务器上,python CGI脚本处理用户和服务器之间的通信。如图所示这些脚本的功能分为三类:1)用户管理,包括用户注册和签名;2) 数据管理,包括数据上传和维护;3) 请求管理,即接受/删除请求和浏览结果。用户信息、数据文件、提交的作业和结果存储在数据库和服务器文件系统中。调度程序处理请求作业。
调度器维护一个搜索处理循环,其调度逻辑如图所示。一旦启动,此程序将检查数据库中的新作业。新作业依次交付给相应的R脚本进行计算。如果没有找到新作业,调度程序将进入休眠状态。在向数据库提交请求后,CGI将发送一条消息来调用调度程序并重新启动其工作周期。计时器也被设置为定期唤醒调度程序,这可以确保即使在与CGI通信时发生错误,系统也能正常工作。
在客户端,用户逻辑上遵循四个步骤:注册/登录、上传数据、提交请求和浏览结果(见图). JavaScript用于增强用户界面。
结果和讨论
使用WebArray进行微阵列分析可以分为三个步骤:1)上传和管理文件;2) 选择数据集和分析方法;3) 浏览结果。双色阵列数据分析的部分网页如图所示。在线提供帮助文档,其中包含WebArray所有函数的详细注释。
作为分析的第一步,用户需要上传他们的微阵列强度文件、基因列表文件和其他文件。提交六个月后,这些文件将从服务器中删除。用户也可以查看和手动删除这些文件。WebArray需要以下文件进行分析;1) 强度文件。由Affymetrix、Agilent、ArrayVision、Genepix、ImaGene、QuantArray、SMD和SPOT等多种图像分析程序导出的文本文件。从其他程序导出的文件必须以指定的格式上传;2) 目标文件。以制表符分隔的文本文件,列出与每个阵列的每个通道混合的目标;3) 基因列表文件,例如基因分配列表(GAL)文件。指定的格式也可以接受;4) 设计文件。包含线性模型设计矩阵的制表符分隔文本文件;5) 点类型文件(STF)。STF用于通过正则表达式从基因列表中区分不同类型的斑点,包括对照斑点、阳性和阴性对照;6) 基因组/染色体位置文件。包含按基因组/染色体位置信息排序的阵列斑点的tab分隔文本文件;7) 控制基因文件。包含用于复合规范化的内务处理基因打印顺序索引的文本文件。所有分析都需要强度文件,双色阵列数据分析需要基因列表文件,所有其他文件都是可选的。
在“提交请求”页面中,用户可以从自己上传的文件中选择数据进行分析。WebArray包括limma提供的大多数功能,如点质量权重、背景减法、归一化和经验贝叶斯统计分析。此外,还引入了主成分分析辅助归一化方法[7],可以使用SPLOSH估计FDR,如果需要,可以绘制染色体图谱。
limma软件包使用线性模型分析设计的微阵列实验。对于Affymetrix阵列数据和简单的双色实验,例如使用切换染料进行两个样本比较或使用通用参考进行两个采样比较,用户可以通过在每个微阵列强度文件对应的列中选择样本类型来指定设计。对于多样本比较或复杂的实验设计,用户需要更多的统计知识来创建设计矩阵和对比矩阵。
WebArray允许用户命名请求,否则将自动分配名称。提交的请求将被列入等待列表。结果页面允许用户浏览自己的请求列表。可以编辑或删除请求。由于微阵列数据的计算通常涉及大量数据集,因此完成一次计算可能需要几分钟的时间。对于具有阵列内重复项的数据集,此过程将花费更长的时间,可能需要数小时。
输出文件包括制表符分隔的文本文件和图形打印,可以单独下载或在线查看。所有文件都存档在一个ZIP文件中,也可以下载。根据分析选项,文本文件可能包含基因信息、M(log2比率)、调节t及其对应的p值、B统计、FDR、FP(假阳性)、FN(假阴性)和CGH拟合值。基因表可以是未分类的,也可以是按M、p值或B统计进行排序的。图形图包括阵列图像图、密度图、直方图、RNA降解图、每个阵列的M-A图(阵列内归一化前后)、每个阵列打印黄土图、方框图(阵列间归一化前和归一化后)、,染色体位置映射图,其中M是根据染色体位置绘制的,结果图包括M-A图、M-B图、M直方图和B统计直方图(见图).
统计分析结果图。结果图包括M-A图、M-B图、M直方图和B统计直方图。M: 对数差异表达率。A: 光斑的对数强度,是对光斑整体亮度的测量。B: B统计,微分表达式的对数比值。
虽然商业上可以使用更复杂的程序,但WebArray代表了一种优秀的免费开源微阵列分析软件,普通生物学家可以在经过适当培训后使用它。为了帮助生物学家理解底层的统计方法,我们在帮助文档中为大多数WebArray函数提供了详细的解释和参考。
可用性和要求
•项目名称:WebArray
•项目主页:http://bioinformatics.skcc.org/webarray/
•操作系统:独立于平台(网络服务)
•编程语言:Python,R。
•其他要求:支持cookie和JavaScript的Internet浏览器,如IE、Netscape或Firefox。出于数据管理和安全的目的,用户在使用之前需要在WebArray上注册ID和密码。
•许可证:根据GNU通用公共许可证[8]下载。
作者的贡献
XX执行软件工程、编码和调试。MM参与了该项目的指导。YW设计了网站并编写了R代码。所有作者阅读并批准了手稿的最终版本。
致谢
我们要感谢Fred Long维护web服务器,感谢Carlos Santiviago对WebArray的有益讨论和反馈。该项目的部分资金来自向MM提供的DAMD17-03-1-0022、R01AI034829、R21AI054829和R01CA68822赠款。
工具书类
- 生物导体http://www.bioconductor.org
- Smyth GK公司。微阵列实验中评估差异表达的线性模型和经验贝叶斯方法。遗传学和分子生物学中的统计应用。2004;三:第3条。doi:10.2202/1544-6115.1027。[公共医学] [交叉参考][谷歌学者]
- Irizarry RA、Hobbs B、Collin F、Beazer-Barclay YD、Antonellis KJ、Scherf U、Speed TP。高密度寡核苷酸阵列探针水平数据的探索、规范化和总结。生物统计学。2003;4:249–264. doi:10.1093/biostatistics/4.2.249。[公共医学] [交叉参考][谷歌学者]
- Li C、Wong WH。寡核苷酸阵列的基于模型的分析:表达指数计算和离群值检测。美国国家科学院院刊。2001;98:31–36. doi:10.1073/pnas.011404098。 [PMC免费文章][公共医学] [交叉参考][谷歌学者]
- Pounds S,Cheng C.改进错误发现率估计。生物信息学。2004;20:1737–1745. doi:10.1093/bioinformatics/bth160。[公共医学] [交叉参考][谷歌学者]
- Wang Y,Yu QJ,Cho AH,Rondeau G,Welsh J,Adamson E,Mercola D,McClelland M。前列腺癌细胞系差异甲基化启动子的调查。肿瘤。2005;8:748–760. doi:10.1593/neo.05289。 [PMC免费文章][公共医学] [交叉参考][谷歌学者]
- Stoyanova R,Querec TD,Brown TR,Patriotis C.通过主成分分析对单通道DNA阵列数据进行归一化。生物信息学。2004;20:1772–1784. doi:10.1093/bioinformatics/bth170。[公共医学] [交叉参考][谷歌学者]
- GNU通用公共许可证http://www.gnu.org/licenses/gpl.txt