Bio::FastParsers::Blast::Table(3)

NAME
Bio::FastParsers::Blast::Table - Front-end class for tabular BLAST parser

VERSION
version 0.221230

SYNOPSIS
    use aliased 'Bio::FastParsers::Blast::Table';

    # open and parse BLAST report in tabular format
    my $infile = 'test/blastp.m9';
    my $report = Table->new( file => $infile );

    # loop through hsps
    while (my $hsp = $report->next_hsp) {
        my ($hit_id, $evalue) = ($hsp->hit_id, $hsp->evalue);
        # ...
    }

    # ...

    my $infile = 'test/multiquery-blastp.m9';
    my $report = Table->new( file => $infile );

    # loop through first hits for each query
    while (my $first_hit = $report->next_query) {
        my ($hit_id, $evalue) = ($hsp->hit_id, $hsp->evalue);
        # ...
    }

DESCRIPTION
This module implements a parser for the standard tabular output format of the BLAST program (e.g., "-outfmt 7"). It provides methods for iterating over queries, hits and HSPs (e.g., "next_hsp"). Individual HSPs can then be queried using methods described in Bio::FastParsers::Blast::Table::Hsp.

ATTRIBUTES

  file
Path to BLAST report file in tabular format (m8/m9 or now 6/7) to be parsed

METHODS

  next_hsp
Shifts the first HSP of the report off and returns it, shortening the report by 1 and moving everything down. If there are no more HSPs in the report, returns "undef".

    # $report is a Bio::FastParsers::Blast::Table
    while (my $hsp = $report->next_hsp) {
        # process $hsp
        # ...
    }

This method does not accept any arguments.

  next_hit
Directly returns the first HSP of the next hit, skipping any remaining HSPs for the current hit in the process. If there are no more hits in the report, returns "undef". Useful for processing only the first HSP of each hit.

    # $report is a Bio::FastParsers::Blast::Table
    while (my $first_hsp = $report->next_hit) {
        # process $first_hsp
        # ...
    }

This method does not accept any arguments.

  next_query
Directly returns the first HSP of the next query, skipping any remaining HSPs for the current query in the process. If there are no more queries in the report, returns "undef". Useful for processing only the first hit of each query.

    # $report is a Bio::FastParsers::Blast::Table
    while (my $first_hit = $report->next_query) {
        # process $first_hit
        # ...
    }

This method does not accept any arguments.

AUTHOR
Denis BAURAIN <denis.baurain@uliege.be>

COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by University of Liege / Unit of Eukaryotic Phylogenomics / Denis BAURAIN.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.