On Fri, Jul 31, 2009 at 10:19, <98447...@student.ucc.ie> wrote:
> This is what the file actually looks like. All fileds are
> separated by tabs
snip

The following script has visibly correct data and works.  This points
to your data being the problem.  Try this one-liner to see what you
data really looks like:

perl -nle 'print join ", ", map { "[$_]" } split /\t/' datafile

#!/usr/bin/perl

use strict;
use warnings;

my $fakefile = <<EOF;
HMU00030\t2522\t4840\t\tDNA gyrase subunit B
HMU00040\t4841\t5083\t\tputative membrane protein
HMU00050\t5080\t5739\tc\tputative periplasmic C39-family peptidase
HMU00060\t5739\t6549\tc\tputative inner membrane protein
EOF

open my $fh, "<", \$fakefile
        or die "could note create a fake file: $!";

while(<$fh>){
        my ($Gene, $Start, $Stop, $Strand, $Product) = split /\t/;
        if ($Strand eq "c"){
                print "$Gene\t-\t$Start\t$Stop\t$Product\n";
        } else {
                print "$Gene\t+\t$Start\t$Stop\t$Product\n";
        }
}

-- 
Chas. Owens
wonkden.net
The most important skill a programmer can have is the ability to read.

-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to