annotate JAMM.sh @ 0:d42f4d78c85e draft

Uploaded
author messersc
date Wed, 17 Dec 2014 10:40:23 -0500
parents
children 243f75d0ed6e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
1 #!/bin/bash
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
2 ########################################
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
3 #### Peak finding Pipeline for NGS Data
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
4 #### Bash script
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
5 ########################################
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
6
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
7 export LC_ALL=en_US.UTF-8
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
8
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
9 ##Finding out the path
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
10 sPath="`dirname \"$0\"`"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
11 sPath="`( cd \"$sPath\" && pwd )`"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
12
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
13
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
14
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
15 usage()
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
16 {
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
17 cat << EOF
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
18 Welcome to JAMM v1.0.6rev2 (GNU GPLv3). Copyright (C) 2014 Mahmoud Ibrahim.
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
19
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
20 This program comes with ABSOLUTELY NO WARRANTY; for details visit http://www.gnu.org/licenses/gpl.html. This is free software, and you are welcome to redistribute it under certain conditions; visit http://www.gnu.org/licenses/gpl.html for details.
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
21
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
22 OPTIONS:
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
23 -s directory containing Sample files (required)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
24 -g Genome size file (required)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
25 -o Output directory (required)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
26 -c directory containing input or Control files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
27 -m Mode, normal or narrow (default: normal)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
28 -r Resolution, peak or region (default: peak)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
29 -f Fragment length(s) (default: estimated)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
30 -w minimum Window size (default: 2 --- Note: this means minimum_window_size = bin_size x the_value_of_-w)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
31 -p Number of processors used by R scripts (default: 1)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
32 -b Bin Size (default: estimated)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
33 -t Type, single or paired (default: single, requires BED files. paired requires BEDPE files)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
34 -e window Enrichment cutoff, auto or any numeric value (default: 1 --- Set this to auto to estimate the appropriate window enrichment cutoff)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
35 EOF
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
36 }
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
37
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
38
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
39 # =========================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
40 # Process Input parameters
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
41 # =========================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
42
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
43
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
44 #Defaults -- Change those if you want
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
45 mode="normal"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
46 resol="peak"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
47 cores="1"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
48 window="2"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
49 type="single"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
50 windowe="1"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
51
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
52
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
53 #Defaults -- Do not change
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
54 sdir=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
55 gsize=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
56 out=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
57 binsize="ns"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
58 fraglen="ns"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
59 ran=$RANDOM
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
60 wdir=$(mktemp -d)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
61
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
62 while getopts "s:g:o:c:m:r:f:p:w:b:t:e:" OPTION
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
63 do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
64 case $OPTION in
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
65 s) sdir=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
66 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
67 g) gsize=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
68 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
69 o) out=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
70 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
71 c) bdir=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
72 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
73 m) mode=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
74 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
75 r) resol=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
76 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
77 f) fraglen=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
78 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
79 p) cores=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
80 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
81 w) window=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
82 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
83 b) binsize=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
84 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
85 t) type=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
86 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
87 e) windowe=$OPTARG
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
88 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
89 ?)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
90 usage
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
91 exit
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
92 ;;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
93 esac
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
94 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
95 if [ "$mode" == "normal" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
96 clustno="2"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
97 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
98 if [ "$mode" == "narrow" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
99 clustno="3"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
100 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
101
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
102 if [[ -z $sdir ]] || [[ -z $gsize ]] || [[ -z $out ]]
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
103 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
104 usage
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
105 exit 1
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
106 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
107 #=======================> DONE!
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
108
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
109
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
110
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
111 # =============================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
112 # Step One: Initial Processing
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
113 # =============================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
114 printf "\n\n========================================\nStarted JAMM Pipeline v1.0.6rev2...Hang on!\n========================================\n\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
115
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
116 if [ ! -d "$wdir" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
117 mkdir $wdir #make working directory
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
118 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
119 if [ ! -d "$out" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
120 mkdir $out #make output directory
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
121 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
122 mkdir $wdir/bkgd.$ran/ #directory to store background files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
123 mkdir $wdir/sizes.$ran/ #chromosomes and sizes
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
124 mkdir $wdir/samples.$ran/ #store sample files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
125
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
126 dupnum=$(ls -1 $sdir | wc -l) #count how many sample files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
127
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
128
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
129 #separate chromosome sizes
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
130 printf "Loading genome size file..."
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
131 ext="$wdir/sizes.$ran/"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
132 awk -v ext="$ext" '{ print >> ext"/size." $1 ".bed" }' $gsize
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
133 printf "Done!\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
134
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
135
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
136 printf "Processing sample files..."
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
137 #load each chromosome from each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
138 for i in $sdir/*.bed; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
139 samplefile=$(basename $i)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
140 for f in $wdir/sizes.$ran/*; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
141 sizefile=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
142 chr=$(echo $sizefile | awk -F"." '{print $2}' | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
143 awk -v chr="$chr" -v ext="$wdir/samples.$ran/" -v samplefile="$samplefile" -F"\t" '$1 == chr { print $2"\t"$6 >> ext"sample."chr"."samplefile }' "$i"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
144 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
145 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
146 printf "Done!\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
147
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
148
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
149 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
150 #concatenate all background files into one file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
151 printf "Processing control files..."
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
152 cat $bdir/*.bed > $wdir/bkgd.$ran/ctrl.bed
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
153
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
154 for f in $wdir/sizes.$ran/*; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
155 sizefile=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
156 chr=$(echo $sizefile | awk -F"." '{print $2}' | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
157 awk -v chr="$chr" -v ext="$wdir/bkgd.$ran/" -F"\t" '$1 == chr { print $2"\t"$6 >> ext"bkgd."chr".ctrl.bed" }' "$wdir/bkgd.$ran/ctrl.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
158 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
159
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
160 printf "Done!\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
161 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
162
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
163 #determine average read lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
164 printf "Getting average read lengths..."
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
165 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
166 readC=$(awk '{a=$3-$2;print a;}' "$wdir/bkgd.$ran/ctrl.bed" | perl -lane '$a+=$_;END{print $a/$.}' | awk '{a=$1+0.5;print a;}' | cut -d"." -f1)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
167 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
168 readL=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
169 for s in $sdir/*.bed; do #and for each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
170 read=$(awk '{a=$3-$2;print a;}' "$s" | perl -lane '$a+=$_;END{print $a/$.}' | awk '{a=$1+0.5;print a;}' | cut -d"." -f1)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
171 readL="$readL,$read"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
172 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
173 readL=${readL#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
174 printf "Done!\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
175 #=======================> DONE!
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
176
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
177
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
178
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
179 # =============================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
180 # Step Two: Fragment Length
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
181 # =============================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
182 #single-end
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
183 if [ $type == "single" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
184
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
185 if [ $fraglen == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
186
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
187 ##Counting Where Reads Start and Calculating Cross Correlation
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
188 mkdir $wdir/stats.$ran/ #store count files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
189 mkdir $out/xcorr #final xcorr results
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
190
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
191
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
192 printf "Calculating Fragment Length(s)...\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
193 for f in $wdir/sizes.$ran/*; do #for each chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
194 samplelist=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
195 readlist=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
196 sizefile=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
197 chr=$(echo $sizefile | awk -F"." '{print $2}' | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
198
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
199 #list of sample bed files and read lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
200 for s in $wdir/samples.$ran/*.bed; do #and for each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
201 samplefile=$(basename $s)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
202 chr2=$(echo $samplefile | awk -F"." '{print $2}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
203 if [ $chr == $chr2 ] #belonging to this chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
204 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
205 samplelist="$samplelist,$wdir/samples.$ran/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
206 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
207 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
208 readlist="$readL"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
209
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
210 #list of control bed files and read lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
211 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
212 for s in $wdir/bkgd.$ran/*.bed; do #and for each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
213 samplefile=$(basename $s)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
214 chr2=$(echo $samplefile | awk -F"." '{print $2}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
215 if [ $chr == $chr2 ] #belonging to this chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
216 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
217 samplelist="$samplelist,$wdir/bkgd.$ran/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
218 readlist="$readL,$readC"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
219 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
220 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
221 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
222
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
223 #remove leading comma
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
224 samplelist=${samplelist#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
225
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
226 #call R script for xcorr calculation
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
227 Rscript "$sPath/xcorr.r" -ibed="$samplelist" -s="$wdir/sizes.$ran/size.$chr.bed" -rl="$readlist" -d="$wdir/stats.$ran" -p="$cores"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
228 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
229
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
230 #report xcorr results (samples)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
231 for f in $sdir/*.bed; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
232 file=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
233 samplefile=$(echo $file | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
234 mkdir "$out/xcorr/$samplefile" #final xcorr results
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
235 if [ -f "$wdir/stats.$ran/xc.$samplefile.tab" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
236 cp $wdir/stats.$ran/xc.$samplefile.tab $out/xcorr/$samplefile/shifts.txt
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
237 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
238 Rscript "$sPath/xcorrhelper.r" -infile="$out/xcorr/$samplefile/shifts.txt" -out="$out/xcorr/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
239 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
240 #report xcorr results (control)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
241 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
242 mkdir "$out/xcorr/ctrl" #final xcorr results
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
243 if [ -f "$wdir/stats.$ran/xc.ctrl.tab" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
244 cp $wdir/stats.$ran/xc.ctrl.tab $out/xcorr/ctrl/shifts.txt
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
245 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
246 Rscript "$sPath/xcorrhelper.r" -infile="$out/xcorr/ctrl/shifts.txt" -out="$out/xcorr/ctrl"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
247 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
248
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
249 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
250 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
251
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
252 #paired-end
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
253 if [ $type == "paired" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
254 printf "Getting Average Fragment Length(s)...\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
255 mkdir $out/xcorr #final xcorr results
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
256
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
257 for f in $sdir/*.bed; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
258 file=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
259 samplefile=$(echo $file | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
260 mkdir "$out/xcorr/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
261 frag=$(awk '{a=$6-$2;print a;}' $f | perl -lane '$a+=$_;END{print $a/$.}' | awk '{a=$1+0.5;print a;}' | cut -d"." -f1)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
262 echo "Average_from_paired $frag" > $out/xcorr/$samplefile/shifts.txt
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
263 Rscript "$sPath/xcorrhelper.r" -infile="$out/xcorr/$samplefile/shifts.txt" -out="$out/xcorr/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
264 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
265 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
266 #=======================> DONE!
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
267
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
268
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
269
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
270 # =================================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
271 # Step Three: Calculating Bin Size
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
272 # =================================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
273 if [ $binsize == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
274 printf "Getting Bin Size: "
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
275
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
276 chr=$(sort -nr -k2 $gsize | head -n 1 | awk -F"\t" '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
277 samplelist=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
278 frag=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
279 if [ $fraglen != "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
280 frag=$fraglen
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
281 k=1
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
282 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
283
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
284 #list of sample bed files and read lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
285 for s in $wdir/samples.$ran/*.bed; do
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
286 samplefile=$(basename $s)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
287 chr2=$(echo $samplefile | awk -F"." '{print $2}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
288 if [ $chr == $chr2 ]
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
289 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
290 samplelist="$samplelist,$wdir/samples.$ran/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
291 samplename=$(echo $samplefile | awk -F"." '{ print $3 }')
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
292 samplefilename=$(echo $samplefile | cut -d'.' -f 3-)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
293 if [ $fraglen == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
294 shift=$(awk -F":" '$1 == "Fragment Length" { print $2 }' "$out/xcorr/$samplename/xcorrsummary.txt")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
295 frag="$frag,$shift"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
296 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
297 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
298 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
299 #remove leading comma
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
300 samplelist=${samplelist#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
301 frag=${frag#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
302
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
303 Rscript "$sPath/bincalculator.r" -ibed="$samplelist" -s="$gsize" -rl="$readL" -d="$wdir" -p="$cores" -f="$frag" -type="$type"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
304 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
305 if [ $binsize != "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
306 printf "You set a Bin Size: $binsize \n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
307 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
308 #=======================> DONE!
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
309
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
310
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
311
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
312 # ===========================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
313 # Step Four: Calling Peaks
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
314 # ===========================
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
315 mkdir $wdir/peaks.$ran/ #store count files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
316 mkdir $out/peaks #store peak files
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
317
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
318 printf "Calling Peaks...(mode: $mode, resolution: $resol)\n"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
319
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
320
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
321 #single-end reads
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
322 if [ $type == "single" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
323
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
324 if [ $binsize == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
325 binsize=$(cat "$wdir/binsize.txt")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
326 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
327
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
328 counting=1;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
329 for f in $wdir/sizes.$ran/*; do #for each chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
330 samplelist=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
331 frag=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
332 k=1
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
333 if [ $fraglen != "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
334 frag=$fraglen
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
335 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
336
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
337
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
338 sizefile=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
339 chr=$(echo $sizefile | awk -F"." '{print $2}' | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
340
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
341 printf "Chromosome $chr: "
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
342
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
343 #list of sample bed files and fragment lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
344 for s in $wdir/samples.$ran/*.bed; do #and for each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
345 samplefile=$(basename $s)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
346 chr2=$(echo $samplefile | awk -F"." '{print $2}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
347 if [ $chr == $chr2 ] #belonging to this chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
348 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
349 samplelist="$samplelist,$wdir/samples.$ran/ext.$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
350 samplename=$(echo $samplefile | awk -F"." '{ print $3 }')
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
351 samplefilename=$(echo $samplefile | cut -d'.' -f 3-)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
352 if [ $fraglen == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
353 shift=$(awk -F":" '$1 == "Fragment Length" { print $2 }' "$out/xcorr/$samplename/xcorrsummary.txt")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
354 frag="$frag,$shift"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
355 read=$(echo $readL | cut -f "$k" -d ",")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
356 k=$(($k+1))
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
357 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
358 if [ $fraglen != "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
359 shift=$(echo $frag | cut -f "$k" -d ",")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
360 read=$(echo $readL | cut -f "$k" -d ",")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
361 k=$(($k+1))
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
362 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
363 perl "$sPath/readshifter.pl" "$wdir/samples.$ran/$samplefile" $shift $read > "$wdir/samples.$ran/ext.$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
364 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
365 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
366
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
367 #control file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
368 bkgdfile="None"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
369 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
370 if [ $fraglen == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
371 bshift=$(awk -F":" '$1 == "Fragment Length" { print $2 }' "$out/xcorr/ctrl/xcorrsummary.txt")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
372 frag="$frag,$bshift"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
373 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
374 if [ $fraglen != "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
375 l=$(($dupnum+1))
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
376 bshift=$(echo $frag | cut -f "$l" -d ",")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
377 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
378 perl "$sPath/readshifter.pl" "$wdir/bkgd.$ran/bkgd.$chr.ctrl.bed" $bshift $readC > "$wdir/bkgd.$ran/ext.bkgd.$chr.ctrl.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
379 bkgdfile="$wdir/bkgd.$ran/ext.bkgd.$chr.ctrl.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
380 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
381
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
382 #remove leading comma
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
383 samplelist=${samplelist#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
384 frag=${frag#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
385
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
386 #call the peak calling R script
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
387 Rscript "$sPath/peakfinder.r" -sfile="$f" -bednames="$samplelist" -frag="$frag" -bkgd=$bkgdfile -out="$wdir/peaks.$ran/" -clustnummer="$clustno" -resolution="$resol" -window="$window" -p="$cores" -bin="$binsize" -type="$type" -chrcount="$counting" -windowe="$windowe"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
388 counting=$(($counting+1));
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
389 cp "$wdir/peaks.$ran/$chr.peaks.bed" "$out/peaks/$chr.peaks.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
390 rm "$wdir/peaks.$ran/$chr.peaks.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
391 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
392 counting=1;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
393 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
394
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
395
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
396 #paired-end reads
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
397 if [ $type == "paired" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
398
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
399 if [ $binsize == "ns" ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
400 binsize=$(cat "$wdir/binsize.txt")
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
401 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
402
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
403
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
404 counting=1;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
405 for f in $wdir/sizes.$ran/*; do #for each chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
406 samplelist=""
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
407
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
408 sizefile=$(basename $f)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
409 chr=$(echo $sizefile | awk -F"." '{print $2}' | awk -F"." '{print $1}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
410
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
411 printf "Chromosome $chr: "
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
412
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
413 #list of sample bed files and fragment lengths
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
414 for s in $wdir/samples.$ran/*.bed; do #and for each sample file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
415 samplefile=$(basename $s)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
416 chr2=$(echo $samplefile | awk -F"." '{print $2}');
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
417 if [ $chr == $chr2 ] #belonging to this chromosome
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
418 then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
419 samplelist="$samplelist,$wdir/samples.$ran/$samplefile"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
420 samplename=$(echo $samplefile | awk -F"." '{ print $3 }')
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
421 samplefilename=$(echo $samplefile | cut -d'.' -f 3-)
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
422 x="$sdir/$samplefilename"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
423 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
424 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
425
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
426 #control file
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
427 bkgdfile="None"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
428 if [ ! -z $bdir ]; then
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
429 bkgdfile="$wdir/bkgd.$ran/bkgd.$chr.ctrl.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
430 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
431
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
432 #remove leading comma
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
433 samplelist=${samplelist#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
434 frag=${frag#","}
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
435
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
436 #call the peak calling R script
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
437 Rscript "$sPath/peakfinder.r" -sfile=$f -bednames=$samplelist -frag="NA" -bkgd=$bkgdfile -out="$wdir/peaks.$ran/" -clustnummer="$clustno" -resolution="$resol" -window="$window" -p="$cores" -bin="$binsize" -type="$type" -chrcount="$counting" -windowe="$windowe"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
438 counting=$(($counting+1));
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
439 cp "$wdir/peaks.$ran/$chr.peaks.bed" "$out/peaks/$chr.peaks.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
440 rm "$wdir/peaks.$ran/$chr.peaks.bed"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
441 done
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
442 counting=1;
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
443 fi
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
444
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
445
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
446 cp $wdir/peaks.$ran/min.peaksize $out/peaks/min.peaksize
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
447
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
448
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
449 #concatenate, sort and filter
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
450 cat $out/peaks/*.bed > $out/peaks/all.narrowPeak
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
451 Rscript "$sPath/peakhelper.r" -filelist="$out/peaks/all.narrowPeak"
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
452 perl "$sPath/peakfilter.pl" $out/peaks/all.narrowPeak | sort -nr -k7 > $out/peaks/filtered.peaks.narrowPeak
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
453 cut -f1-10 $out/peaks/all.narrowPeak | awk -F"\t" -v j=0 '$7 > j' | sort -nr -k7 > $out/peaks/all.peaks.narrowPeak
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
454 rm $out/peaks/all.narrowPeak
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
455 rm $out/peaks/*.bed
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
456 rm $out/peaks/min.peaksize
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
457 #=======================> DONE!
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
458
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
459
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
460
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
461 rm -rf $wdir
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
462
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
463
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
464
d42f4d78c85e Uploaded
messersc
parents:
diff changeset
465 printf "\n\n========================================\nWe're done...Congratulations!\n========================================\n\n"