0

我正在使用 Seurat 包分析六个单细胞 RNA-seq 数据集。

这 6 个数据集是通过每个不同的 10X 运行获得的,然后通过 Seurat 函数“FindIntegrationAnchors”与批效应校正相结合。同时,在这6个数据集中,数据1、2、3和4是“未处理”组,而数据5和6属于“处理”组。我将所有 6 个数据集与批量校正合并在一起,但我还需要比较“未处理”与“处理”的特征。

如何将数据1、2、3和4分组为“未处理组”,将数据5和6分组为“处理组”,然后进行下游分析?

谢谢。

4

1 回答 1

0

一种快速而肮脏的方法是在合并Seurat 对象之前添加信息:

...
so_samples[[1]]@meta.data$treatment <- "control"
so_samples[[2]]@meta.data$treatment <- "control"
so_samples[[3]]@meta.data$treatment <- "control"
so_samples[[4]]@meta.data$treatment <- "control"
so_samples[[5]]@meta.data$treatment <- "treated"
so_samples[[6]]@meta.data$treatment <- "treated"
...
anchors <- FindIntegrationAnchors(object.list = so_samples, dims = 1:20)
so_all_samples <- IntegrateData(anchorset = anchors, dims = 1:20)

通常,最好从文件中加载此类元数据并将其连接到 seurat 对象,而无需此类容易出错的复制粘贴代码。另请注意,像这样修改 R S4 对象(可以使用 访问元素的对象)通常是一个坏主意@,但是 Seurat 包提供的用于修改 Seurat 对象的函数使用起来非常麻烦,我怀疑它们会永远改变底层的数据结构。

于 2020-07-16T16:46:39.367 回答