satijalab / sctransform

R package for modeling single cell UMI expression data using regularized negative binomial regression
GNU General Public License v3.0
206 stars 33 forks source link

Feat/select gene #60

Closed yuhanH closed 4 years ago

yuhanH commented 4 years ago

residual_genes will allow users to only calculate residuals of selected genes.

This part subsets umi matrix to the selected genes and genes_step1 used to build model.

if( !is.null(residual_genes)){
    genes <- intersect(residual_genes, genes)
    genes <- unique(c(genes_step1, genes))
    umi <- umi[genes, ]
    genes_log_gmean <-  genes_log_gmean[genes]
  }

This part is to subset genes only to selected genes which will be calculated Pearson residuals.

    if(!is.null(residual_genes)){
      genes <- intersect(residual_genes, genes)
    }
ChristophH commented 4 years ago

So the goal is to get the residuals for only a specific set of genes? Currently this would be doable with

vst_out <- vst(umi = umi, residual_type = 'none')
residuals <- get_residuals(vst_out = vst_out, umi = umi[residual_genes, , drop = FALSE])

Do you get the same results?