The script I had working 2 years ago for DiffBind no longer works. Dba.count seems to reject files it accepted before.
sets_counted_g=dba.count(sets_g) Computing summits... Sample: H:/(filepath truncated)/file_sorted.bam125 Re-centering peaks... Indexing H:/(filepath truncated)/file_sorted.bam [E::hts_idx_push] NO_COOR reads not in a single block at the end 2 -1 Error in FUN(X[[i]], ...) : failed to build index file: H:/CH_DATA/ATAC/2020_Second_postprocessing/bam/PoolCH-7_sorted.bam In addition: Warning message: Parallel execution unavailable: executing serially.
I thought I'd sorted this file by position, but I went ahead and re-sorted it using
samtools sort file_sorted.bam -o file_sorted_byposition.bam
The result still fails to count:
sets_counted_g=dba.count(sets_g) Computing summits... Sample: H:/(filepath truncated)/file_sorted_byposition.bam125 Re-centering peaks... Error in colnames(result)[4:ncol(result)] <- colnames(classes) : replacement has length zero In addition: Warning message: Parallel execution unavailable: executing serially
Tagged this with both samtools and Diffbind because it looks like a samtools problem, but the script worked as-is 2 years ago for DiffBind. So maybe DiffBind is involved. Picard ValidateSamFile returned no errors on the file.