R-seurat#
1. Seurat对象的整体结构#
Seurat对象主要包含以下几大组件:
-
Assays:存储表达矩阵和相关的数据(如空间转录组数据,通常为"Spatial")。
-
Meta data:样本、细胞、或者空间spot级别的元数据。
-
Dimensional Reductions:PCA、UMAP、tSNE等降维分析的结果。
-
Images:空间转录组中特有的组件,存储组织图像信息和空间坐标。
2. 典型结构:10x Visium#
SeuratObject
├── assays
│ └── Spatial(默认)
│ ├── counts:原始计数矩阵
│ ├── data:标准化表达矩阵(log normalized)
│ └── scale.data:经过缩放的表达数据(比如scale之后)
├── meta.data
│ └── 空间spot相关信息(细胞类型、样本条件等)
├── reductions
│ ├── pca:主成分分析结果
│ └── umap/tSNE:降维可视化结果
└── images
└── slice1(空间图像信息)
├── coordinates:空间坐标数据(x, y位置)
├── image:组织的原始切片图像
├── scale factors:图像与空间坐标之间的尺度因子
└── spot radius:空间spots的半径3. 访问Seurat对象内容的示例代码#
library(Seurat)
# 假设数据对象名为obj
# 查看Seurat对象结构
str(obj)
# 提取空间坐标
coords <- GetTissueCoordinates(obj)
# 提取表达矩阵
expr_matrix <- GetAssayData(obj, slot = "data", assay = "Spatial")
# 提取空间图片
image <- obj@images$slice1@imagePython环境(scanpy/Squidpy)#
1.AnnData对象的整体结构#
AnnData对象
├── X:主表达矩阵(通常为基因表达)
├── obs:观测单元元数据(细胞或spot的元信息)
├── var:基因层面的信息
├── uns:非结构化数据(通常存储如图像、空间坐标元数据)
├── obsm:观测单元的多维信息(如PCA、空间坐标)
├── layers:可选项,存储多个版本的表达数据(如raw counts、normalized数据)
└── obsp/varp:可选,存储pairwise关系数据(如空间邻域图)2. 空间转录组的典型结构#
以10x Visium数据为例: