Bio::Map::physical - A class for handling a Physical Map (such as FPC)
use Bio::MapIO;
## accquire a Bio::Map::physical using Bio::MapIO::fpc
my $mapio = new Bio::MapIO(-format => "fpc",-file => "rice.fpc",
-readcor => 0);
my $physical = $mapio->next_map();
## get all the markers ids
foreach my $marker ( $physical->each_markerid() ) {
print "Marker $marker\n";
## acquire the marker object using Bio::Map::fpcmarker
my $markerobj = $physical->get_markerobj($marker);
## get all the clones hit by this marker
foreach my $clone ($markerobj->each_cloneid() ) {
print " +++$clone\n";
}
}
This class is basically a continer class for a collection of Contig maps and other physical map information.
Bio::Map::physical has been taylored to work for FPC physical maps, but could probably be used for others as well (with the appropriate MapIO module).
This class also has some methods with specific functionalities:
print_gffstyle() : Generates GFF; either Contigwise[Default] or
Groupwise
print_contiglist() : Prints the list of Contigs, markers that hit the
contig, the global position and whether the marker
is a placement (<P>) or a Framework (<F>) marker.
print_markerlist() : Prints the markers list; contig and corresponding
number of clones.
matching_bands() : Given two clones [and tolerence], this method
calculates how many matching bands do they have.
coincidence_score() : Given two clones [,tolerence and gellen], this
method calculates the Sulston Coincidence score.
For faster access and better optimization, the data is stored internally in hashes. The corresponding objects are created on request.
These methods let you get and set the member variables
Title : version
Usage : my $version = $map->version();
Function: returns the version of the program used to
generate this map
Returns : scalar representing the version
Args : scalar representing the version
Title : modification_user Usage : my $modification_user = $map->modification_user(); Function: returns the name of the user who last modified this map Returns : scalar representing the username Args : [optional] scalar representing the username
Title : group_type
Usage : $map->group_type($grptype); _or_
my $grptype = $map->group_type();
Function: get/set the group type of this map
Returns : scalar representing the group type
Args : if provided, the current group type of this map
will be set to $grptype.
Title : group_abbr
Usage : $map->group_abbr($grpabbr); _or_
my $grpabbr = $map->group_abbr();
Function: get/set the group abbrev of this map
Returns : string representing the group abbrev
Args : if provided, the current group abbrev of this map
will be set to $grpabbr.
Title : core_exists
Usage : my $core_exists = $map->core_exists();
Function: returns true if the FPC file is accompanied by COR file,
else false
Returns : 1 / 0 depending on whether the COR file is present or not.
Args : 1 / 0 indicating the presence of COR file
Title : each_cloneid Usage : my @clones = $map->each_cloneid(); Function: returns an array of clone names Returns : list of clone names Args : none
Title : get_cloneobj
Usage : my $cloneobj = $map->get_cloneobj('CLONEA');
Function: returns an object of the clone given in the argument
Returns : object of the clone
Args : scalar representing the clone name
Title : each_markerid Usage : my @markers = $map->each_markerid(); Function: returns list of marker names Returns : list of marker names Args : none
Title : get_markerobj
Usage : my $markerobj = $map->get_markerobj('MARKERA');
Function: returns an object of the marker given in the argument
Returns : object of the marker
Args : scalar representing the marker name
Title : each_contigid Usage : my @contigs = $map->each_contigid(); Function: returns a list of contigs (numbers) Returns : list of contigs Args : none
Title : get_contigobj
Usage : my $contigobj = $map->get_contigobj('CONTIG1');
Function: returns an object of the contig given in the argument
Returns : object of the contig
Args : scalar representing the contig number
Title : matching_bands
Usage : $self->matching_bands('cloneA','cloneB',[$tol]);
Function: given two clones [and tolerence], this method calculates how many
matching bands do they have.
(this method is ported directly from FPC)
Returns : scalar representing the number of matching bands
Args : names of the clones ('cloneA', 'cloneB') [Default tolerence=7]
Title : coincidence_score
Usage : $self->coincidence_score('cloneA','cloneB'[,$tol,$gellen]);
Function: given two clones [,tolerence and gellen], this method calculates
the Sulston Coincidence score.
(this method is ported directly from FPC)
Returns : scalar representing the Sulston coincidence score.
Args : names of the clones ('cloneA', 'cloneB')
[Default tol=7 gellen=3300.0]
Title : print_contiglist
Usage : $map->print_contiglist([showall]); #[Default 0]
Function: prints the list of contigs, markers that hit the contig, the
global position and whether the marker is a placement (P) or
a Framework (F) marker.
Returns : none
Args : [showall] [Default 0], 1 includes all the discrepant markers
Title : print_markerlist
Usage : $map->print_markerlist();
Function : prints the marker list; contig and corresponding number of
clones for each marker.
Returns : none
Args : none
Title : print_gffstyle
Usage : $map->print_gffstyle([style]);
Function : prints GFF; either Contigwise (default) or Groupwise
Returns : none
Args : [style] default = 0 contigwise, else
1 groupwise (chromosome-wise).
Title : _calc_contigposition Usage : $map->_calc_contigposition(); Function: calculates the position of the contig in the group Returns : none Args : none
Title : _calc_contiggroup Usage : $map->_calc_contiggroup(); Function: calculates the group of the contig Returns : none Args : none
Title : _set<Type>Ref
Usage : These are used for initializing the reference of the hash in
Bio::MapIO (fpc.pm) to the corresponding hash in Bio::Map
(physical.pm). Should be used only from Bio::MapIO System.
$map->setCloneRef(\%_clones);
$map->setMarkerRef(\%_markers);
$map->setContigRef(\%_contigs);
Function: sets the hash references to the corresponding hashes
Returns : none
Args : reference of the hash.
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/MailList.shtml - About the mailing lists
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 email or the web:
bioperl-bugs@bioperl.org http://bugzilla.bioperl.org/
Email will@agcol.arizona.edu
The project was done in Arizona Genomics Computational Laboratory (AGCoL) at University of Arizona.
This work was funded by USDA-IFAFS grant #11180 titled ``Web Resources for the Computation and Display of Physical Mapping Data''.
For more information on this project, please refer: http://www.agcol.arizona.edu
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _