python包用于高通量非靶向代谢物指纹图谱的标称质谱直接进样。

DIMEp的Python项目详细描述


dimpy:python中的直接注入代谢过程

项目状态:active-项目已达到稳定、可用状态,正在积极开发中。pypi-python versionpypipypi-licensedoipypi-statusdocumentation statusdownloads构建状态

python包,用于直接从mzml文件中进行标称质量直接进样质谱的高通量非靶向代谢物指纹分析。

这项工作的灵感来自于使用标称质量流注射-电喷雾质谱(Beckmann,et al,2008)的高通量、非靶向代谢物指纹分析中详述的方法。

功能

安装

Dimepy需要Python3+,不幸的是它与Python2不兼容。如果您仍在使用python 2,一个聪明的解决方法是安装python 3并使用它。

您可以通过pypi使用pip安装它:

pip install dimepy

如果您想要"出血边缘"版本,也可以使用git直接从该存储库安装-但要小心龙:

pip install git+https://www.github.com/AberystwythSystemsBiology/DIMEpy

用法

要使用包,请键入以下into您的python控制台:

>>>importdimepy

目前,这个管道只支持mzml文件。您可以使用蛋白质向导将专有格式轻松转换为mzml。

加载单个文件

如果您只想在一个文件中加载指纹矩阵估计,那么只需创建一个新的光谱对象。如果样本属于某个特征,建议在实例化一个新的spectrum对象时也传递它。

>>>filepath="/file/to/file.mzML">>>spec=dimepy.Spectrum(filepath,identifier="example",stratification="class_one")/file/to/file.mzML

默认情况下,频谱对象不设置信噪比估计器。强烈建议在实例化频谱对象时设置信噪比估计方法。

如果您的实验方案使用混合极性扫描,请确保将扫描范围限制为与您感兴趣的分析极性最佳匹配:

>>>spec.limit_polarity("negative")

如果您使用的是FIE-MS,强烈建议您只使用输液配置文件来生成您的质谱。例如,如果您的扫描配置文件如下所示:

        |        _
      T |       / \
      I |      /   \_
      C |_____/       \_________________
        0     0.5     1     1.5     2 [min]

因此,可以假定输液发生在30秒到1分钟的扫描过程中。limit_infission()方法是通过估计总离子计数(tic)的中间绝对偏差(mad)来实现这一点的,然后将轮廓限制在估计mad的任何倍数的时间范围之间:

>>>spec.limit_infusion(2)# 2 times the MAD.

现在,我们可以自由加载扫描以生成基本质谱:

>>>spec.load_scans()

现在您应该可以使用massintensities属性来访问生成的质谱:

>>>spec.massesarray([...])>>>spec.intensitiesarray([...])

使用多个文件

一个更现实的管道是使用多个质谱文件。这是事情真正开始变得有趣的地方。spectrumlist对象通过使用append方法实现了这一点:

pip install dimepy
0

您可以使用迭代器递归地生成spectrum对象,或者根据需要手动生成。

如果您只使用此管道来提取元分析系统的质谱,那么现在只需调用\u to csv方法:

pip install dimepy
1

也就是说,这个管道包含了metaboanalyst中的许多预处理方法,因此您可能更容易使用我们的方法。

作为一种诊断措施,tic可以提供可能对跑步总强度计数产生不利影响的因素的估计。通常,去除tic偏离中间绝对偏差2/3倍的光谱是很常见的。我们可以通过调用detect_outliers方法来完成此操作:

pip install dimepy
2

质谱数据分析的第一步通常是将数据存储到给定的质量-离子值。要对spectrum对象中的所有spectrum进行此操作,只需应用bin方法:

pip install dimepy
3

在FIE-MS中,空值应不超过标识的箱子总数的3%。然而,为了简化分析过程,需要进行插补(因为大多数多变量技术无法容纳缺失的数据点)。要执行值插补,只需使用值插补

pip install dimepy
4

现在,可以使用以下方法以独立于样本的方式对光谱对象进行变换和正规化:

pip install dimepy
5

完成后,您现在可以将数据导出到数据矩阵:

pip install dimepy
6

这应该会给您类似于:

<表><广告>样本ID<0> M0<> M2<3> m3< <…>< /广告><正文>示例13213…示例2< 713 >< > >6546…示例31337

错误报告和功能建议

请将所有错误或功能建议报告给问题跟踪程序。请不要直接给我发电子邮件因为我正在努力跟踪需要修复的内容。

我们欢迎各种各样的贡献,所以请尽你所愿坦诚相待(!)

文档

该项目的文档可以在其"阅读文档"页上找到。

贡献者

许可证

Dimepy是在GNU通用公共许可3.0版下获得许可的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
异常如何在java中优雅地处理FileNotFoundexception   java线程卡在BlockingQueue上。无缘无故   类网格程序w/java   StrutsJava:动态应用Velocity脚本   java在运行时重写/禁用方面   java Apache POI无法正确读取Excel单元格中的秒数   具有不同用户权限的Java文件夹/文件创建   java我可以检查Firebase ValueEventListener onDataChanged是否已被调用吗?   尽管获得了用户权限,java Android开发文件权限仍被拒绝   java如何使用JPA映射map<EnumType,Double>?   java是否使用UI线程显示toast消息?   JAVAlang.IllegalArgumentException:不支持的元素:rss   java Android setRequestedOrientation活动和视图生命周期   安卓如何在Java中定义支票盒?   在Java中,对于大输入,字符串解析长期失败   使Java在XP中按计划任务运行读取env用户变量时出现问题   任务“:workflowsjava:NodeDriver”的梯度执行失败。main()   java如何检测是否只设置了部分属性?   在客户端web服务上使用JBossWS时,java无法找到/更改log4j的默认配置   java LibGDX写入文本文件并接收各种错误