DOKK / manpages / debian 10 / libbio-perl-perl / Bio::PopGen::IO.3pm.en
Bio::PopGen::IO(3pm) User Contributed Perl Documentation Bio::PopGen::IO(3pm)

Bio::PopGen::IO - Input individual,marker,allele information

  use Bio::PopGen::IO;
  my $io = Bio::PopGen::IO->new(-format => 'csv',
                                -file   => 'data.csv');
  # Some IO might support reading in a population at a time
  my @population;
  while( my $ind = $io->next_individual ) {
      push @population, $ind;
  }

This is a generic interface to reading in population genetic data (of which there really isn't too many standard formats). This implementation makes it easy to provide your own parser for the data. You need to only implement one function next_individual. You can also implement next_population if your data has explicit information about population memberhsip for the indidviduals.

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

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

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.

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

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

Email jason-at-bioperl.org

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

 Title   : new
 Usage   : my $obj = Bio::PopGen::IO->new();
 Function: Builds a new Bio::PopGen::IO object 
 Returns : an instance of Bio::PopGen::IO
 Args    :

 Title   : format
 Usage   : $format = $stream->format()
 Function: Get the PopGen format
 Returns : PopGen format
 Args    : none

 Title   : next_individual
 Usage   : my $ind = $popgenio->next_individual;
 Function: Retrieve the next individual from a dataset
 Returns : L<Bio::PopGen::IndividualI> object
 Args    : none

 Title   : next_population
 Usage   : my $pop = $popgenio->next_population;
 Function: Retrieve the next population from a dataset
 Returns : L<Bio::PopGen::PopulationI> object
 Args    : none
 Note    : Many implementation will not implement this

 Title   : write_individual
 Usage   : $popgenio->write_individual($ind);
 Function: Write an individual out in the implementation format
 Returns : none
 Args    : L<Bio::PopGen::PopulationI> object(s)

 Title   : write_population
 Usage   : $popgenio->write_population($pop);
 Function: Write a population out in the implementation format
 Returns : none
 Args    : L<Bio::PopGen::PopulationI> object(s)
 Note    : Many implementation will not implement this

 Title   : newFh
 Usage   : $fh = Bio::SeqIO->newFh(-file=>$filename,-format=>'Format')
 Function: does a new() followed by an fh()
 Example : $fh = Bio::SeqIO->newFh(-file=>$filename,-format=>'Format')
           $sequence = <$fh>;   # read a sequence object
           print $fh $sequence; # write a sequence object
 Returns : filehandle tied to the Bio::SeqIO::Fh class
 Args    :

See Bio::SeqIO::Fh

 Title   : fh
 Usage   : $obj->fh
 Function:
 Example : $fh = $obj->fh;      # make a tied filehandle
           $sequence = <$fh>;   # read a sequence object
           print $fh $sequence; # write a sequence object
 Returns : filehandle tied to Bio::SeqIO class
 Args    : none

 Title   : _load_format_module
 Usage   : *INTERNAL Bio::PopGen::IO stuff*
 Function: Loads up (like use) a module at run time on demand
 Example : 
 Returns : 
 Args    :

 Title   : _guess_format
 Usage   : $obj->_guess_format($filename)
 Function:
 Example :
 Returns : guessed format of filename (lower case)
 Args    :
2018-10-27 perl v5.26.2