大家好,本周分享的是发表在MCP(MOLECULAR&CRLLULAR PROTEOMICS)上的一篇关于质谱数据处理和识别的文章,题目是psims - A Declarative Writer for mzML and mzIdentML for Python,通讯作者是波士顿大学的Joseph Zaia。

质谱中数据处理和识别方法的激增导致需要描述其结果的工具的复杂性不断增加。 在过去的十五年中,两种质谱数据mzML 和mzIdentML ,已成为计算方法开发的核心。 目前有基于C/C++的程序例如ProteoWizard 和OpenMS,和基于Java的程序ms-data-core-api / jmzML和MSFTBX ,以及其他静态类型的编译语言能够对这两种数据进行处理。在高级语言中,这些格式的读取通常直接在通用XML解析库之上实现,或者与底层语言进行绑定。在实现读取时,通常编写器被实现为对某些读入数据进行模板化,或者根本不实现。这些库不能用于“从本机数据”生成文件,这意味着用户无法轻松编写工具来生成这些文件格式,因为要生成的数据不会立即与输入模板连接。在与底层语言进行绑定,可以表达的构造范围存在限制,例如无法描述不属于底层库的绑定或该类型系统的新的结构。这可能是由于违反单一责任原则,或仅涵盖使用者认为有用的规范部分。据我们所知,上面列出的C ++库以及几个已发布和未发布的Java或C#实现中都可以找到唯一的无模板编写器。要使用像Python或R这样的脚本语言从本机数据编写mzML和mzIdentML文件,必须分别通过pyOpenMS 和ProteoWizard通过mzR 绑定OpenMS。这为质谱数据处理工具的创建和部署增加了不必要的复杂性。波士顿大学的Joseph Zaia课题组使用Python为mzML 1.1和mzIdentML 1.2写了一个声明性编程Psims,使用范围比以前可用的语言更广泛。Psims的编写利用了lxml,一个强大的XML处理库用于实现增量文档的编写,NumPy 用于处理二进制数据数组, SQLAlchemy 用于在语义术语图不适用的某些情况下的关系模式表示。作者使用Pyteomics 演示了一些示例,在测试组件中为mzML和mzIdentML提供了读入。源代码及其文档可在以下免费获得https://github.com/mobiusklein/psims。该库与跨平台的Python 2和Python 3兼容。

该课题组使用公共数据PXD003498进行测试,从PRIDE下载raw文件和mgf文件,将raw文件转换成mzXL格式的文件,使用Proteowizard提取峰值信息,使用MS-Deconv处理mzXML文件,输出包含MS1信息,使用转换脚本msdeconv.py转换MS-Deconv的输出为mzML格式,使用Identify搜索mgf文件,数据库为从UniProt Release下载的人类蛋白质组数据,搜索参数设置为胰蛋白酶,2个漏切位点, 10ppm前体质量误差,0.1 Da生产质量精度,输出结果被写成pickle格式的文件,使用identipy mzid.py脚本转换将其转换为mzIdentML格式。为了证明通用性,作者构建了两个脚本用于从mzML和mzIdentML读入数据和输出相同的文档。通过对来自每个源文件及其重复对的解析数据进行递归比较来发现差异,并对这些差异进行了语义评估。

该库的运行过程主要包括三部分:解析词汇,为了能够自动推导受控词汇表术语,首先从文档初始化期间用户指定的URI加载每个CV,或者在打包期间包含库中源代码的静态文件(如果网络请求失败)。该库包括一个可配置的缓存机制,用于在首次从提供的或已安装的包中检索词汇源文件后,选择将词汇源文件存储在文件系统上。除了Unimod之外,用OBO格式解析每个CV,构造一个内存中的术语图,过编号为每个术语编制索引。解析单元:解决了第一个问题后,如果术语定义指定该术语具有单元,则该单元也将被解析。 如果在受控词汇表中仅指定了一个单元,并且用户提供的描述该术语的数据未提供任何单元信息,则将自动使用该术语的定义单位。 如果允许多个单元,如时间或信号强度等数量的情况,则会产生警告并且第一个单元选项将被使用。定义组件:每个组件构造一个包含元素以包含其内容,但可以自动创建多个内部元素或组件,绑定到同一文档的上下文中。 元素和组件类型都使用了上下文管理器,因此它们可以任意嵌套和混合。

作者将MS-Deconv 的结果从制表符分隔的文本格式转换为mzML,尽可能多地保留源文件元数据,同时保留deisotoped和charge deconvoluted峰值质量和强度。 保留了MS-Deconv重新计算的前体单同位素m / z和电荷,可以校正仪器报告的前体单同位素峰值误差。 生成的mzML文件保留了MS-Deconv的产生的原始mzXML文件中读取的元数据,可以使用任何可以读取mzML的工具查看,例如SeeMS 。 此外,在转换过程中,作者提供了一组计算以查找特定的特征离子,并在每个MS2扫描上提供了一个<userParam />标记,其中包含所需的m / z值。

Psims是一个用于编写HUPO-PSI标准下的mzML和mzIdentML的库,以及用于与Python中相关的受控词表进行交互的库。作者在本文中简要地展示了它用于从外部工具生成的表格数据中编写mzML文件的功效。随着越来越多的肽和蛋白质鉴定工具(包括IdentiPy和Ursgal直接用Python编写)被开发出来,直接将其结果写入mzIdentML可能是很有利的。 psims不使用类似DOM的体系结构,但它完全支持已发布的XML模式,并可以使用它们来验证自己生成的XML。由于流的性质,库不会在运行时严格执行XSD验证,因此用户必须明确请求调用它。作者还希望提供一个灵活的系统,使用户能够编写满足其需求的文档,这些文档可能还未被目前发布的标准所涵盖。

文章解读:

文献分享二组-马臻

文章引用:

doi:10.1074/mcp.RP118.001070

文章链接:

https://www.mcponline.org/content/18/3/571

Mol Cell Proteomics. |马臻| psims-一个用于编写HUPO-PSI标准下的mzML和mzIdentML的python库的更多相关文章

  1. Mol Cell Proteomics. |胡丹丹| 雷公藤红素通过SIRT1-FXR 信号通路保护胆汁淤积性肝损伤

    期刊:Mol Cell Proteomics 题目:Celastrol protects from cholestatic liver injury though modulation of SIRT ...

  2. Mol Cell Proteomics. | 粪便微生物蛋白质的组成与饮食诱导肥胖倾向的关联研究

    题目:Associations of the Fecal Microbial Proteome Composition and Proneness to Diet-induced Obesity 期刊 ...

  3. Mol Cell Proteomics. | Elevated Hexokinase II Expression Confers Acquired Resistance to 4-Hydroxytamoxifen in Breast Cancer Cells(升高的己糖激酶II表达使得乳腺癌细胞获得对他莫昔芬的抗性)(解读人:黄旭蕾)

    文献名:Elevated Hexokinase II Expression Confers Acquired Resistance to 4-Hydroxytamoxifen in Breast Ca ...

  4. Mol Cell Proteomics. | 用于鉴定新型融合转录本及其在癌细胞中的潜在翻译产物的多功能蛋白质组基因组学工具FusionPro

    期刊:Molecular & Cellular Proteomics 发表时间:June 17, 2019 DOI:10.1074/mcp.RA119.001456 分享人:任哲 内容与观点: ...

  5. Mol Cell Proteomics. | MARMoSET – Extracting Publication-ready Mass Spectrometry Metadata from RAW Files

    本文是马克思普朗克心肺研究所的三名研究者Marina Kiweler.Mario Looso和Johannes Graumann发表在8月刊的MCP的一篇文章. 由于Omics实验经常涉及数百个数据文 ...

  6. Mol Cell Proteomics. |阳梦如|富马酸二甲酯在神经元和星形胶质细胞中新蛋白质靶点的鉴定及相关功能验证

    大家好,本周分享的是发表在Molecular & Cellular Proteomics.上的一篇关于富马酸二甲酯在脑细胞蛋白质中新作用靶点的鉴定及功能性验证的文章,题目是Identifica ...

  7. Mol Cell Proteomics. |王欣然| 基于微粒的蛋白聚合物捕获技术让能满足多种不同需求的蛋白质组学样品制备方法成为可能

    大家好,本周分享的是发表在Molecular & Cellular Proteomics. 上的一篇关于蛋白质组学样本质谱分析前处理方法改进的文章,题目是Protein aggregation ...

  8. Mol Cell Proteomics. |彭建祥| 人胃肠道间质瘤亚群蛋白质组图谱

    大家好,本周分享的是发表在Molecular & Cellular Proteomics 上的一篇关于人胃肠道间质瘤亚群蛋白质组图谱的文章,题目是Proteomic maps of human ...

  9. Mol Cell Proteomics. | Prediction of LC-MS/MS properties of peptides from sequence by deep learning (通过深度学习技术根据肽段序列预测其LC-MS/MS谱特征) (解读人:梅占龙)

    通过深度学习技术根据肽段序列预测其LC-MS/MS谱特征 解读人:梅占龙  质谱平台 文献名:Prediction of LC-MS/MS properties of peptides from se ...

随机推荐

  1. Tomcat_异常_01_Setting property 'source' to 'org.eclipse.jst.jee.server:AWeiXin_QiYe_Demo' did not find a matching property

    关于解决方法: 1.解决Setting property 'source' to 'org.eclipse.jst.jee.server的问题 2.eclipse中server location为灰色 ...

  2. hdu-1025 Constructing Roads In JGShining's Kingdom(二分查找)

    题目链接: Constructing Roads In JGShining's Kingdom Time Limit: 2000/1000 MS (Java/Others)     Memory Li ...

  3. [转]angularjs的provider~ (Provider, Value, Constant, Service, Factory, Decorator)

    用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄 ...

  4. javascript:function 函数声明和函数表达式 详解

    函数声明(缩写为FD)是这样一种函数: 有一个特定的名称 在源码中的位置:要么处于程序级(Program level),要么处于其它函数的主体(FunctionBody)中 在进入上下文阶段创建 影响 ...

  5. C++STL 库中set容器应用

    #include<iostream> #include<cstdio> #include<set> using namespace std; set<int& ...

  6. jQuery 文档操作 - html() 方法

    1.转自:http://www.w3school.com.cn/jquery/manipulation_html.asp 设置所有 p 元素的内容: <html> <head> ...

  7. hashcode和equals

    Java中集合(Collection):一类是List另外一类是Set: 区别:list中元素有序,可重复 Set元素无序,不能重复 如何保证元素不重复呢?Object.Equals 但是当添加的元素 ...

  8. sort,uniq,cut,wc命令详解

    sortsort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 s ...

  9. 【总结整理】javascript进阶学习(慕课网)

    数组 数组是一个值的集合,每个值都有一个索引号,从0开始,每个索引都有一个相应的值,根据需要添加更多数值. 二维数组 二维数组 一维数组,我们看成一组盒子,每个盒子只能放一个内容. 一维数组的表示: ...

  10. zookeeper相关知识的总结:

    一.分布式协调技术 在给大家介绍ZooKeeper之前先来给大家介绍一种技术——分布式协调技术.那么什么是分布式协调技术?那么我来告诉大家,其实分布式协调技术 主要用来解决分布式环境当中多个进程之间的 ...