# HG changeset patch
# User stef
# Date 1409929827 14400
# Node ID fb2dfd8ba417084cf359daa9d36848a686d457b5
# Parent a93649056969f09a165bfd4c4069c0576a547a54
Uploaded
diff -r a93649056969 -r fb2dfd8ba417 QDNAseq.R
--- a/QDNAseq.R Wed Aug 27 04:56:37 2014 -0400
+++ b/QDNAseq.R Fri Sep 05 11:10:27 2014 -0400
@@ -38,6 +38,8 @@
l1 <- length(paths)
l2 <- length(names)
if ( l1 != l2 ) stop( "Unequal amount of bam-paths (", l1, ") and -names (", l2, ") in makeBamFileList!!!\n" )
+ if ( l1 == 0 ){ return(tmp) } # empty list in debug mode
+
for ( i in 1:length(paths) ){
path <- paths[i]
name <- names[i]
@@ -155,9 +157,6 @@
## desparate tries to make png text scale well, damn you R...!
PLOT_RES <- min( PLOT_WIDTH, PLOT_HEIGHT ) / 6.3
-#PLOT_PS <- min( PLOT_WIDTH, PLOT_HEIGHT ) / 40
-#TXT_FACTOR <- PLOT_WIDTH/480
-#PAR_SET <- list( pch=22, cex.lab=TXT_FACTOR, cex.main=TXT_FACTOR )
PAR_SET <- list( pch=22 )
systemUser <- system("whoami",T)
@@ -176,8 +175,8 @@
## ------------------------
## DEBUG
if ( debug ){
- catMsg( c("Analysis run under user: ", systemUser ) )
- catMsg( c("Here comes sessionInfo: " ) )
+ catMsg( c("Analysis run by user: ", systemUser ) )
+ catMsg( c("DEBUG SessionInfo: " ) )
print( sessionInfo() )
}
## /DEBUG
@@ -189,7 +188,9 @@
}
## copy source config file to output dir to include it in output zip
-file.copy( config, paste(outputPath, 'galaxyConfigFile.R', sep='/') )
+if ( inGalaxy ){
+ file.copy( config, paste(outputPath, 'galaxyConfigFile.R', sep='/') )
+}
## setup bam filelist for easy retrieval later
fileList <- makeBamFileList( bamsPaths, bamsNames )
@@ -233,7 +234,13 @@
igvCopyNrPath <- paste( outputPath, '/', igvCopyNrName, sep='')
noiseImgPath <- paste( outputPath, '/', noiseImgName, sep='')
- binAnnotations <- getBinAnnotations( binSize=binSize, type=experimentType )
+ binAnnFile <- paste( TOOL_PATH, '/static/binannotation/', binSize, 'kbp_binAnnotations.rds', sep="" )
+ if ( file.exists(binAnnFile) ){
+ binAnnotations <- readRDS( binAnnFile )
+ catMsg( c("Using local binAnnotations file" ) )
+ }else{
+ binAnnotations <- getBinAnnotations( binSize=binSize, type=experimentType )
+ }
## in case of debug just use inbuilt LGG data for speedup
if ( debug ){
@@ -493,8 +500,9 @@
## ------------------------
## creating main html output for galaxy history
## ------------------------
-sink( file = outputHtml, type = "output" )
-
+if ( inGalaxy ){ # dont create when running outside Galaxy
+ sink( file = outputHtml, type = "output" )
+
cat( "
", "\n")
cat( "\t", '', "\n", sep='' )
@@ -509,7 +517,8 @@
cat( 'Explore the results directly within galaxy
', "\n", sep="")
cat( 'Or download a zipfile with all output (', zippedSize, ')
', "\n", sep="" )
-sink()
+ sink()
+}
## ------------------------
## create final zip and quit with status 0 to tell galaxy all was fine
diff -r a93649056969 -r fb2dfd8ba417 QDNAseq.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/QDNAseq.sh Fri Sep 05 11:10:27 2014 -0400
@@ -0,0 +1,148 @@
+#!/bin/sh
+
+## This script creates a config file for use with the QDNAseq R wrapper
+## For use outside Galaxy
+
+QDNASEQ_R_SCRIPT='/ccagc/home/stef/code/QDNASEQ/QDNAseq.R'
+R_LOCATION='/ccagc/lib/R/R-3.1.0/bin/'
+OUTPUT_DIR='QDNASEQ'
+SCRIPT_DIR=$(dirname $0)
+SCRIPT_NAME=$(basename $0)
+
+binSizesString='1000,100,15'
+outputName=`basename $PWD`
+doSegment='TRUE'
+debug='FALSE'
+
+usage()
+{
+cat<&2
+ outputName=$OPTARG
+ PARAM_COUNT=`bc <<< $PARAM_COUNT+2`
+ ;;
+ o)
+ OUTPUT_DIR=$OPTARG
+ PARAM_COUNT=`bc <<< $PARAM_COUNT+2`
+ ;;
+ d)
+ debug='TRUE'
+ PARAM_COUNT=`bc <<< $PARAM_COUNT+1`
+ ;;
+ \?)
+ echo "Invalid option: -$OPTARG" >&2
+ exit 1
+ ;;
+ :)
+ echo "Option -$OPTARG requires an argument." >&2
+ exit 1
+ ;;
+ esac
+ done
+fi
+
+## set param dependent variables
+printf '%s\n' "[INFO] --- QDNAseq wrapper config creator ---"
+CONFIG_FILE=$OUTPUT_DIR'/qdnaseqConfig.R'
+
+## remove the params from input string leaving only the BAMs
+shift $PARAM_COUNT
+
+## sanity checks
+if [ -e $CONFIG_FILE ]; then
+ echo "[ERR] Config file ($CONFIG_FILE) already exists, exit..";
+ exit 0
+fi
+if [ -d $OUTPUT_DIR ]; then
+ echo "[ERR] Output dir ($OUTPUT_DIR) already exists, exit..";
+ exit 0
+else
+ mkdir $OUTPUT_DIR
+fi
+
+## variables setup
+CONFIG_TXT="## ==========
+## QDNAseq pipeline config file
+## ==========
+
+## ----------
+inGalaxy <- FALSE
+binSizesString <- '$binSizesString'
+experimentType <- 'SR50'
+outputName <- '$outputName'
+
+## ----------
+outputHtml <- 'galaxyIndex.html'
+outputId <- NA
+newFilePath <- '$OUTPUT_DIR'
+outputPath <- '$OUTPUT_DIR'
+doSegment <- as.logical( $doSegment )
+debug <- as.logical( $debug )
+undoSD <- as.double( 1.0 )
+binAnnotations <- ''
+
+## ----------
+filterBlacklistedBins <- as.logical( 'TRUE' )
+mappabilityCutoff <- as.integer( 0 )
+undoSplits <- 'sdundo'
+doOutputCopynumbersIgv <- FALSE
+
+## ----------
+PLOT_WIDTH <- as.integer( 1440 )
+PLOT_HEIGHT <- as.integer( 720 )
+excludeChrsString <- 'X,Y'
+
+## ----------
+bamsPaths <- c()
+bamsNames <- c()
+"
+
+## create config file
+printf '%s\n' "$CONFIG_TXT" > $CONFIG_FILE
+
+## add bam files to config file
+BAMS=$@
+for bam_path in $BAMS; do
+
+ if [ ! -e $bam_path ]; then
+ echo "[ERR] Bam file does not exist ($bam_path), exit..";
+ exit 0
+ fi
+
+ bam_name=`basename "$bam_path"`
+ printf '%s\n' "bamsPaths <- c( bamsPaths, \"$bam_path\" )" >> $CONFIG_FILE
+ printf '%s\n' "bamsNames <- c( bamsNames, \"$bam_name\" )" >> $CONFIG_FILE
+ printf '%s\n' "[INFO] BAM: $bam_name"
+done
+
+## done
+printf '%s\n' "[INFO] OUTPUT DIR: $OUTPUT_DIR"
+printf '%s\n' "[INFO] OUTPUT NAME: $outputName"
+printf '%s\n' "[INFO] CONFIG FILE can be found in $CONFIG_FILE"
+printf '%s\n' "[INFO] Run with: $R_LOCATION/Rscript $QDNASEQ_R_SCRIPT $CONFIG_FILE"
+printf '%s\n' "[INFO] Done"
\ No newline at end of file
diff -r a93649056969 -r fb2dfd8ba417 QDNAseq.xml
--- a/QDNAseq.xml Wed Aug 27 04:56:37 2014 -0400
+++ b/QDNAseq.xml Fri Sep 05 11:10:27 2014 -0400
@@ -10,7 +10,6 @@
Quantitative copy number abberation detection
-
QDNAseq.R
@@ -38,9 +37,9 @@
-
+
-
+
@@ -166,6 +165,7 @@
## -----
## required params
## -----
+TRUE -> inGalaxy
"${binSizes}" -> binSizesString
"${experimentType}" -> experimentType
"${jobName}" -> outputName
diff -r a93649056969 -r fb2dfd8ba417 static/binannotation/1000kbp_binAnnotations.rds
Binary file static/binannotation/1000kbp_binAnnotations.rds has changed
diff -r a93649056969 -r fb2dfd8ba417 static/binannotation/100kbp_binAnnotations.rds
Binary file static/binannotation/100kbp_binAnnotations.rds has changed
diff -r a93649056969 -r fb2dfd8ba417 static/binannotation/15kbp_binAnnotations.rds
Binary file static/binannotation/15kbp_binAnnotations.rds has changed
diff -r a93649056969 -r fb2dfd8ba417 static/binannotation/30kbp_binAnnotations.rds
Binary file static/binannotation/30kbp_binAnnotations.rds has changed
diff -r a93649056969 -r fb2dfd8ba417 static/images/LGG150_copynumber.png
Binary file static/images/LGG150_copynumber.png has changed
diff -r a93649056969 -r fb2dfd8ba417 static/images/LGG150_copynumberSegmented.png
Binary file static/images/LGG150_copynumberSegmented.png has changed
diff -r a93649056969 -r fb2dfd8ba417 static/images/LGG150_copynumber_example.png
Binary file static/images/LGG150_copynumber_example.png has changed
diff -r a93649056969 -r fb2dfd8ba417 tool_dependencies.xml
--- a/tool_dependencies.xml Wed Aug 27 04:56:37 2014 -0400
+++ b/tool_dependencies.xml Fri Sep 05 11:10:27 2014 -0400
@@ -5,19 +5,21 @@
-
-
+
+
+
+
+
-