Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Text file editing_perl-GFF

    I would like to get the help of computer experts, in editing my GFF file

    Code:
    ##dsfsd2
    ##sdf-sdf sasg 5.6.3
    gi34_ex Gen  CDS     161     317     .       +       .       Name=Xm ZAK;created by=User
    gi56_ex Gen  CDS     2194    2280    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     2848    2951    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     4554    4619    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     4729    4756    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  extracted region        1       11677   .       +       .       Name=Extracted region from gi|371443185|gb|JH556675.1|;Extracted interval="1960862 -> 1972538"
    Note that following from third row, the input has 12 ($1 to $12) columns, tab separated. The last line of the file has 16 ($1 to $16) columns, tab separated. ## lines should be ignored.

    I want to take $14 of the last line (interval="1960862) only the number (1960862) add to $4 column (161,2194,2848..4729) i.e (161+1960862=1961023,2194+1960862=1963056..) and to $5 column (317,2280,2951..4756) i.e (317+1960862=1961179,2280+1960862=1963142), ignore the last line.

    The output should look like this:

    Code:
    ##dsfsd2
    ##sdf-sdf sasg 5.6.3
    gi34_ex Gen  CDS     1961023     1961179     .       +       .       Name=Xm ZAK;created by=User
    gi56_ex Gen  CDS     1963056    1963142    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     1963710    1963813    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     1965416    1965481    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  CDS     1965591    1965618    .       +       .       Name=Xm ZAK;created by=User
    gi37_ex Gen  extracted region        1       11677   .       +       .       Name=Extracted region from gi|371443185|gb|JH556675.1|;Extracted interval="1960862 -> 1972538"

    I have used perl script as below.But it has some errors, it outputs the same result

    Code:
    #!/usr/bin/perl
    use warnings;
    use strict;
    
    open my $IN, '<', '1.in' or die $!;
    
    my $line;
    $line = $_ while <$IN>;                 # Remember the last line.
    my $last = $.;                          # Remember the number of the last line.
    
    my $interval = (split /\t/, $line)[13]; # Extract the 14th column.
    $interval =~ s/[^0-9]+//;               # Keep only the number.
    
    seek $IN, 0, 0;                         # Rewind to the beginning of the input.
    $. = 0;                                 # Restart the line counter.
    my $start = 1;                          # Flag to skip first lines.
    while (<$IN>) {
        my @columns = split /\t/;
        /^##/ or undef $start;              # Unset start if the header is over.
        if (not ($start or $. == $last)) {  # Not header or last line?
            $_ += $interval for @columns[3, 4];
        }
        print join "\t", @columns;
    }
    Any help in perl is appreciated.

Latest Articles

Collapse

  • seqadmin
    Genetic Variation in Immunogenetics and Antibody Diversity
    by seqadmin



    The field of immunogenetics explores how genetic variations influence immune responses and susceptibility to disease. In a recent SEQanswers webinar, Oscar Rodriguez, Ph.D., Postdoctoral Researcher at the University of Louisville, and Ruben Martínez Barricarte, Ph.D., Assistant Professor of Medicine at Vanderbilt University, shared recent advancements in immunogenetics. This article discusses their research on genetic variation in antibody loci, antibody production processes,...
    11-06-2024, 07:24 PM
  • seqadmin
    Choosing Between NGS and qPCR
    by seqadmin



    Next-generation sequencing (NGS) and quantitative polymerase chain reaction (qPCR) are essential techniques for investigating the genome, transcriptome, and epigenome. In many cases, choosing the appropriate technique is straightforward, but in others, it can be more challenging to determine the most effective option. A simple distinction is that smaller, more focused projects are typically better suited for qPCR, while larger, more complex datasets benefit from NGS. However,...
    10-18-2024, 07:11 AM

ad_right_rmr

Collapse

News

Collapse

Topics Statistics Last Post
Started by seqadmin, 11-01-2024, 06:09 AM
0 responses
29 views
0 likes
Last Post seqadmin  
Started by seqadmin, 10-30-2024, 05:31 AM
0 responses
21 views
0 likes
Last Post seqadmin  
Started by seqadmin, 10-24-2024, 06:58 AM
0 responses
26 views
0 likes
Last Post seqadmin  
Started by seqadmin, 10-23-2024, 08:43 AM
0 responses
57 views
0 likes
Last Post seqadmin  
Working...
X