annotate lib/TAP4.pl @ 3:17ce4f3bffa2 default tip

Uploaded
author jesse-erdmann
date Tue, 24 Jan 2012 18:33:41 -0500
parents 1437a2df99c0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
1 #This is the TAp2.pl script
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
2 #The goal of this is to count the number of CIS present in a NR set
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
3 # one file is required nr.txt sorted in chromosome order!
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
4 # Aaron Lyman Sarver Oct 21, 2010
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
5 # This script takes over following the bowtie mapping and generates CIS.
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
6 # Update NOV15,2010 to pass library information through
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
7 #$Fully modified december 1 2010i
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
8
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
9 require 'config.pl';
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
10 require 'lib/feature_finder_methods.pl';
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
11 my $path = $0;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
12 $path =~ s/\/\w*\.pl$//g;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
13 require "$path/project_man.pl";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
14 unless (-d "CIS") {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
15 mkdir("CIS");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
16 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
17 unless (-d "results") {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
18 mkdir("results");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
19 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
20
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
21 $proj_all = $proj."_all";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
22
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
23 $sth = $dbh->prepare("drop table if exists lib_mappable_$proj_all");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
24 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
25
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
26 $sth = $dbh->prepare("drop table if exists lib_mappable_$proj");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
27 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
28
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
29 $sth = $dbh->prepare("drop table if exists illumina_hist_$proj_all");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
30 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
31
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
32 $sth = $dbh->prepare("drop table if exists illumina_hist_$proj");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
33 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
34
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
35 $sth = $dbh->prepare("drop table if exists bowtie_lib_$proj_all");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
36 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
37
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
38 $sth = $dbh->prepare("drop table if exists bowtie_lib_$proj");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
39 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
40
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
41 $sth = $dbh->prepare("drop table if exists metadata_$proj_all");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
42 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
43
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
44
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
45 open DIN, "< data/meta.tab";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
46 @met;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
47 while (defined($line = <DIN>)) {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
48 chomp $line;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
49 @field= split(/\t/, $line);
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
50 push (@met,$line);
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
51 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
52
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
53 $proj_all = $proj."_all";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
54 $var=shift(@met);
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
55
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
56 $sth = $dbh->prepare("create table lib_mappable_$proj_all select * from lib_mappable_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
57 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
58 $sth = $dbh->prepare("create table illumina_hist_$proj_all select * from illumina_hist_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
59 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
60 $sth = $dbh->prepare("create table bowtie_lib_$proj_all select * from bowtie_lib_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
61 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
62 $sth = $dbh->prepare("create table metadata_$proj_all select * from metadata_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
63 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
64
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
65 foreach $var(@met) {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
66 $sth = $dbh->prepare("insert into lib_mappable_$proj_all select * from lib_mappable_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
67 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
68 $sth = $dbh->prepare("insert into illumina_hist_$proj_all select * from illumina_hist_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
69 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
70 $sth = $dbh->prepare("insert into bowtie_lib_$proj_all select * from bowtie_lib_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
71 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
72 $sth = $dbh->prepare("insert into metadata_$proj_all select * from metadata_$var");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
73 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
74 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
75
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
76 unless(-e "data/metadata.tab") {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
77 $sth = $dbh->prepare("select library, descriptor, type from metadata_$proj_all");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
78 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
79 open(my $meta_out, ">", "data/metadata.tab") || die "Unable to open data/metadata.tab for output. $!\n";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
80 while ((@row) = $sth->fetchrow_array) {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
81 print $meta_out join("\t", @row) . "\n";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
82 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
83 close($meta_out);
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
84 }
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
85
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
86
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
87 $sth = $dbh->prepare("create table lib_mappable_$proj select distinct library, sum(total) as total from lib_mappable_$proj_all group by library;");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
88 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
89
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
90 $sth = $dbh->prepare("create table illumina_hist_$proj select distinct library, chromo, start, sum(count) as count,orient from illumina_hist_$proj_all group by library,chromo,start,orient;");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
91 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
92
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
93 $sth = $dbh->prepare("create table bowtie_lib_$proj select distinct library,chromo, start,stop, pos, sum(count) as count,strand, orient from bowtie_lib_$proj_all group by library,chromo,start,stop,pos,strand order by chromo,start+0,orient ;");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
94 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
95
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
96 $sth = $dbh->prepare("select chromo, start, stop, concat(library,'-',count),count,strand,start,stop from bowtie_lib_$proj");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
97 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
98 #7.2
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
99 open OUT, "> results/raw_$proj.BED";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
100 print OUT "track type ='BED' name='raw$proj' description='all$proj' visibility=2 itemRgb='On'";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
101 while ((@row) = $sth->fetchrow_array) {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
102 print OUT "\n$row[0]\t$row[1]\t$row[2]\t$row[3]\t$row[4]\t$row[5]\t$row[6]\t$row[7]";}
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
103 close OUT;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
104 #7.3
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
105 $sth = $dbh->prepare("drop table if exists convert_2_hex_$proj");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
106 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
107 $sth = $dbh->prepare("create table convert_2_hex_$proj (orient varchar(5), hex varchar(20))");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
108 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
109 $sth = $dbh->prepare("insert into convert_2_hex_$proj VALUES(\"A\", \"255,0,0\")");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
110 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
111 $sth = $dbh->prepare("insert into convert_2_hex_$proj VALUES(\"B\", \"0,0,255\")");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
112 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
113 $sth = $dbh->prepare("insert into convert_2_hex_$proj VALUES(\"U\", \"0,0,0\")");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
114 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
115
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
116 $sth = $dbh->prepare("select chromo, start, stop, concat(library,'-',count),count,strand,start,stop from bowtie_lib_$proj where count > 9");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
117 ### JJE
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
118 #$sth = $dbh->prepare("select chromo, start, start+1, concat(library,count),count,'+',start,start+1, hex from bowtie_lib_$proj A, convert_2_hex_$proj B where A.orient = B.orient and count > 9");
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
119 ###
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
120 $sth->execute;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
121 open OUT, "> results/raw10_$proj.BED";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
122 print OUT "track type ='BED' name='raw10$proj' description='10$proj' visibility=2 itemRgb='On'";
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
123 while ((@row) = $sth->fetchrow_array) {
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
124 print OUT "\n$row[0]\t$row[1]\t$row[2]\t$row[3]\t$row[4]\t$row[5]\t$row[6]\t$row[7]\t$row[8]";}
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
125 close OUT;
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
126
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
127 &set_project_status($proj, 1, 0);
1437a2df99c0 Uploaded
jesse-erdmann
parents:
diff changeset
128