monocle single cell differential expression: error message for HSMM <- estimateDispersions(HSMM) command
0
0
Entering edit mode
2.3 years ago

Hi,

I'm trying to perform single cell differential gene expression using a public dataset.

I'm working through this monocle workflow: https://bioconductor.statistik.tu-dortmund.de/packages/3.5/bioc/vignettes/monocle/inst/doc/monocle-vignette.pdf.

These are the commands I've used:

library(Matrix)
mat <- Matrix::readMM("~/Downloads/GSM4952363_OS_1_matrix.mtx.gz")
features <- read.delim("~/Downloads/GSM4952363_OS_1_features.tsv.gz",
                        header=FALSE)
barcodes <- read.delim("~/Downloads/GSM4952363_OS_1_barcodes.tsv.gz",
                        header=FALSE)
library(monocle)
colnames(features)[2] <- "gene_short_name"

pd <- new("AnnotatedDataFrame", data = barcodes)
 fd <- new("AnnotatedDataFrame", data = features)

HSMM <- newCellDataSet(as(mat, "sparseMatrix"),
                phenoData = pd,
                featureData = fd,
                lowerDetectionLimit = 0.5,
                expressionFamily = negbinomial.size())
HSMM <- estimateSizeFactors(HSMM)

However I get the following error message for this command: HSMM <- estimateDispersions(HSMM)

Error in h(simpleError(msg, call)) : 
  error in evaluating the argument 'x' in selecting a method for function 'rowMeans': vector memory exhausted (limit reached?)
In addition: Warning messages:
1: `group_by_()` was deprecated in dplyr 0.7.0.
Please use `group_by()` instead.
See vignette('programming') for more help
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated. 
2: `select_()` was deprecated in dplyr 0.7.0.
Please use `select()` instead.
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.

I also get this error message for HSMM <- estimateDispersions(HSMM):

Error in h(simpleError(msg, call)) :
  error in evaluating the argument 'x' in selecting a method for function 'rowMeans': vector memory exhausted (limit reached?)

Does anyone know how I might correct this?

Thank you

single-cell monocle • 1.8k views
ADD COMMENT
0
Entering edit mode

Hello , I encountered the same problem, how did you solve it in the end?

ADD REPLY
0
Entering edit mode

You need to increase RAM - look for a way to give R more RAM (see this post for example: https://stackoverflow.com/a/1395342/1394178) or seek a machine with higher memory capacity - a node on an HPC or a compute instance on the cloud.

ADD REPLY
0
Entering edit mode

Hello Ram, Thank you for your reply

my error is that there is a problem with dplyr: my dplyr version is 1.1.2 but I could not install dplyr=0.5.0 or 0.7.0

Warning messages: 1: group_by_() was deprecated in dplyr 0.7.0. Please use group_by() instead. See vignette('programming') for more help The deprecated feature was likely used in the monocle package. Please report the issue to the authors.

enter image description here

ADD REPLY
0
Entering edit mode

Try creating a new conda environment using miniconda, and install the required version of dplyr in that env.

ADD REPLY
0
Entering edit mode

My error is that there is a problem with dplyr my dplyr version is 1.1.2 butI can't install dplyr v0.5.0 or v0.7.0 successfully=0.5.0 or 0.7.0

ADD REPLY
0
Entering edit mode

enter image description here

ADD REPLY
0
Entering edit mode

those seem like warnings rather than errors

ADD REPLY

Login before adding your answer.

Traffic: 2196 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6