[Bio] / FigKernelScripts / make_PDB_attributes.pl Repository:
ViewVC logotype

Annotation of /FigKernelScripts/make_PDB_attributes.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (view) (download) (as text)

1 : mkubal 1.1 open(IN,"/vol/seed-attributes/computation_results/pdb_seqres_blast_output.txt");
2 :     open(OUT1,">/vol/seed-attributes/PDB/PDB_attributes.txt");
3 :    
4 :     my $pdb;
5 :     my $peg;
6 :     my $score;
7 :     my %peg_to_pdb;
8 :     my %peg_to_score;
9 :     my $record;
10 :     my $record_start;
11 :     my %peg_to_start;
12 :     my %peg_to_stop;
13 :    
14 :     while( $_ = <IN>){
15 :     if($_ =~/Query=\s(\w+)_/){
16 :     $pdb = $1;
17 :     $record = 0;
18 :     }
19 :     if($_ =~/^(fig\|\d+.\d+.peg.\d+)\s+(\d+)\s+(\d+e-\d+)?/){
20 :     $peg = $1;
21 :     $score = $3;
22 :     if($peg_to_pdb{$peg}){
23 :     $stored_score = $peg_to_score{$peg};
24 :     if($score < $stored_score){
25 :     $peg_to_pdb{$peg} = $pdb;
26 :     $peg_to_score{$peg} = $score;
27 :     }
28 :     }
29 :     else{
30 :     $peg_to_pdb{$peg} = $pdb;
31 :     $peg_to_score{$peg} = $score;
32 :     }
33 :    
34 :     }
35 :    
36 :     if($_ =~/^>/){
37 :     if($_ =~/(fig\|.*)/){
38 :     $peg = $1;
39 :     if($peg_to_score{$peg}){$record = 1;$record_start =1;}
40 :     else{$record = 0}
41 :     }
42 :     else{$record = 0;}
43 :     }
44 :    
45 :     if($record){
46 :     if($record_start){
47 :     if($_ =~/Query:\s(\d+)/){
48 :     $start = $1;
49 :     $record_start = 0;
50 :     $peg_to_start{$peg} = $start;
51 :     }
52 :     }
53 :    
54 :     if($_ =~/Query:\s\d+.*\s(\d+)$/){
55 :     $stop = $1;
56 :     $peg_to_stop{$peg} = $stop;
57 :     }
58 :     }
59 :     }
60 :    
61 :     foreach $peg (keys(%peg_to_pdb)){
62 :     $pdb = $peg_to_pdb{$peg};
63 :     $score = $peg_to_score{$peg};
64 :     if($score =~/(\d+)e-(\d+)/){
65 :     $part1 = $1;
66 :     $part2 = $2;
67 :     if($part2 > 19){
68 :     $part2 = (1000 - $part2);
69 : mkubal 1.2 $part1 = $part1 * 100;
70 : mkubal 1.1 $score = $part2.".".$part1;
71 :     $start = $peg_to_start{$peg};
72 :     $stop = $peg_to_stop{$peg};
73 :     if($start){
74 :     print OUT1 "$peg\tPDB::$pdb\t$score;$start-$stop\n";
75 :     }
76 :     else{
77 :     print OUT1 "$peg\tPDB::$pdb\t$score\n";
78 :     }
79 :     }
80 :     }
81 :     }

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3