Mercurial > repos > greg > fimo_gff_to_gff
changeset 1:063d97ffda39 draft
Uploaded
author | greg |
---|---|
date | Fri, 04 Mar 2016 15:31:45 -0500 |
parents | 48d424adfaef |
children | 18c06791c675 |
files | fimo_gff_to_gff.pl |
diffstat | 1 files changed, 24 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/fimo_gff_to_gff.pl Thu Mar 03 21:16:32 2016 -0500 +++ b/fimo_gff_to_gff.pl Fri Mar 04 15:31:45 2016 -0500 @@ -9,27 +9,27 @@ #chr10:295039-295099(+) fimo nucleotide_motif 25 36 55.3 + . Name=1;ID=1-1-chr10:295039-295099(+);pvalue=2.97e-06;qvalue=0.00107;sequence=TGTTACCCGTTC; #chr10:576747-576807(-) fimo nucleotide_motif 25 36 56.2 + . Name=1;ID=1-1-chr10:576747-576807(-);pvalue=2.37e-06;qvalue=0.00107;sequence=CGTTACCCGACC; -#chr1 genetrack . 123950 123970 22 + . stddev=0.0 -#chr1 genetrack . 565745 565765 12 + . stddev=0.0 -#chr1 genetrack . 565793 565813 44 + . stddev=0.298065387468 +#chr1 genetrack . 123950 123970 22 + . stddev=0.0 +#chr1 genetrack . 565745 565765 12 + . stddev=0.0 +#chr1 genetrack . 565793 565813 44 + . stddev=0.298065387468 @COORD = (); @ID_NUM = (); $line = ""; while($line = <IN>) { - chomp($line); + chomp($line); next if($line =~ /gff-version/); @array = split(/\t/, $line); @CHR = split(/\:/, $array[0]); - @gff_COORD = split(/\(/, $CHR[1]); - @START_array = split(/\-/, $gff_COORD[0]); - $fimo_DIR = "+"; - if($gff_COORD[1] =~ "-") { $fimo_DIR = "-"; } + @gff_COORD = split(/\(/, $CHR[1]); + @START_array = split(/\-/, $gff_COORD[0]); + $fimo_DIR = "+"; + if($gff_COORD[1] =~ "-") { $fimo_DIR = "-"; } $DIR = $array[6]; $SCORE = $array[5]; - @NAME = split(/\;/, $array[8]); + @NAME = split(/\;/, $array[8]); $NEW = 0; for($x = 0; $x <= $#ID_NUM; $x++) { if($ID_NUM[$x] eq $NAME[0]) { @@ -39,13 +39,13 @@ } if($NEW == 0) { push(@ID_NUM, $NAME[0]); } - $START = $START_array[0] + $array[3]; - $STOP = $START_array[0] + $array[4]; + $START = $START_array[0] + $array[3] - 1; + $STOP = $START_array[0] + $array[4] - 1; - if($fimo_DIR eq "-") { - if($DIR eq "+") { $DIR = "-"; } - else { $DIR = "+"; } - } + if($fimo_DIR eq "-") { + if($DIR eq "+") { $DIR = "-"; } + else { $DIR = "+"; } + } $newline = "$CHR[0]\tfimo\tmotif\t$START\t$STOP\t$SCORE\t$DIR\t.\t$CHR[0]\_$START\_$STOP\_$DIR"; $EXISTS = 0; @@ -62,13 +62,13 @@ @SORT = sort { $$b{'score'} <=> $$a{'score'} } @COORD; for($x = 0; $x <= $#ID_NUM; $x++) { - @FILENAME = split(/\=/, $ID_NUM[$x]); - $FILE = "MOTIF$FILENAME[1]"; - open(OUT, ">$output/$FILE.gff") or die "Can't open $output/$FILE.gff for writing!\n"; - for($y = 0; $y <= $#SORT; $y++) { - if($SORT[$y]{'id'} eq $ID_NUM[$x]) { - print OUT $SORT[$y]{'line'},"\n"; - } - } - close OUT; + @FILENAME = split(/\=/, $ID_NUM[$x]); + $FILE = "MOTIF$FILENAME[1]"; + open(OUT, ">$output/$FILE.gff") or die "Can't open $output/$FILE.gff for writing!\n"; + for($y = 0; $y <= $#SORT; $y++) { + if($SORT[$y]{'id'} eq $ID_NUM[$x]) { + print OUT $SORT[$y]{'line'},"\n"; + } + } + close OUT; }