I have this package installed and I am also getting this error
Apologies for so many questions - I am getting the following error with dba.count(). Notably dba.count() was working previously when I had 11 separate samples, and the only difference in this run is that I aggregated the 11 samples into 2 meta-samples (one for wildtype, one for mutant) with samtools merge, called peaks on the merged BAM files, and adjusted the sample sheet accordingly.
> WS.merge <- dba.count(WS.merge, filter=0, summits=FALSE)
Error: Error processing one or more read files. Check warnings().
In addition: Warning messages:
1: In mclapply(arglist, fn, ..., mc.preschedule = TRUE, mc.allow.recursive = TRUE) :
all scheduled cores encountered errors in user code
2: error in evaluating the argument 'x' in selecting a method for function 'assay': BiocParallel errors
3: error in evaluating the argument 'x' in selecting a method for function 'assay': BiocParallel errors
4: error in evaluating the argument 'x' in selecting a method for function 'assay': BiocParallel errors
5: error in evaluating the argument 'x' in selecting a method for function 'assay': BiocParallel errors
Searching around, I came across this post with a similar error: https://support.bioconductor.org/p/9141824/. However, when I try the parameter bParallel=FALSE, this error is then returned. Not sure why the .bam125; I double-checked my sample sheet and the 125 is definitely not there. Would really appreciate any advice!
> WS.merge <- dba.count(WS.merge, summits=FALSE, bParallel=FALSE)
Sample: reads/merge-WT_IP_GRCm38_chr.bam125
Reads will be counted as Paired-end.
'BiocParallel' did not register default BiocParallelParam:
missing value where TRUE/FALSE needed
'BiocParallel' did not register default BiocParallelParam:
missing value where TRUE/FALSE needed
Error in h(simpleError(msg, call)) :
error in evaluating the argument 'x' in selecting a method for function 'assay': error in evaluating the argument 'BPPARAM' in selecting a method for function 'bplapply': attempt to select less than one element in get1index
3 answers
I think you have to install and use BiocParallel package as explained here: ChIPQC BiocParallel errors
I have submitted fixes for DiffBind(and ChIPQC) to make the use of BiocParallel more explicit.
These fixes will be in effect from version DiffBind_3.6.2 and ChIPQC_1.32.1 in the main Release branch.
I still experience similar errors on two different systems.
sessionInfo()
R version 4.2.1 (2022-06-23)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 22.04 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.10.0
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats4 stats graphics grDevices utils datasets methods
[8] base
other attached packages:
[1] BiocParallel_1.30.4 DiffBind_3.6.5
[3] SummarizedExperiment_1.26.1 Biobase_2.56.0
[5] MatrixGenerics_1.8.1 matrixStats_0.62.0
[7] GenomicRanges_1.48.0 GenomeInfoDb_1.32.2
[9] IRanges_2.30.0 S4Vectors_0.34.0
[11] BiocGenerics_0.42.0
Is this happening in the current version (DiffBind_3.8.3)?
If so, what are the error messages when you try it with bParallel=FALSE?
Log in to answer this question.
Are you using current versions (R 4.2 / Bioconductor 3.15 / DiffBind 3.6.1)? Some issues with
BiocParallelwere addressed in the latest release.If you are using the most recent versions, it would help for me to see the whole script from loading the DBA object to calling
dba.count().