【问题标题】:Add Metadata to Seurat Object将元数据添加到 Seurat 对象
【发布时间】:2017-02-16 16:37:44
【问题描述】:

我正在使用名为“Seurat”的 R 包进行单细胞 RNA-Seq 分析。我正在尝试将有关单个细胞样本的元数据信息添加到 Seurat 对象。但是下游的绘图命令不起作用。我想知道是否有人知道我如何检查修改后的 Seurat 对象以确认元数据已添加到正确的插槽和列中。

要添加元数据,我使用了以下命令。

首先我从 Seurat 对象中提取单元格名称

> Cells <- WhichCells(seurat_object)

然后我使用数字 1-3 创建了一个由形态确定的细胞类型的列表 注意:该列表要长得多,但这里缩写为前 3 个

> MorphCellTypes = c(1,2,3)

然后我将单元格和 MorphCellTypes 合并为一个 data.frame

> MorphCellTypesDF = data.frame(Cells, MorphCellTypes)

然后我尝试使用以下成功运行的命令将此 MorphCellTypesDF 元数据添加到 seurat 对象

> AddMetaData(Sleuth_object, MorphCellTypesDF, col.name = MorphCellTypes

然后我尝试使用以下命令使用 TSNEPlot 将其可视化

> TSNEPlot(pbmc, do.label = TRUE, pt.size = 3, group.by = MorphCellTypes

这返回了以下错误:

“Error in DimPlot(object, reduction.use = "tsne", cells.use = cells.use,  :
  object 'MorphCellTypes' not found”

所以我认为我要么将元数据添加到我的 seurat 对象中的错误位置,要么我以某种方式弄乱了 col.name。无论哪种方式,我似乎都错误地使用了 AddMetaData 或 TSNEPlot() 函数。如果您有任何机会发现错误或可以向我指出如何使用 AddMetaData 的示例,我们将不胜感激。

【问题讨论】:

    标签: r bioinformatics seurat


    【解决方案1】:

    经过反复试验,我找到了一种成功添加实验性元数据列的方法。诀窍是在添加数据时保持 Seurat 对象的正确格式。为此,我复制了 pbmc@data.info 表,然后通过向其中添加列来修改它。然后通过将修改后的表导入回 Seurat。以下代码在 pbmc@data.info 槽中的 Seurat 对象中添加一列称为 Gene_ID 的随机数。然后它通过可视化测试添加此数据。

    CellsMeta = pbmc@data.info
    head(CellsMeta)
    
    randomnumbers <- runif(2700, 0.0, 1.1)
    
    CellsMeta["Gene_IDs"] <- randomnumbers
    head(CellsMeta)
    
    CellsMetaTrim <- subset(CellsMeta, select = c("Gene_IDs"))
    head(CellsMetaTrim)
    
    pbmc <- AddMetaData(pbmc, CellsMetaTrim)
    
    head(pbmc@data.info)
    
    VlnPlot(pbmc, c("nGene", "nUMI", "Gene_IDs"), nCol = 3)
    

    【讨论】:

    • 我使用了pbmc@meta.data 而不是pbmc@data.info。谢谢。
    【解决方案2】:

    在 AddMetaData() 中传递给元数据参数的内容必须是行名与 pbmc@meta.data 中的行名匹配的数据框。我猜你的 MorphCellTypes 对象不满足这两个要求,这就是导致错误的原因。

    来自 AddMetaData() 的文档:

    元数据:行名称为单元格名称的数据框(注意:这些必须与 object@cell.names 中的项目完全对应),列是附加的元数据项目。

    【讨论】:

      猜你喜欢
      • 2022-09-25
      • 2013-01-03
      • 2020-04-05
      • 2020-08-12
      • 2022-10-20
      • 2021-09-16
      • 2022-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多