Mercurial > repos > matces > carpet_toolsuite
view carpet-src-1/tools/CARPET/gff2bed_v2.pl @ 0:cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
author | matces |
---|---|
date | Tue, 07 Jun 2011 16:50:41 -0400 |
parents | |
children |
line wrap: on
line source
#! /usr/bin/perl # Copyright 2009 Matteo Cesaroni, Lucilla Luzi # # This program is free software; ; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 3 of the License, or (at your # option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. $fname=$ARGV[0]; #legge il nome del file che gli passi dopo il comando $col3=$ARGV[1]; qx {sort -k 1,1 -k 4,4n $fname >$fname.sortato}; open(FILE, "< $fname.sortato") or die "Cannot find file $fname\n"; @array=<FILE>; print "track type=wiggle_0 name=\"$col3\" description=\"raw_data ratio\" visibility=full autoscale=off maxHeightPixels=100:50:20 color=200,100,0 altColor=0,100,200 \n"; for ($i=0;$i<$#array;$i++){ @array_new= split("\t",$array[$i]); @array_new2=split("\t",$array[$i+1]); $dist=$array_new[4]-$array_new2[3]; if (($array_new[4]>=$array_new2[3])&&("$array_new[0]"eq"$array_new2[0]")){ $fine=$array_new2[3]-1; } else { $fine=$array_new[4]; } print "$array_new[0]\t$array_new[3]\t$fine\t$array_new[5]\n"; } @array_fine=split("\t", $array[$#array]); print "$array_fine[0]\t$array_fine[3]\t$array_fine[4]\t$array_fine[5]\n"; close FILE;