This is a test version of Biostars. For the public version, visit https://www.biostars.org.
DiffBind dba.count() BiocParallel 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
diffbind chip-seq

Are you using current versions (R 4.2 / Bioconductor 3.15 / DiffBind 3.6.1)? Some issues with BiocParallel were 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().

3 answers

I think you have to install and use BiocParallel package as explained here: ChIPQC BiocParallel errors

I have this package installed and I am also getting this error

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.