annotate dexseq-hts_1.0/src/DEXseq-hts.sh @ 11:cec4b4fb30be draft default tip

DEXSeq version 1.6 added
author vipints <vipin@cbio.mskcc.org>
date Tue, 08 Oct 2013 08:22:45 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
1 #/bin/bash
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
2 ##
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
3 # This program is free software; you can redistribute it and/or modify
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
4 # it under the terms of the GNU General Public License as published by
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
5 # the Free Software Foundation; either version 3 of the License, or
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
6 # (at your option) any later version.
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
7 #
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
8 # Copyright (C) 2013 Memorial Sloan-Kettering Cancer Center
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
9 ##
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
10
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
11 set -e
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
12
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
13 PROG=`basename $0`
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
14 DIR=`dirname $0`
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
15
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
16 . ${DIR}/../bin/dexseq_config.sh
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
17
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
18 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
19 echo ${PROG}: Oqtans http://galaxy.cbio.mskcc.org Galaxy wrapper for the DEXSeq version ${DEXSEQ_VERSION}.
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
20 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
21 echo DEXSeq: Detecting differential usage of exons from RNA-seq data.
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
22 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
23
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
24 ## input arguments from the interface
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
25 GFF_IN=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
26 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
27 MATE_PAIR=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
28 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
29 LIBTP=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
30 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
31 minQL=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
32 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
33 RES_FILE=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
34 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
35 RES_WD=${1}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
36 shift
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
37
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
38 ## associated array with sequencing type.
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
39 declare -A SEQ_TYPE=( [no]=SE [yes]=PE )
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
40
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
41 echo %%%%%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
42 echo % 1. Data preparation %
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
43 echo %%%%%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
44 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
45
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
46 mkdir -p ${RES_WD}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
47 echo extra file path $RES_WD
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
48 tmpGTF=`mktemp --tmpdir=/tmp`
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
49
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
50 echo load the genome annotation in GFF file
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
51
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
52 ${PYTHON_PATH} ${DIR}/dexseq_prepare_annotation.py ${GFF_IN} ${tmpGTF}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
53 echo genome annotation stored in ${tmpGTF}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
54 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
55
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
56 echo %%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
57 echo % 2. Read counting %
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
58 echo %%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
59 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
60
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
61 tmpFILE=`mktemp --tmpdir=/tmp`
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
62 echo $tmpFILE
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
63 echo -e '\t'condition'\t'libType > ${tmpFILE}_CONDITIONS.tab
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
64
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
65 COND=0
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
66 for REPLICATE_GROUP in $@
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
67 do
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
68 IFS=':'
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
69 COND=$((COND+1))
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
70 for BAM_FILE in ${REPLICATE_GROUP}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
71 do
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
72 ## different group information
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
73 REPNAME=$(basename ${BAM_FILE%.dat})
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
74 echo -e ${REPNAME}"\t"$COND"\t"${SEQ_TYPE[$MATE_PAIR]} >> ${tmpFILE}_CONDITIONS.tab
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
75
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
76 ## counting the reads
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
77 ${SAMTOOLS_DIR}/samtools view -h $BAM_FILE | ${PYTHON_PATH} ${DIR}/dexseq_count.py -p ${MATE_PAIR} -s ${LIBTP} -a ${minQL} ${tmpGTF} - ${RES_WD}/${REPNAME}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
78
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
79 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
80 done
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
81 echo conuted condition ${COND}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
82 done
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
83 echo counted reads map to each exon.
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
84 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
85
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
86 echo %%%%%%%%%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
87 echo % 3. Differential testing %
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
88 echo %%%%%%%%%%%%%%%%%%%%%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
89 echo
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
90
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
91 echo "cat ${DIR}/run_DEXseq.R | $R_PATH --slave --args $tmpFILE $RES_WD $tmpGTF ${RES_FILE} $#"
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
92 cat ${DIR}/run_DEXseq.R | $R_PATH --slave --args $tmpFILE $RES_WD $tmpGTF ${RES_FILE}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
93
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
94 ## clean up
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
95 rm -fr ${RES_WD} ${tmpGTF} ${tmpFILE}
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
96 echo %%%%%%%%
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
97 echo % Done %
cec4b4fb30be DEXSeq version 1.6 added
vipints <vipin@cbio.mskcc.org>
parents:
diff changeset
98 echo %%%%%%%%