STREAM:细胞轨迹
什么是STREAM
STREAM(Single-cell Trajectories Reconstruction, Exploration And Mapping of omics data),它是一个交互式的 pipeline,能够从单细胞转录组和表观基因组数据中分离和可视化复杂的分支轨迹。它还允许自动发展轨迹相关的标记基因发现和可视化。STREAM是一款用户友好的开源软件,可以作为web应用程序在stream.pinellolab.org上交互使用,也可以作为Docker的独立命令行工具使用。 https://github.com/pinellolab/STREAM
能用来做什么
1 一个交互式数据库专注于单细胞轨迹可视化的几个发表的研究。
用户可以在单细胞水平上可视化和探索细胞发育轨迹、亚群及其基因表达模式。
2 一个计算轨迹推断工具
STREAM既可以作为单细胞转录组数据的输入,也可以作为表观基因组数据的输入。它可以在简单分叉或复杂分支的情况下可靠地重建轨迹和伪时间,而不需要事先知道轨迹的结构或数目。
STREAM提供了映射过程,它允许重用以前推断的主图作为引用来映射原始拟合过程中没有包含的新单元格。(目前只支持命令行接口https://github.com/pinellolab/STREAM)
STREAM为不同类型的潜在标记基因(或k-mers)提供了分析工具:分支基因,即在定义分支分支间差异表达的分支点上起重要作用的基因,以及转移基因,即表达与给定分支上细胞伪时间相关的基因。
STREAM提供了单细胞水平和密度水平的细胞可视化和推断轨迹的基因表达模式。特别是STREAM提出了一种新的可视化方法,称为STREAM plot,它有助于沿着分支轨迹研究亚种群组成和细胞命运基因。
用法
预先计算的结果
通过点击“Precomputd resutls”,用户可以看到几个已发布数据集的预计算轨迹。(以后会有更多的数据集)
- 选择预计算数据集
用户可以从droplist中选择任何预先计算的数据。这是郭,G。以2013年《et al.2013》为例:
一旦用户选择了数据集,一个简短的描述将自动出现在菜单下。
2)轨迹可视化
在MLLE空间中,三维散点图通过STREAM来显示单元的位置和拟合主图。在3D散点图中,用户可以轻松、交互式地执行许多不同的操作,包括旋转、放大、缩小、在特定视图上拍摄快照。
此外,当鼠标悬停在点上时,将显示从实验中获得的细胞坐标和细胞标签。用户还可以交互控制图例面板。第一次点击细胞类型或拟合曲线,相关细胞或曲线将消失。再次点击它们,单元格或曲线就会回来。这有助于关注兴趣的分支或细胞类型。
平面树形图直观方便地将曲线(轨迹)表示为二维平面上的线段。在这个表示中,树枝的长度是从三个或更高维度的MLLE空间中保留下来的。此外,单元根据其分支位置和与指定分支的距离被投影到树上。当鼠标悬停在点上时,会出现二维平面上的细胞坐标和实验得到的细胞标签。用户可以通过选择一个特定的区域来放大。类似于3D散点图,用户可以交互控制图例部分。
用户可以选择不同的起始节点来可视化地铁图(单细胞级)或流图(密度级)中的轨迹。默认情况下,选择推荐的开始节点。这使得使用广度优先搜索可以很容易地重新组织树,从而更好地表示从所选起始节点开始的伪时间序列。
3)可视化感兴趣的基因
在基因组合框中,用户可以从droplist中选择基因,也可以输入自己的基因名称。
基因将在地铁图和河流图中被可视化。当鼠标悬停在点上时,细胞坐标和基因表达都会显示出来。
4)可视化不同的基因
分支基因,即在定义分支点时起重要作用的基因。
用户首先需要选择一对相邻的分支,通过流式计算其中的差异表达基因。
然后用户可以指定DE基因相对高表达的分支。
顶部自动检测到的DE基因将显示。用户可以很容易地控制通过一个滑动条显示多少基因。
在右侧,用户可以在平树和流图上可视化检测到的分流基因。
5)Transition Genes可视化
转移基因,即表达与细胞在某一分支上的假时间相关的基因。
用户首先需要选择一个分支,通过流计算沿哪个分支的过渡基因。
然后顶部自动检测到的过渡基因将显示。用户可以很容易地控制通过一个滑动条显示多少基因。
在右边,用户可以看到检测到的转移基因。
根据您自己的数据进行计算
1).输入文件
数据矩阵
对于转录组数据,STREAM只需要一个表分离的基因表达矩阵(raw counts or normalized values) in .tsv or .tsv.gz file format. 每一行代表一个独特的基因,每一列代表一个细胞。对于原始计数,需要进行log2转换和 library size 归一化。
对于表观基因组数据,进行scac -seq轨迹推断分析,主要输入为:
1)一组文件,包括计数文件、区域文件和样本文件。由于这部分有点耗时,目前网站还不支持。但是用户可以通过在命令行界面上运行流来轻松实现https://github.com/pinellolab/STREAM.
2)a precomputed scaled z-score file by STREAM. Each row represents a k-mer DNA sequence. Each column represents one cell. Each entry is a scaled z-score of the accessibility of each k-mer across cells
此外,还可以提供以下文件的。tsv或。tsv.gz格式:
cell_tags文件:.tsv或.tsv.gz格式。每个项目可以是一个假定的细胞类型或从实验中获得的采样时间点。单元格标签有助于可视化地验证所推断的轨迹。标签的顺序应与基因表达矩阵文件中细胞的顺序一致。不需要标题。
cell_label_color文件:.tsv或.tsv.gz格式。为不同的单元格标签定制颜色。第一列指定单元格标签,第二列指定十六进制格式的颜色。不需要标题。
除了个人文件外,为了帮助用户快速了解流是如何工作的,用户可以简单地点击“加载示例数据”按钮。这将自动上传数据矩阵文件,cell_label文件和cell_label_color文件的用户。
2)参数
该面板主要由基本参数和高级参数组成。基本参数应该能够在大多数情况下正常工作。如果用户提供的数据矩阵包含原始计数,则需要进行log2转换和库大小规范化。此外,由于scat -seq数据与转录组数据有很大的不同,用户需要指定它是否是ATAC-seq数据。在特征选择上,我们默认使用黄土拟合来选择变量最多的基因。在scac -seq数据中,由于z-score矩阵为负值,用户需要使用PCA来选择top PCs。在sc-qPCR数据中,通常基因数量相对较少,我们建议用户选择‘all’保留所有基因。对于降维,我们使用的是MLLE.邻居的大小是根据单元格的数量来选择的,默认设置为单元格总数的10%。要使用的MLLE组件的数量取决于分支的数量和要学习的结构的复杂性。通常,三个组件捕获大多数数据集的主要结构,增加它们可以恢复更精细的结构(尽管我们观察到在所有测试的数据集中选择超过5个组件没有任何好处)。
3)计算轨迹
当用户点击“compute”按钮时,STREAM将根据用户设置的参数推断轨迹。根据数据大小,这个过程可能需要几分钟(对于有数百个细胞的sc-qPCR数据,可能需要一分钟)。对于包含大约2000个细胞和3k基因的scRNA-seq数据,可能需要2分钟)。一旦完成,类似于“预计算结果”部分,用户可以看到不同的交互可视化效果,包括带有拟合轨迹的3D散点图、平面树图、地铁地图和流图。对于地铁图和流线图,用户可以通过选择不同的起始节点来探索不同的推断树结构的重新组织。
4)感兴趣的基因可视化
与“预计算结果”类似,用户在选择insterst的基因后,只需点击“执行分析”,就可以交互地可视化其在“计算轨迹”步骤得到的地铁图和流线图中的基因表达模式。
5)识别不同的基因
用户只需点击“执行分析”按钮,就可以开始发散基因分析。然后按钮状态将变成'运行'。这个过程通常比“计算轨迹”要长。运行时间取决于基因和细胞的数量。(对于有数百个细胞的sc-qPCR数据,可能需要5分钟左右。对于包含大约2000个细胞和3k基因的scRNA-seq数据,可能需要大约8分钟)。一旦完成,类似于“预计算结果”,将根据用户选择的分支对显示发散基因,用户可以交互地在右侧的地铁图和流图中可视化发散基因。
6)识别转录基因
用户只需点击“执行分析”按钮,就可以开始转换基因分析。然后按钮状态将变成'运行'。这个过程通常比发散基因分析要快一点(对于有数百个细胞的sc-qPCR数据,可能需要3分钟左右。对于包含大约2000个细胞和3k基因的scRNA-seq数据,可能需要大约6分钟)。完成后,类似于“预计算结果”,根据用户选择的分支显示过渡基因,用户可以交互地在右侧的地铁图和流图中可视化过渡基因。
下载当前分析
完成前面的分析步骤后,通过点击“下载文件”,用户可以轻松下载流分析结果。所有结果都将被形式化并包含在一个zip文件中。用户也非常欢迎向我们提供他们的个人分析结果流。我们将很高兴包括在流网站上的预先计算结果部分。(对于3D散点图、平树图、地铁图,用户也可以直接从交互图中下载)