对数据存储格式的汇总第二篇,第一篇Anndata请见上篇文章
一、单细胞seurat对象数据结构
此图引用自周运来老师,稍作注释。原文地址为什么要以数据库的思维来理解单细胞数据 - 简书。里面还有SingleCellExperiment,anndata,h5 数据结构的介绍,写的很详细,推荐阅读。
Seurat3.0对象及其操作列表 - 简书 (jianshu.com)
pbmc_small@commands
$NormalizeData.RNA
Command: NormalizeData(object = pbmc_small)
Time: 2018-08-28 04:32:17
assay : RNA
normalization.method : LogNormalize
scale.factor : 10000
verbose : TRUE
$RunPCA.RNA
Command: RunPCA(object = pbmc_small, features = VariableFeatures(object = pbmc_small), verbose = FALSE)
Time: 2018-08-28 04:34:56
assay : RNA
features : PPBP IGLL5 VDAC3 CD1C AKR1C3 PF4 MYL9 GNLY TREML1 CA2 SDPR PGRMC1 S100A8 TUBB1 HLA-DQA1 PARVB RUFY1 HLA-DPB1 RP11-290F20.3 S100A9
compute.dims : 20
rev.pca : FALSE
weight.by.var : TRUE
verbose : FALSE
print.dims : 1 2 3 4 5
features.print : 30
reduction.name : pca
reduction.key : PC
seed.use : 42
$BuildSNN.RNA.pca
Command: BuildSNN(pbmc_small, features = VariableFeatures(object = pbmc_small))
Time: 2018-08-28 04:43:31
assay : RNA
features : PPBP IGLL5 VDAC3 CD1C AKR1C3 PF4 MYL9 GNLY TREML1 CA2 SDPR PGRMC1 S100A8 TUBB1 HLA-DQA1 PARVB RUFY1 HLA-DPB1 RP11-290F20.3 S100A9
reduction : pca
dims : 1 2 3 4 5 6 7 8 9 10
k.param : 30
prune.SNN : 0.06666667
nn.eps : 0
verbose : TRUE
force.recalc : FALSE
do.plot : FALSE
graph.name : RNA_snn
......
二、数据结构及内容
Assays
默认情况下,我们是对Seurat中的RNA的Assay进行操作。可以通过@active.assay
查看当前默认的assay,通过DefaultAssay()
更改当前的默认assay。
结构
counts 存储原始数据,是稀疏矩阵
data存储logNormalize() 规范化的data。总表达式对每个单元格的要素表达式度量进行标准化,将其乘以比例因子(默认为10,000),并对结果进行对数转换
scale.data#存储 ScaleData()缩放后的data,此步骤需要时间久。
meta.data
元数据,对每个细胞的描述。一般的meta.data包括orig.ident, nCount_RNA, nFeature_RNA, 以及计算后的percent.mt,RNA_snn_res.0.5等
可以通过pbmc$percent.mt
或pbmc[['percent.mt']]
来调用、操作
reduction
降维后的每个细胞的坐标信息,包括pca,tsne,umap等
三、对象操作
① 通过结构图上的@,$符号依次取
② 两个中括号操作,pbmc[[ ]]。
教程中,pbmc[['percent.MT']]向meta.data添加 percent.MT 这一列。
pbmc[[]],中括号取的是上面结构图中的二级数据名称
- 以上两种方法无差别
> class(pbmc[['RNA']])
[1] "Assay"
attr(,"package")
[1] "Seurat"
> class(pbmc@assays$RNA)
[1] "Assay"
attr(,"package")
[1] "Seurat"
pbmc[['nCount_RNA']]
取出来,是所有细胞的nCount_RNA,包含细胞信息,数据框
而pbmc@meta.data$nCount_RNA
取出来的是单独nCount_RNA一列,是向量
链接:https://www.jianshu.com/p/0c4bc6a932b2