![]() |
![]()
| ![]() |
![]()
NAMEBio::SeqIO::mbsout - input stream for output by Teshima et al.'s mbs. SYNOPSISDo not use this module directly. Use it via the Bio::SeqIO class. DESCRIPTIONmbs (Teshima KM, Innan H (2009) mbs: modifying Hudson's ms software to generate samples of DNA sequences with a biallelic site under selection. BMC Bioinformatics 10: 166 ) can be found at http://www.biomedcentral.com/1471-2105/10/166/additional/. Currently this object can be used to read output from mbs into seq objects. However, because bioperl has no support for haplotypes created using an infinite sites model (where '1' identifies a derived allele and '0' identifies an ancestral allele), the sequences returned by mbsout are coded using A, T, C and G. To decode the bases, use the sequence conversion table (a hash) returned by get_base_conversion_table(). In the table, 4 and 5 are used when the ancestry is unclear. This should not ever happen when creating files with mbs, but it will be used when creating mbsOUT files from a collection of seq objects ( To be added later ). Alternatively, use get_next_hap() to get a string with 1's and 0's instead of a seq object. FEEDBACKMailing ListsUser 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 Reporting BugsReport 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 AUTHOR - Warren KretzschmarThis module was written by Warren Kretzschmar email: wkretzsch@gmail.com This module grew out of a parser written by Aida Andres. COPYRIGHTPublic Domain NoticeThis software/database is ``United States Government Work'' under the terms of the United States Copyright Act. It was written as part of the authors' official duties for the United States Government and thus cannot be copyrighted. This software/database is freely available to the public for use without a copyright notice. Restrictions cannot be placed on its present or future use. Although all reasonable efforts have been taken to ensure the accuracy and reliability of the software and data, the National Human Genome Research Institute (NHGRI) and the U.S. Government does not and cannot warrant the performance or results that may be obtained by using this software or data. NHGRI and the U.S. Government disclaims all warranties as to performance, merchantability or fitness for any particular purpose. METHODSINTERNAL METHODS_initialize Title : _initialize Usage : $stream =
Bio::SeqIO::mbsout->new($infile) Function: extracts basic information
about the file. Returns : Bio::SeqIO object Args : no_og Details : include
'no_og' flag = 0 if the last population of an mbsout file
_read_start Title : _read_start Usage : $stream->_read_start() Function: reads from the filehandle $stream->{_filehandle} all information up to the first haplotype (sequence). Returns : void Args : none Methods to retrieve mbsout dataget_segsites Title : get_segsites Usage : $segsites = $stream->get_segsites() Function: returns the number segsites in the mbsout file (according to the mbsout header line). Returns : scalar Args : NONE get_current_run_segsites Title : get_current_run_segsites Usage : $segsites = $stream->get_current_run_segsites() Function: returns the number of segsites in the run of the last read haplotype (sequence). Returns : scalar Args : NONE get_pop_mut_param_per_site Title : get_pop_mut_param_per_site Usage : $pop_mut_param_per_site = $stream->get_pop_mut_param_per_site() Function: returns 4*N0*mu or the "population mutation parameter per site" Returns : scalar Args : NONE get_pop_recomb_param_per_site Title : get_pop_recomb_param_per_site Usage : $pop_recomb_param_per_site = $stream->get_pop_recomb_param_per_site() Function: returns 4*N0*r or the "population recombination parameter per site" Returns : scalar Args : NONE get_nsites Title : get_nsites Usage : $nsites = $stream->get_nsites() Function: returns the number of sites simulated by mbs. Returns : scalar Args : NONE get_selpos Title : get_selpos Usage : $selpos = $stream->get_selpos() Function: returns the location on the chromosome where the allele is located that was selected for by mbs. Returns : scalar Args : NONE get_nreps Title : get_nreps Usage : $nreps = $stream->get_nreps() Function: returns the number replications done by mbs on each trajectory file to create the mbsout file. Returns : scalar Args : NONE get_nfiles Title : get_nfiles Usage : $nfiles = $stream->get_nfiles() Function: returns the number of trajectory files used by mbs to create the mbsout file Returns : scalar Args : NONE get_traj_filename Title : get_traj_filename Usage : $traj_filename = $stream->get_traj_filename() Function: returns the prefix of the trajectory files used by mbs to create the mbsout file Returns : scalar Args : NONE get_runs Title : get_runs Usage : $runs = $stream->get_runs() Function: returns the number of runs in the mbsout file Returns : scalar Args : NONE get_Positions Title : get_Positions Usage : @positions = $stream->get_Positions() Function: returns an array of the names of each segsite of the run of the last read hap. Returns : array Args : NONE get_tot_run_haps Title : get_tot_run_haps Usage : $number_of_haps_per_run = $stream->get_tot_run_haps() Function: returns the number of haplotypes (sequences) in each run of the mbsout file. Returns : scalar >= 0 Args : NONE get_mbs_info_line Title : get_mbs_info_line Usage : $mbs_info_line = $stream->get_mbs_info_line() Function: returns the header line of the mbsout file. Returns : scalar Args : NONE tot_haps Title : tot_haps Usage : $number_of_haplotypes_in_file = $stream->tot_haps() Function: returns the number of haplotypes (sequences) in the mbsout file. Information gathered from mbsout header line. Returns : scalar Args : NONE next_run_num Title : next_run_num Usage :
$next_run_number =
$stream->next_run_num() Function: returns
the number of the mbs run that the next haplotype (sequence)
get_last_haps_run_num Title : get_last_haps_run_num Usage :
$last_haps_run_number =
$stream->get_last_haps_run_num() Function:
returns the number of the ms run that the last haplotype (sequence)
get_last_read_hap_num Title : get_last_read_hap_num Usage :
$last_read_hap_num =
$stream->get_last_read_hap_num()
outgroup Title : outgroup Usage : $outgroup =
$stream->outgroup() Function: returns '1'
if the mbsout object has an outgroup. Returns '0'
Currently there exists no way of introducing an outgroup into an mbs file, so this function will always return '0'. get_next_seq Title : get_next_seq Usage : $seq =
$stream->get_next_seq() Function: reads
and returns the next sequence (haplotype) in the stream Returns : Bio::Seq
object Args : NONE Note : This function is included only to conform to
convention. It only
get_next_hap Title : get_next_hap Usage : $seq =
$stream->get_next_hap() Function: reads
and returns the next sequence (haplotype) in the stream. Returns
get_next_run Title : get_next_run Usage : @seqs =
$stream->get_next_run() Function: reads
and returns all the remaining sequences (haplotypes) in the mbs
METHODS TO RETRIEVE CONSTANTSbase_conversion_table Title : get_base_conversion_table Usage :
$table_hash_ref =
$stream->get_base_conversion_table()
Function: returns a reference to a hash. The keys of the hash are the
letters
# retrieve the Bio::Seq object's sequence my $haplotype = $seq->seq; my $rh_base_conversion_table = $stream->get_base_conversion_table(); # need to convert all letters to their corresponding numbers. foreach my $base (keys %{$rh_base_conversion_table}){ $haplotype =~ s/($base)/$rh_base_conversion_table->{$base}/g; } # $haplotype is now an ms style haplotype. (e.g. '100101101455')
|