data-raw/MCPcounter_markers.R

## Derived from MCPcounter publication by Becht et al. 2016
##
## MCPcounter defines gene signatures per cell type in a conservative manner
library(GSEABase)
library(tidyverse)

.define_geneset <- function(cell_type, symbol,
                           type = SymbolIdentifier('org.Hs.eg.db'),                           
                           organism = "Homo sapiens",
                           url = "",
                           contributor = contrib) {
    ## symbol = character vector
    ## cell_type = character string
    GeneSet(
        setName = cell_type,
        geneIds = symbol,
        type = type,
        organism = organism,
        urls = url,
        contributor = contributor)
}

url <- 'https://raw.githubusercontent.com/ebecht/MCPcounter/master/Signatures/genes.txt'
contrib <- 'Robert A. Amezquita'
genes <- read_tsv('https://raw.githubusercontent.com/ebecht/MCPcounter/master/Signatures/genes.txt')
colnames(genes) <- c('SYMBOL', 'cell_type', 'ENTREZID')

genes_tbl <- genes %>%
    select(-ENTREZID) %>%
    group_by(cell_type) %>%
    nest() %>%
    mutate(data = map(data, ~ c(.) %>% unlist() %>% as.character()))

gs <- map2(genes_tbl$cell_type, genes_tbl$data, .define_geneset, url = url)
names(gs) <- genes_tbl$cell_type

MCPcounter_markers <- GeneSetCollection(gs)

usethis::use_data(MCPcounter_markers, overwrite = TRUE)
robertamezquita/Inkwell documentation built on May 17, 2019, 10:13 a.m.