0

我有一个维度为 33694*10000 的稀疏矩阵,我已将其转换为数据框,然后强制转换为矩阵。我正在使用 DESCEND 和 SOUP(单细胞数据的半软聚类)从矩阵中过滤掉高度可变的基因,然后执行聚类。

SOUP 中的“selectGenes”函数需要很长时间才能完成,但更早之前需要两天时间才能完成相同的任务(不同的矩阵但相同的维度)。我检查了我的矩阵是否有任何缺失值或 NA,但矩阵似乎很好。或者我可能需要在我的矩阵中查找其他类型的错误,因为测试数据运行良好并且需要通常的时间来完成运行。

我不知道如何解决这个问题,因为我看不到任何错误,我的屏幕看起来像这样。

select.out_SP1_mat = selectGenes(SP1_mat_transposed, type="count", n.cores=25)

> select.out_SP1_mat = selectGenes(SP1_mat_transposed, type="count", n.cores=25)
Removed 32820 genes that are expressed in less than 10 cells.
Selecting from remaining 874 genes...
SPCA selection...
DESCEND selection...
[1] "DESCEND starts deconvolving distribution of 874 genes!"
[1] "Estimating the time to finish this task ..."

这是 SOUP 教程 pdf 的链接和函数“selectGenes”的代码:

https://github.com/lingxuez/SOUPR/blob/master/vignettes/SOUP-vignette.pdf

https://rdrr.io/github/lingxuez/SOUP/src/R/geneSelect.R

https://rdrr.io/github/jingshuw/descend/src/R/descend.R

谁能建议我如何解决或解决此问题?我在具有 64 个内核和 1 Tb RAM 的集群上运行它。

这是我在运行提到的函数之前所做的:

library(SOUP)
library(ggplot2)
> SP1 <-read.table(file = "/home/mverma/SINGLE_CELL_data/spleen/raw_gene_bc_matrices/spleen_subset_test/analysis/SP1_matrix.tsv", sep = '\t', header = TRUE)
> SP1_mat <- as.matrix(x = SP1)
> dim(SP1_mat)
[1] 33694 10000
> SP1_mat_transposed <- t(SP1_mat)
> dim(SP1_mat_transposed)
[1] 10000 33694

> log.expr_SP1_mat= log2(scaleRowSums(SP1_mat_transposed)*(10^6) + 1)
> dim(log.expr_SP1_mat)
[1] 10000 33694

> select.out_SP1_mat = selectGenes(SP1_mat_transposed, type="count", n.cores=25)
Removed 32820 genes that are expressed in less than 10 cells.
Selecting from remaining 874 genes...
SPCA selection...
DESCEND selection...
[1] "DESCEND starts deconvolving distribution of 874 genes!"
[1] "Estimating the time to finish this task ..."
4

0 回答 0