用于处理单元散列数据的多重删除工具
项目描述
GMM解复用器
GMM-Demux 是一种基于 Gaussian-Mixture-Model 的软件,用于处理样本条形码数据(单元散列和 MULTI-seq)。
GMM-Demux 识别样本条码数据集中的多样本多重态 (MSM)。下面显示了 PBMC scRNA-seq 数据集中 MSM 的示例分布。散点图中的橙色点是 MSM。
描述
GMM-Demux 删除单元散列数据集中的多样本多重 (MSM),并估计剩余数据集中相同样本多重 (SSM) 和单重的百分比。GMM-Demux 还验证推定的细胞类型是否存在,或者它仅仅是由多重细胞诱导的伪影。
多重诱导的假细胞类型称为“假细胞类型”。
下图提供了 PBMC CITE-seq 数据集中的假细胞类型示例:
在上图中,CD3+CD19+ 和 CD4+CD8+ 细胞类型都是多重诱导的假细胞类型。
如上图所示,假类集群具有很大比例的 MSM。两种虚假类型的集群都具有较大的 MSM 百分比。
GMM-Demux 使用 MSM 的百分比作为关键特征来对 GEM 集群进行分类。
术语
-
Singlet:包含单个细胞的液滴。
-
MSM:多样本多重。MSM 是一个多重态,它包含来自不同样本的样本条形码中的细胞。GMM-Demux 可以识别 MSM。
-
SSM:同样本多重态。SSM 是一个多重态,它包含来自样本条形码中单个样本的细胞。SSM 不能通过样本条码与单峰分开。
-
SSD:相同样品液滴。SSD 是 SSM 和单线态的组合类别。
-
纯型:纯型细胞类型是存在于组织中的真实细胞类型。
-
假细胞类型:假细胞类型是一种人工细胞类型,它是由多重细胞产生的人工产物。
-
混合型:混合型细胞类型是一簇液滴,其中存在非平凡部分的假型液滴。
下图提供了 PBMC 数据集中上述术语的说明:
特征
- 从数据集中删除单元散列可识别的多重态(即 MSM)。
- 估计剩余数据集中的单元散列不可识别多重态 (SSM) 的比例(RSSM 百分比)。
- 测试假定的细胞类型是纯(真实)细胞类型还是假(假)细胞类型。
示例数据集
- example_input文件夹中提供了一个示例单元格哈希数据集。它包含 4 个样本单元散列库准备的每滴 HTO 计数矩阵。输入文件夹具有与 CellRanger v3 输出相同的文件格式。
作者
Hongyi Xin, Qi Yan, Yale Jiang, Jiadi Luo, Carla Erb, Richard Duerr, Kong Chen* 和 Wei Chen*
维护者
Hongyi Xin <gohongyi at gmail.edu>
要求
GMM-Demux 需要 python3 (>3.5)。
安装
GMM-Demux 可以直接从 PyPi 安装。或者它可以在本地构建和安装。
从 PyPi 安装 GMM-Demux。
pip3 install --user GMM_Demux
在某些操作系统中,默认情况下pip3链接到pip。对于这些操作系统,安装命令很简单:
pip install --user GMM_Demux
检查是否pip3链接到pipwith pip -V。
如果选择从 PyPi 安装 GMM-Demux,则无需从 github 下载 GMM-Demux。但是,我们仍然建议下载示例数据集以试用 GMM-Demux。
使用setuptools和 pip3在本地安装 GMM-Demux 。
克隆 github 存储库后,您可以选择在本地安装 GMM-Demux。但是,这仅适用于高级用户,不保证支持。该命令提供如下:
cd <GMM-Demux dir>
python3 setup.py sdist bdist_wheel
pip3 install --user .
安装后流程
如果这是您第一次通过 pip 安装 python3 软件,请确保将 pip 二进制文件夹添加到您的PATH变量中。通常,pip 二进制文件夹位于~/.local/bin.
如果用户使用虚拟环境,pip 二进制文件夹可能位于不同的位置。注意 pip 安装输出。
这是一个示例安装输出。pip 二进制文件夹的路径突出显示:
要临时添加 pip 二进制文件夹,请运行以下命令:
export PATH=~/.local/bin:$PATH
要将 pip 库文件夹永久添加到您的PATH变量中,请将以下行附加到您的.bashrc文件中(假设 bash 是默认 shell)。
PATH=~/.local/bin:$PATH
内容
GMM-Demux 的源代码在GMM_Demux文件夹中提供。
还提供了一个示例单元散列数据集,位于该example_input/outs/filtered_feature_bc_matrix文件夹中。
example_cell_types文件夹中提供了上述数据集的一组手动推定的细胞类型示例。使用表面标记表达数据通过手动门控对细胞类型进行注释。
上述单元散列数据集的示例 csv 格式作为example_hto.csv文件提供。
用法
案例1:基本用法,移除MSM
GMM-demux安装后,可以使用命令直接访问 GMM-Demux 。
GMM-demux <cell_hashing_path> <HTO_names>
<HTO_names>是一个样本标签 (HTO) 的列表,由 ',' 分隔,没有空格。例如,示例单元散列数据集中有四个示例条形码标签。它们是HTO_1、HTO_2、HTO_3、HTO_4。因此<HTO_names>变量是HTO_1,HTO_2,_HTO_3,HTO_4。
数据集的非 MSM 液滴(SSD)默认存储在当前目录下的GMM_Demux_mtx文件夹中。也可以通过-o标志指定输出路径。
示例命令
example_input文件夹中提供了一个示例单元格哈希数据。<HTO_names> 可以从 features.tsv 文件中获得。
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4
<HTO_names> 包含在 features.tsv 文件中。feature.tsv 文件的内容如下所示。
输出
输出文件夹中的默认内容是以 MTX 格式存储的非 MSM 液滴 (SSD)。输出与 CellRanger 3.0 共享相同的格式。默认情况下,输出存储在SSD_mtx文件夹中。输出位置可以用-o标志覆盖。
案例 2:计算 MSM 和 SSM 费率
要计算 MSM 和 SSM 速率,GMM-Demux 需要以下-u标志:
- -u 摘要,--summary 摘要生成数据集的统计摘要。需要在测定中估计的细胞总数作为输入。
该-u标志需要一个额外的 <NUM_OF_CELL> 参数,它是单细胞测定中估计的细胞总数。
示例命令
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -u 35685
输出
下面是一个示例报告:
- RSSM 表示剩余 SSD 中 SSM 的百分比(移除所有 MSM 后)。RSSM在移除 MSM 后测量最终单元散列数据集的质量。
案例 3:验证某个单元格类型是否存在
-eGMM-Demux 使用以下标志验证推定的单元类型是否存在:
- -e EXAMINE, --examine EXAMINE 提供单元格列表。需要一个文件参数。仅在设置了 -u 时执行。
该-e标志需要一个文件名,该文件名存储假定细胞类型的液滴条形码列表。
示例命令
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -u 35685 -e example_cell_types/CD19+.txt
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -u 35685 -e example_cell_types/Doublets/CD3+CD4+CD19+.txt
输出
纯细胞类型的示例输出:
假细胞类型的示例输出:
案例 4:使用 csv 文件格式作为输入,而不是 mtx 格式
示例命令
GMM-demux -c example_hto.csv HTO_1,HTO_2,HTO_3,HTO_4 -u 35685
案例5:提取由样本标签组合标记的液滴
提取由多个样本条形码标签标记的液滴,带有以下-x标志:
- -x EXTRACT, --extract EXTRACT 要提取的样本条形码标签的名称,以“,”分隔。联合标签用“+”链接。
设置后-x,GMM-Demux 的其他功能将被关闭。
案例 5a:提取单个 HTO 样本
示例命令
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -x HTO_1
案例 5b:提取由多个 HTO 标签联合定义的单个 HTO 样本
用于+指定联合 HTO 标记。
示例命令
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -x HTO_1+HTO_2
案例 5c:提取多个 HTO 样本
用于,分隔样本标签。单标签样本可以与联合标签样本合并。
示例命令
GMM-demux example_input/outs/filtered_feature_bc_matrix HTO_1,HTO_2,HTO_3,HTO_4 -x HTO3,HTO_1+HTO_2,HTO_1+HTO_4+HTO_2
可选参数
- -h:显示帮助信息。
- -f FULL, --full FULL 生成完整的分类报告。需要一个路径参数。
- -s SIMPLIFIED, --simplified SIMPLIFIED 生成简化的分类报告。需要一个路径参数。
- -o OUTPUT, --output OUTPUT 存储相同样本液滴 (SSD) 的路径。SSD 以 mtx 格式存储。需要一个路径参数。默认路径:SSD_mtx。
- -r REPORT, --report REPORT 指定存储摘要报告的文件。需要一个文件参数。
- -c CSV, --csv 以 csv 格式输入,而不是 mmx 格式。
- -s SKIP, --skip FULL_REPORT 加载完整的分类报告并跳过 mtx 文件夹作为输入。需要一个路径参数。
- -a AMBIGUOUS, --ambiguous AMBIGUOUS 通过聚类算法将虚假 GEM 包含在纯类型 GEM 集群中的估计机会。需要浮点数 (0, 1)。默认值:0.05。仅在 -e 执行时执行。
- -t THRESHOLD, --threshold THRESHOLD 提供置信度阈值。需要 (0,1) 中的浮点数。默认值:0.8。
解析分类输出
分类输出文件夹中有两个文件。一个配置文件(以 .config 结尾)和一个分类文件(以 .csv 结尾)。
分类文件包含每个液滴的标签以及分类的概率。分类用配置文件中解释的数字表示。
下面显示了示例数据的分类输出:
在线单元散列实验规划器
一个基于 GMM-Demux 的在线单元散列实验计划器可在此处公开访问。
引文
如果您发现此代码对您的研究有用,请考虑引用:
@article{xin2019sample,
title={Sample demultiplexing, multiplet detection, experiment planning and novel cell type verification in single cell sequencing},
author={Xin, Hongyi and Yan, Qi and Jiang, Yale and Lian, Qiuyu and Luo, Jiadi and Erb, Carla and Duerr, Richard and Chen, Kong and Chen, Wei},
journal={bioRxiv},
pages={828483},
year={2019},
publisher={Cold Spring Harbor Laboratory}
}
致谢
特别感谢Zhongli Xu 测试GMM-Demux!
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。