Построение всех генов в псевдо-времени в Монокле - PullRequest
0 голосов
/ 04 марта 2020

Я хотел бы использовать код, похожий на код ниже, который работает для набора данных легких в пакете Monocle:

options(stringsAsFactors = FALSE)
library("monocle")
lung <- load_lung()
diff_test_res <- differentialGeneTest(
  lung,
  fullModelFormulaStr = "~genotype"
)
ordering_genes <- diff_test_res[diff_test_res$qval < 0.01, "gene_id"]
lung <- setOrderingFilter(lung, ordering_genes)
plot_ordering_genes(lung)
lung <- reduceDimension(
  lung,
  max_components = 2,
  method = 'DDRTree'
)
lung <- orderCells(lung)
p = plot_genes_in_pseudotime(lung)
df = p$data
df

Я хочу запустить следующее для моего собственного набора данных, но последняя строка занимает слишком много времени Строка diff_test_res также занимает приблизительно 5 минут, но это мгновенно для набора данных легких, размер которого сопоставим с моим:

#Create CellDataSet object

cds <- newCellDataSet(expr_matrix.s4, phenoData = pd, featureData = fd, expressionFamily=negbinomial.size())  
cds <- estimateSizeFactors(cds)
cds <- estimateDispersions(cds)
cds <- detectGenes(cds, min_expr = 0.1)
expressed_genes <- row.names(subset(fData(cds), num_cells_expressed >= 10))

#Cluster

disp_table <- dispersionTable(cds)
unsup_clustering_genes <- subset(disp_table, mean_expression >= 0.1)
cds <- setOrderingFilter(cds, unsup_clustering_genes$gene_id)
cds <- reduceDimension(cds, max_components = 2, num_dim = 6,
                   reduction_method = 'tSNE', verbose = T)
cds <- clusterCells(cds, num_clusters = 4)

#Plot differentially expressed genes in pseudotime

cds_myo <- estimateDispersions(cds)
diff_test_res <- differentialGeneTest(cds_myo[expressed_genes,],fullModelFormulaStr = '~Cluster', cores = 10)
ordering_genes <- row.names (subset(diff_test_res, qval < 0.01))
cds_myo <- setOrderingFilter(cds_myo, ordering_genes)
plot_ordering_genes(cds_myo)
cds_myo <- reduceDimension(
  cds_myo,
  max_components = 2,
  method = 'DDRTree'
)
cds_myo <- orderCells(cds_myo)
p = plot_genes_in_pseudotime(cds_myo)

Кто-нибудь, кто знаком с Monocle, знает, как я могу ускорить его?

Большое спасибо.

...