diff --git a/3_combine.pl b/3_combine.pl index c0641c0..19cebad 100755 --- a/3_combine.pl +++ b/3_combine.pl @@ -106,8 +106,13 @@ print "[3] Done getting junction counts\n"; +# Generate files for expression analysis +system "$path/R/combine_reads_expression.R -e $evTab -t $treatTab -d fwd -c $cores $outDir" and + die "[3] Error when combining reads for expression\n"; +print "[3] Done generating tables for expression\n"; + + # Get PSI, RPM, pseudo counts etc. per well -mkdir $outDir."/welldata" unless (-e $outDir."/welldata"); system "$path/R/compute_psi_rpm.R -c $cores $outDir -e $evTab" and die "[3] Error when calculating PSI etc.\n"; print "[3] Done computing PSI\n"; diff --git a/R/combine_reads_expression.R b/R/combine_reads_expression.R new file mode 100644 index 0000000..e00e870 --- /dev/null +++ b/R/combine_reads_expression.R @@ -0,0 +1,230 @@ +#!/usr/bin/env Rscript +### Combine read counts and RPM from raw counts per well for SARS-CoV-2 project +### U. Braunschweig 2020 + + +libMissing <- !require(optparse, quietly=T) +if (libMissing) {stop("Failed to load R package 'optparse'")} + +#### Options +args <- commandArgs(TRUE) + +option.list <- list( + make_option(c("-e", "--eventTab"), type="character", + help="CSV file describing the amplicons - see README"), + make_option(c("-t", "--treatTab"), type="character", + help="CSV file describing the samples - see README"), + make_option(c("-d", "--direction"), default="both", + help="Which reads to use. 'fwd' for forward/R1, 'rev' for reverse/R1, or 'both for mean [%default]"), + make_option(c("-i", "--imbal"), default=1.5, + help="Maximum imbalance between fwd and rev reads before a warning is printed [%default]"), + make_option(c("-b", "--imbalCts"), default=20, + help="Minimum reads (average of fwd and rev) to do imbalance test [%default]"), + make_option(c("-c", "--cores"), default=1, + help="Number of CPUs [%default]") + +) +parser <- OptionParser(option_list=option.list, + usage="usage: %prog [options] OUTDIR", + description="Combine raw reads from invidual samples for expression analysis") +opt <- parse_args(parser, args=args, positional_arguments=1) + +inDir <- sub("/*$","", opt$args[1]) + +libMissing <- !require(parallel, quietly=T) +if (libMissing) {stop("Failed to load R package 'parallel'")} + + +### Function defs + +combineCounts <- function(inDir, treat, junc, cores=1) { +### Reads individual raw well counts from the 'counts' folder and combine into one table + + files <- list.files(file.path(inDir, "counts"), pattern=paste(treat$Batch[1], ".*W.*.counts.tab", sep=""), full.names=T) + fileBC <- sub(".*(W[0-9]+).*", "\\1", files) + + if (length(files) == 0) {stop("Raw well data not found")} + if (!(all(treat$Barcode %in% fileBC))) {stop("Not all raw well data files were found")} + if (!all(fileBC == treat$Barcode)) {stop("Mismatch betwetween treatment table and found raw well data files")} + + ## Get total reads + mapFilesF <- dir(file.path(inDir, "map"), pattern=".*(R1|Fwd|fwd|Fw|fw)\\.stats\\.txt") + mapFilesR <- dir(file.path(inDir, "map"), pattern=".*(Rw|Rev|rev|Rv|rv)\\.stats\\.txt") + statsF <- lapply(file.path(inDir, "map", mapFilesF), read.delim, header=F) + statsR <- lapply(file.path(inDir, "map", mapFilesR), read.delim, header=F) + statsF <- do.call("rbind", statsF) + statsR <- do.call("rbind", statsR) + + bcF <- sub(".+(W[0-9]+).*", "\\1", statsF[,1]) + bcR <- sub(".+(W[0-9]+).*", "\\1", statsR[,1]) + if (!all(bcF == bcR)) {stop("Mismatch between fwd and rev read stats files")} + if (!all(treat$Barcode %in% bcF)) {stop("Not all expected mapping stats files were found")} + names(statsF) <- names(statsR) <- c("file","unmapped","total","mappability") + rownames(statsF) <- rownames(statsR) <- sub("[^_]+_(.+)_[^_]+", "\\1", statsF[,1]) + statsF <- statsF[match(treat$Barcode, bcF),] + statsR <- statsF[match(treat$Barcode, bcR),] + + input <- mclapply(files, read.csv, sep="\t", header=F, mc.cores=cores) + counts <- sapply(input, "[[", 4) + inputLabel <- paste(input[[1]][,1], input[[1]][,2], sep="_") + geneCounts <- aggregate(counts, by=list(Gene=paste(input[[1]][,1], substr(input[[1]][,2], 1, 2), sep=".")), FUN=sum) + + if (any(!is.na(junc$Label))) { + collapseJunc <- junc[!is.na(junc$Label),] + juncF <- strsplit(collapseJunc$JunctionsFw, split=",") + juncR <- strsplit(collapseJunc$JunctionsRv, split=",") + + collapseLabel <- rep(NA, nrow(input[[1]])) + for (i in 1:nrow(collapseJunc)) { + collapseLabel[input[[1]][,1] == collapseJunc$Gene[i] & input[[1]][,2] %in% juncF[[i]]] <- + paste0(collapseJunc$Gene[i], ".fw.", collapseJunc$Label[i]) + collapseLabel[input[[1]][,1] == collapseJunc$Gene[i] & input[[1]][,2] %in% juncR[[i]]] <- + paste0(collapseJunc$Gene[i], ".rv.", collapseJunc$Label[i]) + } + eventCounts <- aggregate(counts, by=list(Event=collapseLabel), FUN=sum) + eventCounts <- data.frame(Gene=sub("(.*)\\.[^.]+", "\\1", eventCounts$Event), eventCounts) + subtractCounts <- aggregate(eventCounts[,-c(1,2)], by=list(Gene=eventCounts$Gene), FUN=sum) + + out <- geneCounts[!(geneCounts$Gene %in% subtractCounts$Gene),] + tmp <- geneCounts[match(subtractCounts$Gene, geneCounts$Gene),] + tmp <- data.frame(Gene=paste0(subtractCounts$Gene, ".RNA"), + as.matrix(tmp[,-1]) - as.matrix(subtractCounts[,-1]) + ) + out <- rbind(out, + tmp, + data.frame(Gene=sub("A1","GEN",eventCounts$Event), eventCounts[,-c(1,2)]) + ) + out <- out[order(out$Gene),] + } else { + out <- geneCounts + } + outNames <- as.character(out$Gene) + out <- t(out[,-1]) + colnames(out) <- outNames + rownames(out) <- treat$Barcode + + out <- cbind(out, + totReads.fw = statsF[,"total"], + totReads.rv = statsR[,"total"], + mappedReads.fw = statsF[,"total"] - statsF["unmapped"], + mappedReads.rv = statsR[,"total"] - statsR["unmapped"], + mappability.fw = round(100 * (1 - (statsF[,"unmapped"] / statsF[,"total"])), 2), + mappability.rv = round(100 * (1 - (statsR[,"unmapped"] / statsR[,"total"])), 2) + ) + + out +} + +avgFRcounts <- function(x, junc, direction=c("both","fwd","rev")[1], imbal=1.2, imbalCts=10) { +### Average forward and reverse read counts, or select one; Also check for imbalance more than 'imbal' + eventsFw <- sort(grep(".*\\.fw", colnames(x), value=T)) + fwInd <- sapply(eventsFw, FUN=function(y) {grep(y, colnames(x))}) + rvInd <- sapply(sub("\\.fw", ".rv", eventsFw), FUN=function(y) {grep(y, colnames(x))}) + + ## Check balance of fwd and rev + bal <- abs(log(10 + x[,fwInd]) / log(10 + x[,rvInd])) + meanFR <- (x[,fwInd] + x[,rvInd]) / 2 + warn <- (bal < 1 - log(imbal) | bal > 1 + log(imbal)) & meanFR > imbalCts + if (any(as.vector(warn))) { + for (i in which(apply(warn, MAR=2, any))) { + warning(length(which(warn[,i])), " imbalanced samples for ", colnames(meanFR)[i]) + } + } + + if (direction == "fwd") { + out <- x[,fwInd] + colnames(out) <- sub("\\.fw", "", colnames(out)) + } + if (direction == "rev") { + out <- x[,rvInd] + colnames(out) <- sub("\\.rv", "", colnames(out)) + } + if (direction == "both") { + if (is.list(fwInd) || is.list(rvInd)) { + stop("Forward and reverse read columns in raw counts file could not be matched for all events") + } + + out <- round(meanFR) + colnames(out) <- sub("\\.fw", "", colnames(out)) + } + + out +} + +main <- function(inDir, treat, junc, direction=c("both","fwd","rev")[1], cores=1, imbal=1.2, imbalCts=10) { +### Collect mapped read numbers from individual samples and creat tables with +### raw fwd and rev counts, average counts (if selected), and RPM + + rawCounts <- combineCounts(inDir, treat, junc, cores=cores) + counts <- avgFRcounts(rawCounts, direction=direction, imbal=imbal, + junc = junc) + tmp <- counts[,-which(colnames(counts) %in% c("mappability","totReads"))] + rpm <- round(1000000 * tmp / rowSums(tmp), 1) + + treatCols <- unlist(sapply(c("ID","Barcode","Batch","Replicate","Treatment","Type","Status"), + FUN=grep, x=names(treat))) + treat <- treat[,treatCols] + + if (is.null(treat$Batch)) { + outName <- "" + } else { + outName <- paste0(treat$Batch[1], "_") + } + dirTag <- paste0("_", direction) + + outDir <- file.path(inDir, "expression") + if (!dir.exists(outDir)) {dir.create(outDir, recursive=TRUE)} + + write.csv(data.frame(treat, rawCounts, check.names=F), + file=file.path(outDir, paste0(outName, "CountsRaw.csv"))) + write.csv(data.frame(treat, counts, check.names=F), + file=file.path(outDir, paste0(outName, "Counts", dirTag, ".csv")), row.names=F) + write.csv(data.frame(treat, rpm, check.names=F), + file=file.path(outDir, paste0(outName, "RPM", dirTag, ".csv")), row.names=F) + + cat("Read and RPM files saved in", outDir, "\n") +} + + + + + +### Body + +## Check input +if (length(opt$args) != 1) + stop(print_help(parser)) +if (is.null(opt$options$eventTab)) + stop("eventTab must be provided") +if (is.null(opt$options$treatTab)) + stop("treatTab must be provided") +if (!(opt$options$direction %in% c("both","fwd","rev"))) + stop("direction must be one of 'both', 'fwd', or 'rev'") + +## Load tables +treat <- read.delim(opt$options$treatTab) +treat <- treat[order(treat$Barcode),] + +junc <- read.delim(opt$options$eventTab, as.is=T) + + +## Body +main(inDir, treat, junc, + direction = opt$options$direction, + cores = opt$options$cores, + imbal = opt$options$imbal, + imbalCts = opt$options$imbal + ) + +#opt <- list( +# options = list( +# treatTab = "~/bin/SPARpipe/examples/COVID-19/SampleTable.tab", +# eventTab = "~/bin/SPARpipe/examples/COVID-19/amplicons/EventJunctions.tab", +# direction = "fwd", +# imbal = 1.5, +# imbalCts = 20, +# cores = 1 +# ), +# args = "~/bin/SPARpipe/examples/COVID-19/test_align/" +#) + diff --git a/examples/COVID-19/PoC_ReadCount_Table.csv b/examples/COVID-19/PoC_ReadCount_Table.csv new file mode 100644 index 0000000..b5f63be --- /dev/null +++ b/examples/COVID-19/PoC_ReadCount_Table.csv @@ -0,0 +1,27 @@ +fastq-file/sample name,PPIB,Ngene,Egene,RdRP,Sgene.RBD,Sgene.Poly,mapping% +W609_HEK293T-rep1,49152,0,1,1,3,2,90.85 +W621_HEK293T-rep2,55368,5,0,2,2,0,96.94 +W633_LTRI-20,23254,3,0,2,1,0,74.53 +W645_LTRI-13,7400,1,0,0,1,1,77.05 +W657_LTRI-35,11530,24023,3082,9911,15318,19653,98.47 +W669_LTRI-36,11876,16764,1670,5815,8680,12000,98.36 +W586_LTRI-32,49078,1752,146,222,1844,2198,97.57 +W598_LTRI-28,5296,18336,3057,5551,6508,9692,90.48 +W610_LTRI-27,0,8258,156,1392,4666,6028,96.22 +W622_LTRI-33,24556,7527,502,1230,3654,1032,97.71 +W634_LTRI-21,38302,7424,246,900,2002,4078,96.76 +W646_LTRI-22,906,34718,3520,9420,14792,22242,97.48 +W658_LTRI-34,1621,27632,3038,7954,13114,18448,98.09 +W670_LTRI-24,2158,19434,2070,5063,9800,13128,98.35 +W587_LTRI-26,279,31589,3312,8568,15040,22452,98.61 +W599_LTRI-29,134,31968,4871,11048,15924,25968,98.52 +W611_LTRI-30,507,27292,3476,9857,14336,20062,98.45 +W623_LTRI-23,264,19518,3022,5348,11004,15160,98.48 +W635_LTRI-31,20,17220,4682,8928,14429,19388,98.49 +W647_LTRI-25,24,16955,5802,12460,15156,20241,98.52 +W659_LTRI-18,3186,12088,3084,6093,8923,11260,98.25 +W671_Twist2:-dil1,3,15862,4494,9988,14120,18706,97.43 +W588_Twist2-dil2,1,14780,2266,6610,9346,14248,97.2 +W600_Twist2-dil3,2,11194,4024,7262,8932,10612,96.77 +W612_Twist2-dil4,1,9354,830,2240,5562,10107,93.83 +W624_Twist2-dil5,0,0,202,0,797,4300,49.6 \ No newline at end of file diff --git a/examples/COVID-19/PoC_fastq_files.zip b/examples/COVID-19/PoC_fastq_files.zip new file mode 100644 index 0000000..5263a5d Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files.zip differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..1072643 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..7b2d52e Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W586_S169.LTRI-32_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..85cca86 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..8b5fe0c Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W587_S177.LTRI-26_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..142b6a8 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..f7ab329 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W588_S185.Twist2:5000_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..75881c0 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..d5b85c9 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W598_S170.LTRI-28_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..d0969e2 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..d7608c6 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W599_S178.LTRI-29_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..16727da Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..91195f5 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W600_S186.Twist2:500_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..45b01b5 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..72b4739 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W609_S163.HEK293T-Qiagen_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..048f152 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..bdc9f1b Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W610_S171.LTRI-27_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..729a7a6 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..86bcc6b Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W611_S179.LTRI-30_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..9297fe6 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..15351ee Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W612_S187.Twist2:50_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..808fa0b Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..2b66306 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W621_S164.HEK293T-Norgen_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..cd92963 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..c60db21 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W622_S172.LTRI-33_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..9d7a289 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..82c61c2 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W623_S180.LTRI-23_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..c56940a Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..1ab24c6 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W624_S188.Twist2:5_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..075eb55 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..920a70c Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W633_S165.LTRI-20_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..4f04857 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..cc11c4b Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W634_S173.LTRI-21_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..241bf2f Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..f072739 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W635_S181.LTRI-31_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..48e00f5 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..b365e12 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W645_S166.LTRI-13_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..c20b0e2 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..ff1dc7b Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W646_S174.LTRI-22_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..41bf1dc Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..5a51544 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W647_S182.LTRI-25_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..d2b9c5c Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..59c3aae Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W657_S167.LTRI-35_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..94eeea0 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..e47e5e2 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W658_S175.LTRI-34_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..e74f20d Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..d197a21 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W659_S183.LTRI-18_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..e6bb7a1 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..c6783e5 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W669_S168.LTRI-36_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..34e7225 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..6834cbf Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W670_S176.LTRI-24_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Fwd.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Fwd.fq.gz new file mode 100644 index 0000000..e4b36fa Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Fwd.fq.gz differ diff --git a/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Rev.fq.gz b/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Rev.fq.gz new file mode 100644 index 0000000..b7d6742 Binary files /dev/null and b/examples/COVID-19/PoC_fastq_files/200423_W671_S184.Twist2:50000_MIXE_30x_Rev.fq.gz differ diff --git a/examples/COVID-19/SampleTable.tab b/examples/COVID-19/SampleTable.tab new file mode 100644 index 0000000..c1128b4 --- /dev/null +++ b/examples/COVID-19/SampleTable.tab @@ -0,0 +1,27 @@ +ID Replicate Batch Barcode Treatment +S163 R1 200423 W609 HEK293T-Qiagen_MIXE_30x +S164 R1 200423 W621 HEK293T-Norgen_MIXE_30x +S165 R1 200423 W633 LTRI-20_MIXE_30x +S166 R1 200423 W645 LTRI-13_MIXE_30x +S167 R1 200423 W657 LTRI-35_MIXE_30x +S168 R1 200423 W669 LTRI-36_MIXE_30x +S169 R1 200423 W586 LTRI-32_MIXE_30x +S170 R1 200423 W598 LTRI-28_MIXE_30x +S171 R1 200423 W610 LTRI-27_MIXE_30x +S172 R1 200423 W622 LTRI-33_MIXE_30x +S173 R1 200423 W634 LTRI-21_MIXE_30x +S174 R1 200423 W646 LTRI-22_MIXE_30x +S175 R1 200423 W658 LTRI-34_MIXE_30x +S176 R1 200423 W670 LTRI-24_MIXE_30x +S177 R1 200423 W587 LTRI-26_MIXE_30x +S178 R1 200423 W599 LTRI-29_MIXE_30x +S179 R1 200423 W611 LTRI-30_MIXE_30x +S180 R1 200423 W623 LTRI-23_MIXE_30x +S181 R1 200423 W635 LTRI-31_MIXE_30x +S182 R1 200423 W647 LTRI-25_MIXE_30x +S183 R1 200423 W659 LTRI-18_MIXE_30x +S184 R1 200423 W671 Twist2:50000_MIXE_30x +S185 R1 200423 W588 Twist2:5000_MIXE_30x +S186 R1 200423 W600 Twist2:500_MIXE_30x +S187 R1 200423 W612 Twist2:50_MIXE_30x +S188 R1 200423 W624 Twist2:5_MIXE_30x diff --git a/examples/COVID-19/ToDo b/examples/COVID-19/ToDo new file mode 100644 index 0000000..8ebe1b4 --- /dev/null +++ b/examples/COVID-19/ToDo @@ -0,0 +1,13 @@ +../../accessories/MakeJunctionsFASTA.R -e amplicons/JunctionLibraryElements_test200423.csv -p primers/PrimerChecking_SPARseq.optimized.COVD19_200423.csv -l 75 + +mkdir junctions/bowtie_indices +bowtie-build junctions/Junctions_fwd.fa junctions/bowtie_indices/Junctions_fwd +bowtie-build junctions/Junctions_rev.fa junctions/bowtie_indices/Junctions_rev + + +for f in fastq_files/200423_W*Fwd.fq.gz; do ../../2_align.pl --junc=amplicons/bowtie_indices/Junctions_fwd --outDir=test_align --trim3=1 --btopt="--best -n 3 -k 1 -m 1" ${f}; done +for f in fastq_files/200423_W*Rev.fq.gz; do ../../2_align.pl --junc=amplicons/bowtie_indices/Junctions_rev --outDir=test_align --trim3=1 --btopt="--best -n 3 -k 1 -m 1" ${f}; done + +../../3_combine.pl --juncBase=amplicons/Junctions --eventTab=amplicons/EventJunctions.tab --treatTab=SampleTable.tab test_align + +### Combine into one read table diff --git a/examples/COVID-19/amplicons/EventJunctions.tab b/examples/COVID-19/amplicons/EventJunctions.tab new file mode 100644 index 0000000..0503363 --- /dev/null +++ b/examples/COVID-19/amplicons/EventJunctions.tab @@ -0,0 +1,8 @@ +Gene Event Label Relative JunctionsFw JunctionsRv +004.PPIB NA NA NA fw1 rv1 +006.Ngene NA NA NA fw1 rv1 +008.Egene NA NA NA fw1 rv1 +010.RdRP NA NA NA fw1 rv1 +013.Sgene.RBD NA NA NA fw1 rv1 +014.Sgene.Poly NA NA NA fw1 rv1 +019.ACTB NA NA NA fw1 rv1 diff --git a/examples/COVID-19/amplicons/JunctionLibraryElements_test200423.csv b/examples/COVID-19/amplicons/JunctionLibraryElements_test200423.csv new file mode 100644 index 0000000..b0f4104 --- /dev/null +++ b/examples/COVID-19/amplicons/JunctionLibraryElements_test200423.csv @@ -0,0 +1,8 @@ +"gene","origin","event","structure","chrom","strand","C1.start","C1.end","C2.start","C2.end","C1.seq","C2.seq" +"004.PPIB","background","004.PPIP.ctrlM","C1-C2","chr15","-",64162852,64163155,64162041,64162154,"ACTATCCGGCGCCGAGCCGGAGGGGGGAAACGGcgcccgccgcccgcccggagcccgcgagcaaccccagtcccccccacccgcgcgTGGCGGCGCCGGCTCCCTAGCCACCGCGGCCCCACCCTCTTCCGGCCTCAGCTGTCCGGGCTGCTTTCGCCTCCGCCTGTGGATGCTGCGCCTCTCCGAACGCAACATGAAGGTGCTCCTTGCCGCCGCCCTCATCGCGGGGTCCGTCTTCTTCCTGCTGCTGCCGGGACCTTCTGCGGCCGATGAGAAGAAGAAGGGGCCCAAAGTCACCGTCAAG","GTGTATTTTGACCTACGAATTGGAGATGAAGATGTAGGCCGGGTGATCTTTGGTCTCTTCGGAAAGACTGTTCCAAAAACAGTGGATAATTTTGTGGCCTTAGCTACAGGAGAG" +"006.Ngene","foreground","006.Ngene.SPARseq1","C1-C2","NC_045512.2","+",28867,28938,28939,29010,"TCCAGGCAGCAGTAGGGGAACTTCTCCTGCTAGAATGGCTGGCAATGGCGGTGATGCTGCTCTTGCTTTGCT","GCTGCTTGACAGATTGAACCAGCTTGAGAGCAAAATGTCTGGTAAAGGCCAACAACAACAAGGCCAAACTGT" +"008.Egene","foreground","008.Egene.SPARseq1","C1-C2","NC_045512.2","+",26203,26346,26347,26418,"ACTAGCGTGCCTTTGTAAGCACAAGCTGATGAGTACGAACTTATGTACTCATTCGTTTCGGAAGAGACAGGTACGTTAATAGTTAATAGCGTACTTCTTTTTCTTGCTTTCGTGGTATTCTTGCTAGTTACACTAGCCATCCTT","ACTGCGCTTCGATTGTGTGCGTACTGCTGCAATATTGTTAACGTGAGTCTTGTAAAACCTTCTTTTTACGTT" +"010.RdRP","foreground","010.RdRP.SPARseq1","C1-C2","NC_045512.2","+",15406,15477,15478,15549,"GCTAATGAGTGTGCTCAAGTATTGAGTGAAATGGTCATGTGTGGCGGTTCACTATATGTTAAACCAGGTGGA","ACCTCATCAGGAGATGCCACAACTGCTTATGCTAATAGTGTTTTTAACATTTGTCAAGCTGTCACGGCCAAT" +"013.Sgene.RBD","foreground","013.Sgene.RBD.SPARseq1","C1-C2","NC_045512.2","+",22963,23034,23035,23106,"TATTTCAACTGAAATCTATCAGGCCGGTAGCACACCTTGTAATGGTGTTGAAGGTTTTAATTGTTACTTTCC","TTTACAATCATATGGTTTCCAACCCACTAATGGTGTTGGTTACCAACCATACAGAGTAGTAGTACTTTCTTT" +"014.Sgene.Poly","foreground","014.Sgene.Poly.SPARseq1","C1-C2","NC_045512.2","+",23539,23610,23611,23754,"ATATGAGTGTGACATACCCATTGGTGCAGGTATATGCGCTAGTTATCAGACTCAGACTAATTCTCCTCGGCG","GGCACGTAGTGTAGCTAGTCAATCCATCATTGCCTACACTATGTCACTTGGTGCAGAAAATTCAGTTGCTTACTCTAATAACTCTATTGCCATACCCACAAATTTTACTATTAGTGTTACCACAGAAATTCTACCAGTGTCTAT" +"019.ACTB","background","019.ACTB.ctrl.SPARseq2","C1-C2","chr7","-",5528281,5528719,5528004,5528185,"ATCATGTTTGAGACCTTCAACACCCCAGCCATGTACGTTGCTATCCAGGCTGTGCTATCCCTGTACGCCTCTGGCCGTACCACTGGCATCGTGATGGACTCCGGTGACGGGGTCACCCACACTGTGCCCATCTACGAGGGGTATGCCCTCCCCCATGCCATCCTGCGTCTGGACCTGGCTGGCCGGGACCTGACTGACTACCTCATGAAGATCCTCACCGAGCGCGGCTACAGCTTCACCACCACGGCCGAGCGGGAAATCGTGCGTGACATTAAGGAGAAGCTGTGCTACGTCGCCCTGGACTTCGAGCAAGAGATGGCCACGGCTGCTTCCAGCTCCTCCCTGGAGAAGAGCTACGAGCTGCCTGACGGCCAGGTCATCACCATTGGCAATGAGCGGTTCCGCTGCCCTGAGGCACTCTTCCAGCCTTCCTTCCTGG","GCATGGAGTCCTGTGGCATCCACGAAACTACCTTCAACTCCATCATGAAGTGTGACGTGGACATCCGCAAAGACCTGTACGCCAACACAGTGCTGTCTGGCGGCACCACCATGTACCCTGGCATTGCCGACAGGATGCAGAAGGAGATCACTGCCCTGGCACCCAGCACAATGAAGATCAAG" diff --git a/examples/COVID-19/amplicons/Junctions_amplicons.fa b/examples/COVID-19/amplicons/Junctions_amplicons.fa new file mode 100644 index 0000000..a1adff5 --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_amplicons.fa @@ -0,0 +1,14 @@ +>004.PPIB_C1C2 +TGCTGCTGCCGGGACCTTCTGCGGCCGATGAGAAGAAGAAGGGGCCCAAAGTCACCGTCAAGGTGTATTTTGACCTACGAATTGGAGATGAAGATGTAGGCCGGGTGATCTTTGGTCTCTTCGGAA +>006.Ngene_C1C2 +CCAGGCAGCAGTAGGGGAACTTCTCCTGCTAGAATGGCTGGCAATGGCGGTGATGCTGCTCTTGCTTTGCTGCTGCTTGACAGATTGAACCAGCTTGAGAGCAAAATGTCTGGTAAAGGCCAA +>008.Egene_C1C2 +AGACAGGTACGTTAATAGTTAATAGCGTACTTCTTTTTCTTGCTTTCGTGGTATTCTTGCTAGTTACACTAGCCATCCTTACTGCGCTTCGATTGTGTGCGTACTGCTGCAATATTGTTAACGTG +>010.RdRP_C1C2 +TGAGTGAAATGGTCATGTGTGGCGGTTCACTATATGTTAAACCAGGTGGAACCTCATCAGGAGATGCCACAACTGCTTATGCTAATAGTGTTTTTAACATTTGTCAAGCTGTCAC +>013.Sgene.RBD_C1C2 +ATCAGGCCGGTAGCACACCTTGTAATGGTGTTGAAGGTTTTAATTGTTACTTTCCTTTACAATCATATGGTTTCCAACCCACTAATGGTGTTGGTTACCAACCATACAGAGT +>014.Sgene.Poly_C1C2 +TATGCGCTAGTTATCAGACTCAGACTAATTCTCCTCGGCGGGCACGTAGTGTAGCTAGTCAATCCATCATTGCCTACACTATGTCACTTGGTGCAGAAAATTCAGTTGCTTAC +>019.ACTB_C1C2 +TCACCATTGGCAATGAGCGGTTCCGCTGCCCTGAGGCACTCTTCCAGCCTTCCTTCCTGGGCATGGAGTCCTGTGGCATCCACGAAACTACCTTCAACTCCATCATGAAGTGTGACGTGG diff --git a/examples/COVID-19/amplicons/Junctions_fwd.bed b/examples/COVID-19/amplicons/Junctions_fwd.bed new file mode 100644 index 0000000..be6d523 --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_fwd.bed @@ -0,0 +1,7 @@ +004.PPIB_fw1_C1C2 0 75 +006.Ngene_fw1_C1C2 0 75 +008.Egene_fw1_C1 0 75 +010.RdRP_fw1_C1C2 0 75 +013.Sgene.RBD_fw1_C1C2 0 75 +014.Sgene.Poly_fw1_C1C2 0 75 +019.ACTB_fw1_C1C2 0 75 diff --git a/examples/COVID-19/amplicons/Junctions_fwd.fa b/examples/COVID-19/amplicons/Junctions_fwd.fa new file mode 100644 index 0000000..86c74dc --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_fwd.fa @@ -0,0 +1,14 @@ +>004.PPIB_fw1_C1C2 +TGCTGCTGCCGGGACCTTCTGCGGCCGATGAGAAGAAGAAGGGGCCCAAAGTCACCGTCAAGGTGTATTTTGACC +>006.Ngene_fw1_C1C2 +CCAGGCAGCAGTAGGGGAACTTCTCCTGCTAGAATGGCTGGCAATGGCGGTGATGCTGCTCTTGCTTTGCTGCTG +>008.Egene_fw1_C1 +AGACAGGTACGTTAATAGTTAATAGCGTACTTCTTTTTCTTGCTTTCGTGGTATTCTTGCTAGTTACACTAGCCA +>010.RdRP_fw1_C1C2 +TGAGTGAAATGGTCATGTGTGGCGGTTCACTATATGTTAAACCAGGTGGAACCTCATCAGGAGATGCCACAACTG +>013.Sgene.RBD_fw1_C1C2 +ATCAGGCCGGTAGCACACCTTGTAATGGTGTTGAAGGTTTTAATTGTTACTTTCCTTTACAATCATATGGTTTCC +>014.Sgene.Poly_fw1_C1C2 +TATGCGCTAGTTATCAGACTCAGACTAATTCTCCTCGGCGGGCACGTAGTGTAGCTAGTCAATCCATCATTGCCT +>019.ACTB_fw1_C1C2 +TCACCATTGGCAATGAGCGGTTCCGCTGCCCTGAGGCACTCTTCCAGCCTTCCTTCCTGGGCATGGAGTCCTGTG diff --git a/examples/COVID-19/amplicons/Junctions_fwd_minDist.tab b/examples/COVID-19/amplicons/Junctions_fwd_minDist.tab new file mode 100644 index 0000000..c4ff557 --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_fwd_minDist.tab @@ -0,0 +1,8 @@ +junction distEvent distAll +004.PPIB_fw1_C1C2 NA 54 +006.Ngene_fw1_C1C2 NA 53 +008.Egene_fw1_C1 NA 49 +010.RdRP_fw1_C1C2 NA 49 +013.Sgene.RBD_fw1_C1C2 NA 52 +014.Sgene.Poly_fw1_C1C2 NA 52 +019.ACTB_fw1_C1C2 NA 53 diff --git a/examples/COVID-19/amplicons/Junctions_rev.bed b/examples/COVID-19/amplicons/Junctions_rev.bed new file mode 100644 index 0000000..24b7294 --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_rev.bed @@ -0,0 +1,7 @@ +004.PPIB_rv1_C2C1 0 75 +006.Ngene_rv1_C2C1 0 75 +008.Egene_rv1_C2C1 0 75 +010.RdRP_rv1_C2C1 0 75 +013.Sgene.RBD_rv1_C2C1 0 75 +014.Sgene.Poly_rv1_C2C1 0 75 +019.ACTB_rv1_C2C1 0 75 diff --git a/examples/COVID-19/amplicons/Junctions_rev.fa b/examples/COVID-19/amplicons/Junctions_rev.fa new file mode 100644 index 0000000..e6f4fce --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_rev.fa @@ -0,0 +1,14 @@ +>004.PPIB_rv1_C2C1 +TTCCGAAGAGACCAAAGATCACCCGGCCTACATCTTCATCTCCAATTCGTAGGTCAAAATACACCTTGACGGTGA +>006.Ngene_rv1_C2C1 +TTGGCCTTTACCAGACATTTTGCTCTCAAGCTGGTTCAATCTGTCAAGCAGCAGCAAAGCAAGAGCAGCATCACC +>008.Egene_rv1_C2C1 +CACGTTAACAATATTGCAGCAGTACGCACACAATCGAAGCGCAGTAAGGATGGCTAGTGTAACTAGCAAGAATAC +>010.RdRP_rv1_C2C1 +GTGACAGCTTGACAAATGTTAAAAACACTATTAGCATAAGCAGTTGTGGCATCTCCTGATGAGGTTCCACCTGGT +>013.Sgene.RBD_rv1_C2C1 +ACTCTGTATGGTTGGTAACCAACACCATTAGTGGGTTGGAAACCATATGATTGTAAAGGAAAGTAACAATTAAAA +>014.Sgene.Poly_rv1_C2C1 +GTAAGCAACTGAATTTTCTGCACCAAGTGACATAGTGTAGGCAATGATGGATTGACTAGCTACACTACGTGCCCG +>019.ACTB_rv1_C2C1 +CCACGTCACACTTCATGATGGAGTTGAAGGTAGTTTCGTGGATGCCACAGGACTCCATGCCCAGGAAGGAAGGCT diff --git a/examples/COVID-19/amplicons/Junctions_rev_minDist.tab b/examples/COVID-19/amplicons/Junctions_rev_minDist.tab new file mode 100644 index 0000000..cd70e41 --- /dev/null +++ b/examples/COVID-19/amplicons/Junctions_rev_minDist.tab @@ -0,0 +1,8 @@ +junction distEvent distAll +004.PPIB_rv1_C2C1 NA 52 +006.Ngene_rv1_C2C1 NA 52 +008.Egene_rv1_C2C1 NA 49 +010.RdRP_rv1_C2C1 NA 52 +013.Sgene.RBD_rv1_C2C1 NA 49 +014.Sgene.Poly_rv1_C2C1 NA 52 +019.ACTB_rv1_C2C1 NA 52 diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.1.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.1.ebwt new file mode 100644 index 0000000..a66039e Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.1.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.2.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.2.ebwt new file mode 100644 index 0000000..e6034ea Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.2.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.3.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.3.ebwt new file mode 100644 index 0000000..16f7e8b Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.3.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.4.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.4.ebwt new file mode 100644 index 0000000..941f07a --- /dev/null +++ b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.4.ebwt @@ -0,0 +1,2 @@ +۶Rߦ% QοTa8wm#.vomN>cN6>X,.k>P +ulZ:F;Opl6>tHwF;6\o}be[-jx \ No newline at end of file diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.1.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.1.ebwt new file mode 100644 index 0000000..405b694 Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.1.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.2.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.2.ebwt new file mode 100644 index 0000000..abbc970 Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_fwd.rev.2.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.1.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.1.ebwt new file mode 100644 index 0000000..8993d1f Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.1.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.2.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.2.ebwt new file mode 100644 index 0000000..c653752 Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.2.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.3.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.3.ebwt new file mode 100644 index 0000000..16f7e8b Binary files /dev/null and b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.3.ebwt differ diff --git a/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.4.ebwt b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.4.ebwt new file mode 100644 index 0000000..f908aef --- /dev/null +++ b/examples/COVID-19/amplicons/bowtie_indices/Junctions_rev.4.ebwt @@ -0,0 +1 @@ +_HrTZq|Dkv~p{`a f8(k0c w-~Qt;P+P(