Skip to main content

使用分叉分析进行单细胞聚类的 Python

项目描述

PySCUBA 代表“Python for Single-cell Clustering Using Bifurcation Analysis”。

PySCUBA 是一种新的计算方法,用于从单细胞基因组数据中提取谱系关系,并对与细胞分化相关的动态变化进行建模。PySCUBA 借鉴非线性动力学技术和随机微分方程知识,为涉及多谱系规范的复杂过程建模提供系统框架。

该方法有一个 MATLAB 实现。然而,PySCUBA 是一次彻底的大修和重新设计,其中一些错误、数学不一致和对异常情况的不当处理都得到了解决。PySCUBA 还带有一个 GUI,使用 Qt 框架的 Python 包装器编写。

PySCUBA 是开源的,可以在没有阻碍我们一些同事的高额许可费用的情况下使用。此外,PySCUBA 是一种更快、更有效的方式来处理相应计算生物学方法的基础计算和数据处理。在基准比较中,发现 MATLAB 代码大约需要 20 分钟才能完成,而 PySCUBA 处理相同的任务大约需要 30 秒。

安装

PySCUBA 是用 Python 2.7 编写的。它依赖于以下库和 API:* matplolib(1.4.3 或更高版本)* numpy (1.9.0 或更高版本)* Pillow(3.2.0 或更高版本)* PyQt4(至少版本 4.11.4)* python- igraph (version>=0.7.1) * rpy2 (2.8.1 or later) * scipy (0.17.0 or later) * setuptools (version>=21.0.0) * sklearn (version>=0.17.1) * Wand ( 0.4.3 版或更高版本)

大多数依赖项应该在使用pip安装期间通过 * 启动终端自动解决;* 运行 $ pip install PySCUBA

尽管如此,请确保在继续之前已满足所有这些先决条件。特别是,PyQt可能必须手动安装。此外,请注意,根据您的 Python 安装,您可能需要使用sudo运行它。

或者,您也可以通过从相应的 GitHub 页面下载 tarball 或 zip 存档从源代码获取 PySCUBA。下载并解压源代码后,导航到根源目录并运行:

$ python setup.py 安装

用法

在您的终端中,运行

$ PySCUBA

应弹出图形用户界面。

选择要处理的文件并选择相关的数据类型和其他此类参数。通过将光标保持在特定按钮上,可以获得每个选项的详细说明;这包括数据集的格式规范。

在您的数据经过各种间隙统计迭代和 Fokker-Planck 势参数的惩罚最大似然估计后,系统将提示您选择各种输出文件以显示在 PySCUBA GUI 中。您可以上下滚动显示窗口,以及放大和缩小。

例子

此处提供了一个功能齐全、带注释的示例,演示了 PySCUBA 的标准用法。

首先,在 Python 会话中,让我们导入一些模块。 Pandas将证明非常方便获取我们的示例数据集:

from os import getcwd, path
import pandas as pd

有问题的数据集是来自 Deng 等人的一些 qPCR 数据,“单细胞 RNA-seq 揭示了哺乳动物细胞中动态、随机的单等位基因表达。” 科学。2014 年 1 月 10 日;343(6167):193-6。它可以从特定的 GitHub 存储库访问,其 url 如下所示。我们想要该文件的内容,而不是其完整的 GitHub 视图,这就是为什么我们使用指向该存储库的 Raw链接并解释 其 url 路径中缺少任何blob/的原因:

url = 'https://raw.githubusercontent.com/gcyuan/SCUBA/master/sample_data/guo2010/guo2010Data.txt'
df = pd.read_csv(url, delimiter='\t')

通过输入检查是否没有发生任何不愉快的事情

df.head()

我们现在要将此数据框写入当前工作目录中以制表符分隔的 *.txt 文件:

df.to_csv(path.join(getcwd(), 'super_duper_data.txt'), sep='\t', index=False)

在您的终端中,我们现在准备启动 PySCUBA 图形用户界面,它可以从任何目录启动(不一定是包含 super_duper_data.txt 的目录

$ PySCUBA

请参阅 PySCUBA 的 GitHub 页面以获取说明 PySCUBA GUI 在启动时的外观、如何选择super_duper_data.txt进行处理以及在尘埃落定后如何选择文件进行显示和进一步调查的屏幕截图。

归因

如果您发现 PySCUBA 在您的研究中有用,请引用其 GitHub 存储库:

Giecold G,PySCUBA,(2016),GitHub 存储库, https://github.com/GGiecold/PySCUBA

相应的 BibTex 条目是

@misc{Giecold2016,
  author = {Giecold, G.},
  title = {PySCUBA},
  year = {2016},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/GGiecold/PySCUBA}},
  commit = {8ee6a08de15decdcdaf7d877888ae783832d80f2}
}

此外,请同时引用以下参考资料:

Marco E、Karp RL、Guo G、Robson P、Hart AH、Trippa L、Yuan GC。(2014)“单细胞基因表达数据的分岔分析揭示了表观遗传景观”。美国国家科学院学报,111,E5643-E5650。

执照

版权所有 2016-2021 Gregory Giecold。

PySCUBA 是在 MIT 许可下提供的免费软件。有关详细信息,请参阅许可证文件。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

PySCUBA-0.1.1.tar.gz (30.7 kB 查看哈希

已上传 source