diff --git a/example/input/cluster.json b/example/input/cluster.json index 606cba7f5f914d3b3f1b20ab56d8e3bc97384b40..9f20f01fcb755c4a4130519618e61dcb2203bada 100644 --- a/example/input/cluster.json +++ b/example/input/cluster.json @@ -4,7 +4,6 @@ "group": "zaugg", "nCPUs": "{threads}", "memory": 20000, - "nodes": "avx2", "maxTime": "10:00:00", "qos": "normal", "name": "atac.{rule}.", diff --git a/example/templates/cluster.json b/example/templates/cluster.json index 37531c1add89f9b3c507f5c4d7dfbe6d0f0ee2d8..5f4bae461d907193905bc23b5909efc603b2caeb 100644 --- a/example/templates/cluster.json +++ b/example/templates/cluster.json @@ -4,7 +4,6 @@ "group": "zaugg", "nCPUs": "{threads}", "memory": 20000, - "nodes": "avx2", "maxTime": "10:00:00", "qos": "normal", "name": "atac.{rule}.", diff --git a/src/R/aut_stats.R b/src/R/aut_stats.R index 189c6b46d1e551724dd9b634a69e3973db8de8ee..be6bc6157ab7ca06346a574ae9613c253a4e7d8c 100755 --- a/src/R/aut_stats.R +++ b/src/R/aut_stats.R @@ -167,7 +167,7 @@ for (sampleNameCur in par.l$sampleNames) { # 3. Alignment #Ivan bug remove * from .s.bam$ file = createFileList(dir_alignment, paste0(sampleNameCur, par.l$fileStatsPattern), verbose = FALSE) - file = file[which(grepl(paste0("/", sampleNameCur,".s.bam"), file))] + file = file[which(grepl(paste0("/", sampleNameCur,".s.bam"), file, fixed = TRUE))] if (length(file) != 1) { errorMessage = paste0("Expecting one file in the directory ", dir_alignment, " that matches ", paste0(sampleNameCur, par.l$fileStatsPattern), ", but found ", length(file), ":", paste0(file, collapse = ",")) @@ -185,7 +185,7 @@ for (sampleNameCur in par.l$sampleNames) { # 4. Postalign chrM file = createFileList(dir_rmChrm, filePatternSample, verbose = FALSE) - file = file[which(grepl(paste0("/", sampleNameCur,".", par.l$fileStatsPattern), file))] + file = file[which(grepl(paste0("/", sampleNameCur, ".cleaned"), file, fixed = TRUE))] if (length(file) != 1) { errorMessage = paste0("Expecting one file in the directory ", dir_rmChrm, " that matches ", filePatternSample, ", but found ", length(file), ":", paste0(file, collapse = ",")) flog.error(errorMessage) @@ -198,7 +198,7 @@ for (sampleNameCur in par.l$sampleNames) { # 5. Postalign rmDUP file = createFileList(dir_rmDUP, filePatternSample, verbose = FALSE) - file = file[which(grepl(paste0("/", sampleNameCur,".", par.l$fileStatsPattern), file))] + file = file[which(grepl(paste0("/", sampleNameCur,".cleaned"), file, fixed = TRUE))] if (length(file) != 1) { errorMessage = paste0("Expecting one file in the directory ", dir_rmDUP, " that matches ", filePatternSample, ", but found ", length(file), ":", paste0(file, collapse = ",")) @@ -213,7 +213,7 @@ for (sampleNameCur in par.l$sampleNames) { # 6. Postalign MAPQ file = createFileList(dir_MAPQ, filePatternSample, verbose = FALSE) - file = file[which(grepl(paste0("/", sampleNameCur,".", par.l$fileStatsPattern), file))] + file = file[which(grepl(paste0("/", sampleNameCur,".cleaned"), file, fixed = TRUE))] if (length(file) != 1) { errorMessage = paste0("Expecting one file in the directory ", dir_MAPQ, " that matches ", filePatternSample, ", but found ", length(file), ":", paste0(file, collapse = ",")) flog.error(errorMessage) @@ -233,7 +233,7 @@ for (sampleNameCur in par.l$sampleNames) { # Library complexity numbers file = createFileList(dir_rmDUP, paste0(sampleNameCur,".", par.l$fileLibraryStatsPattern), verbose = FALSE) - file = file[which(grepl(paste0("/", sampleNameCur,".", par.l$fileLibraryStatsPattern), file))] + file = file[which(grepl(paste0("/", sampleNameCur,".cleaned"), file, fixed = TRUE))] if (length(file) != 1) { errorMessage = paste0("Expecting one file in the directory ", dir_rmDUP, " that matches ", paste0(sampleNameCur,".", par.l$fileLibraryStatsPattern), ", but found ", length(file), ":", paste0(file, collapse = ",")) flog.error(errorMessage) diff --git a/src/R/functions.R b/src/R/functions.R index 4155623872f81b40c4a02e9e5da18eadb6d53ff5..9d2cec6c56a2153b77404920650c935ec9a67918 100755 --- a/src/R/functions.R +++ b/src/R/functions.R @@ -182,7 +182,7 @@ checkAndLoadPackages <- function(packages, verbose = TRUE) { } -.checkAndInstallMissingPackages <- function(packages.vec, verbose = TRUE) { +.checkAndInstallMissingPackages <- function(packages.vec, verbose = FALSE) { # if (verbose) cat("Trying to automatically install missing packages. If this fails, install them manually...\n") @@ -350,7 +350,7 @@ createFileList <- function(directory, pattern, recursive = FALSE, ignoreCase = F #' @import checkmate -generateDefaultReadFlags <- function(pairedEndReads = TRUE, verbose = TRUE) { +generateDefaultReadFlags <- function(pairedEndReads = TRUE, verbose = FALSE) { assertFlag(pairedEndReads) assertFlag(verbose) @@ -525,7 +525,7 @@ checkEnrichmentOverTSS <- function(annotationFile, BAMFile, thresholdWithinTSS = gr = c(gr.list[[1]], gr.list[[2]]) gr <- sort(sortSeqlevels(gr)) - flog.info(paste0(" Found", length(gr), " TSS")) + flog.info(paste0(" Found ", length(gr), " TSS")) # If TSS are too close together, the calculation might be biased. Count only reads that uniquely map to one TSS # Exclude TSS that are to close together, delete TSs so that all TSS have at least a distance of 2*thresholdWithinTSS diff --git a/src/Snakefile b/src/Snakefile index dba0fbcb65d23f93b0d0c2cae2f2c9cf07f5d679..5fa09fd8d555762b429c3cdf9d5e37866a6b3729 100755 --- a/src/Snakefile +++ b/src/Snakefile @@ -429,6 +429,9 @@ if not (bamCoverage_normOption == "RPKM") and not (bamCoverage_normOption == "CP ################### ################### +if annotatePeaks and not config["align"]["assemblyVersion"] in ('hg19', 'hg38', 'mm9', 'mm10'): + raise AssertionError("Cannot annotate peaks when the genome assembly is neither human nor mouse. Please set annotatePeaks: false in the config file") + peakTypeEncode = ["Encode.broad", "Encode.gapped", "Encode.narrow"] peakTypesAll = ["stringent", "nonStringent"] + peakTypeEncode @@ -1757,7 +1760,9 @@ def getGenomeTypeMacs2(assemblyVersion): elif assemblyVersion == "hg19" or assemblyVersion == "hg38": genomeType = "hs" else: - raise NotImplementedError("Genome assembly version " + assemblyVersion + " not yet implemented for the -g parameter in MACS2.") + # Use number instead if not directly supported by MACS2 + genomeType = str(effectiveGenomeSize) + # raise NotImplementedError("Genome assembly version " + assemblyVersion + " not yet implemented for the -g parameter in MACS2.") return genomeType