Skip to contents

This function adds spatial ecotype annotations to the metadata of single cells.

Usage

AnnotateCells(scmeta, obj, col = "SE", dropcell = TRUE)

Arguments

scmeta

Data frame containing single-cell metadata. Two columns (X and Y) for spatial coordinates are required.

obj

A Seurat object returned from SpatialEcoTyper function.

col

Character string specifying the name of the column in `obj@meta.data` containing the spatial ecotype annotations. Default is `"SE"`.

dropcell

Logical. If TRUE, cells that cannot be assigned to any spatial ecotype (outside the radius) will be removed from the returned metadata. Default is TRUE.

Value

An updated version of `scmeta` with spatial ecotype annotations added.

Examples

library(data.table)
library(Seurat)
library(SpatialEcoTyper)

scmeta <- read.table("https://spatialecotyper.stanford.edu/inc/inc.public.vignettes.php?file=Melanoma1_subset_scmeta.tsv",
                     sep = "\t", header = TRUE, row.names = 1)
head(scmeta)
#>                                         X         Y   CellType CellTypeName
#> HumanMelanomaPatient1__cell_3655 1894.706 -6367.766 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3657 1942.480 -6369.602 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3658 1963.007 -6374.026 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3660 1981.600 -6372.266 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3661 1742.939 -6374.851 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3663 1921.683 -6383.309 Fibroblast  Fibroblasts
#>                                  Region Dist2Interface
#> HumanMelanomaPatient1__cell_3655 Stroma      -883.1752
#> HumanMelanomaPatient1__cell_3657 Stroma      -894.8463
#> HumanMelanomaPatient1__cell_3658 Stroma      -904.1115
#> HumanMelanomaPatient1__cell_3660 Stroma      -907.8909
#> HumanMelanomaPatient1__cell_3661 Stroma      -874.2712
#> HumanMelanomaPatient1__cell_3663 Stroma      -903.6559

url <- "https://spatialecotyper.stanford.edu/inc/inc.public.vignettes.php?file=Melanoma1_subset_SpatialEcoTyper_results.rds"
download.file(url, destfile = "Melanoma1_subset_SpatialEcoTyper_results.rds", mode = "wb")
obj <- readRDS("Melanoma1_subset_SpatialEcoTyper_results.rds")$obj

## Transfer SE annotations to single cells
scmeta <- AnnotateCells(scmeta = scmeta, obj = obj, dropcell = TRUE)
head(scmeta)
#>                                         X         Y   CellType CellTypeName
#> HumanMelanomaPatient1__cell_3655 1894.706 -6367.766 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3657 1942.480 -6369.602 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3658 1963.007 -6374.026 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3660 1981.600 -6372.266 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3661 1742.939 -6374.851 Fibroblast  Fibroblasts
#> HumanMelanomaPatient1__cell_3663 1921.683 -6383.309 Fibroblast  Fibroblasts
#>                                  Region Dist2Interface    SE
#> HumanMelanomaPatient1__cell_3655 Stroma      -883.1752  SE69
#> HumanMelanomaPatient1__cell_3657 Stroma      -894.8463 SE146
#> HumanMelanomaPatient1__cell_3658 Stroma      -904.1115 SE146
#> HumanMelanomaPatient1__cell_3660 Stroma      -907.8909 SE146
#> HumanMelanomaPatient1__cell_3661 Stroma      -874.2712  SE92
#> HumanMelanomaPatient1__cell_3663 Stroma      -903.6559  SE69