logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Bio::SearchIO::Writer::ResultTableWriter - Outputs tab-delimited data for each

Author

       Steve Chervitz <sac@bioperl.org>

       See the FEEDBACK section  for where to send bug reports and comments.

Description

       Bio::SearchIO::Writer::ResultTableWriter outputs data in tab-delimited format for each search result, one
       row per search result. This is a very coarse-grain level of information since it only includes data
       stored in the Bio::Search::Result::ResultI object itself and does not include any information about hits
       or HSPs.

       You most likely will never use this object but instead will use one of its subclasses:
       Bio::SearchIO::Writer::HitTableWriter or Bio::SearchIO::Writer::HSPTableWriter.

   AvailableColumns
       Here are the columns that can be specified in the "-columns" parameter when creating a ResultTableWriter
       object.  If a "-columns" parameter is not specified, this list, in this order, will be used as the
       default.

           query_name
           query_length
           query_description

       For more details about these columns, see the documentation for the corresponding method in
       Bio::Search::Result::ResultI.

Disclaimer

       This software is provided "as is" without warranty of any kind.

Feedback

MailingLists
       User feedback is an integral part of the evolution of this and other Bioperl modules.  Send your comments
       and suggestions preferably to one of the Bioperl mailing lists.  Your participation is much appreciated.

         bioperl-l@bioperl.org                  - General discussion
         http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

   Support
       Please direct usage questions or support issues to the mailing list:

       bioperl-l@bioperl.org

       rather than to the module maintainer directly. Many experienced and reponsive experts will be able look
       at the problem and quickly address it. Please include a thorough description of the problem with code and
       data examples if at all possible.

   ReportingBugs
       Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug
       reports can be submitted via the web:

         https://github.com/bioperl/bioperl-live/issues

Methods

to_string()
       Note: this method is not intended for direct use. The SearchIO::write_result() method calls it
       automatically if the writer is hooked up to a SearchIO object as illustrated in the SYNOPSIS section .

        Title     : to_string()
                  :
        Usage     : print $writer->to_string( $result_obj, [$include_labels] );
                  :
        Argument  : $result_obj = A Bio::Search::Result::ResultI object
                  : $include_labels = boolean, if true column labels are included (default: false)
                  :
        Returns   : String containing tab-delimited set of data for each hit
                  : in a ResultI object. Some data is summed across multiple HSPs.
                  :
        Throws    : n/a

   column_labels
        Usage     : print $result_obj->column_labels();
        Purpose   : Get column labels for to_string().
        Returns   : String containing column labels. Tab-delimited.
        Argument  : n/a
        Throws    : n/a

   end_report
        Title   : end_report
        Usage   : $self->end_report()
        Function: The method to call when ending a report, this is
                  mostly for cleanup for formats which require you to
                  have something at the end of the document.  Nothing for
                  a text message.
        Returns : string
        Args    : none

   filter
        Title   : filter
        Usage   : $writer->filter('hsp', \&hsp_filter);
        Function: Filter out either at HSP,Hit,or Result level
        Returns : none
        Args    : string => data type,
                  CODE reference

perl v5.32.1                                       2021-08-15             Bio::SearchIO::...sultTableWriter(3pm)

Name

       Bio::SearchIO::Writer::ResultTableWriter - Outputs tab-delimited data for each
       Bio::Search::Result::ResultI object.

See Also

       Bio::SearchIO::Writer::HitTableWriter, Bio::SearchIO::Writer::HSPTableWriter

Synopsis

Example1:Usingthedefaultcolumns
           use Bio::SearchIO;
           use Bio::SearchIO::Writer::ResultTableWriter;

           my $in = Bio::SearchIO->new();

           my $writer = Bio::SearchIO::Writer::ResultTableWriter->new();

           my $out = Bio::SearchIO->new( -writer => $writer );

           while ( my $result = $in->next_result() ) {
               $out->write_result($result, ($in->report_count - 1 ? 0 : 1) );
           }

   Example2:Specifyingasubsetofcolumns
           use Bio::SearchIO;
           use Bio::SearchIO::Writer::ResultTableWriter;

           my $in = Bio::SearchIO->new();

           my $writer = Bio::SearchIO::Writer::ResultTableWriter->new(
                                         -columns => [qw(
                                                         query_name
                                                         query_length
                                                         num_hits
                                                         )]  );

           my $out = Bio::SearchIO->new( -writer => $writer,
                                         -file   => ">result.out" );

           while ( my $result = $in->next_result() ) {
               $out->write_result($result, ($in->report_count - 1 ? 0 : 1) );
           }

   CustomLabels
       You can also specify different column labels if you don't want to use the defaults.  Do this by
       specifying a "-labels" hash reference parameter when creating the ResultTableWriter object.  The keys of
       the hash should be the column number (left-most column = 1) for the label(s) you want to specify. Here's
       an example:

           my $writer = Bio::SearchIO::Writer::ResultTableWriter->new(
                                      -columns => [qw( query_name
                                                       query_length
                                                       query_description
                                                       num_hits)],
                                      -labels  => { 1 => 'QUERY_GI',
                                                    2 => 'QUERY_LENGTH' } );

See Also