Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
Bio::Search::Hit::ModeUser(Contributed Perl DocumBio::Search::Hit::ModelHit(3)

       Bio::Search::Hit::ModelHit - A model-based implementation of the
       Bio::Search::Hit::HitI interface

	   use Bio::Search::Hit::ModelHit;
	   my $hit = Bio::Search::Hit::ModelHit->new(-algorithm	=> 'rnamotif');

	   # typically one gets	HitI objects from a SearchIO stream via	a ResultI
	   use Bio::SearchIO;
	   my $parser =	Bio::SearchIO->new(-format => 'infernal', -file	=> 'trap.inf');

	   my $result =	$parser->next_result;
	   my $hit    =	$result->next_hit;

       This object handles the hit data	from a database	search using models or
       descriptors instead of sequences, such as Infernal, HMMER, RNAMotif,

       Unless you're writing a parser, you won't ever need to create a
       ModelHit	or any other HitI-implementing object. If you use the SearchIO
       system, HitI objects are	created	automatically from a SearchIO stream
       which returns Bio::Search::Hit::HitI objects.

       Note that several HitI-based methods have been overridden from ModelHit
       due to their unreliability when dealing with queries that aren't
       sequence-based. It may be possible to reimplement these at a later
       point, but for the time being they will throw warnings and return w/o

       For documentation on what you can do with ModelHit (and other HitI
       objects), please	see the	API documentation in Bio::Search::Hit::HitI.

   Mailing Lists
       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.			- General discussion	- About	the mailing lists

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

       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.

   Reporting Bugs
       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

AUTHOR - Chris Fields
       Email cjfields at bioperl dot org

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

HitI methods implemented in parent class Bio::Search::Hit::ModelHit
	Title	: new
	Usage	: my $obj = Bio::Search::Hit::ModelHit->new();
	Function: Builds a new Bio::Search::Hit::ModelHit object
	Returns	: Bio::Search::Hit::ModelHit
	Args	: -name		=> Name	of Hit (required)
		  -description	=> Description (optional)
		  -accession	=> Accession number (optional)
		  -ncbi_gi	=> NCBI	GI UID (optional)
		  -length	=> Length of the Hit (optional)
		  -score	=> Raw Score for the Hit (optional)
		  -bits		=> Bit Score for the Hit (optional)
		  -significance	=> Significance	value for the Hit (optional)
		  -algorithm	=> Algorithm used (BLASTP, FASTX, etc...)
		  -hsps		=> Array ref of	HSPs for this Hit.
		  -found_again	=> boolean, true if hit	appears	in a
				   "previously found" section of a PSI-Blast report.
		  -hsp_factory	=> Bio::Factory::ObjectFactoryI	able to	create HSPI

	Title	: add_hsp
	Usage	: $hit->add_hsp($hsp)
	Function: Add a	HSP to the collection of HSPs for a Hit
	Returns	: number of HSPs in the	Hit
	Args	: Bio::Search::HSP::HSPI object, OR hash ref containing	data suitable
		  for creating a HSPI object (&hsp_factory must	be set to get it back)

	Title	: hsp_factory
	Usage	: $hit->hsp_factory($hsp_factory)
	Function: Get/set the factory used to build HSPI objects if necessary.
	Returns	: Bio::Factory::ObjectFactoryI
	Args	: Bio::Factory::ObjectFactoryI

   Bio::Search::Hit::HitI methods
       Implementation of Bio::Search::Hit::HitI	methods

	Title	: name
	Usage	: $hit_name = $hit->name();
	Function: returns the name of the Hit sequence
	Returns	: a scalar string
	Args	: [optional] scalar string to set the name

	Title	: accession
	Usage	: $acc = $hit->accession();
	Function: Retrieve the accession (if available)	for the	hit
	Returns	: a scalar string (empty string	if not set)
	Args	: none

	Title	: description
	Usage	: $desc	= $hit->description();
	Function: Retrieve the description for the hit
	Returns	: a scalar string
	Args	: [optional] scalar string to set the description

	Title	: length
	Usage	: my $len = $hit->length
	Function: Returns the length of	the hit
	Returns	: integer
	Args	: [optional] integer to	set the	length

	Title	: algorithm
	Usage	: $alg = $hit->algorithm();
	Function: Gets the algorithm specification that	was used to obtain the hit
		  For BLAST, the algorithm denotes what	type of	sequence was aligned
		  against what (BLASTN:	dna-dna, BLASTP	prt-prt, BLASTX	translated
		  dna-prt, TBLASTN prt-translated dna, TBLASTX translated
		  dna-translated dna).
	Returns	: a scalar string
	Args	: [optional] scalar string to set the algorithm

	Title	: raw_score
	Usage	: $score = $hit->raw_score();
	Function: Gets the "raw	score" generated by the	algorithm.  What
		  this score is	exactly	will vary from algorithm to algorithm,
		  returning undef if unavailable.
	Returns	: a scalar value
	Args	: [optional] scalar value to set the raw score

       Equivalent to raw_score()

	Title	: significance
	Usage	: $significance	= $hit->significance();
	Function: Used to obtain the E or P value of a hit, i.e. the probability that
		  this particular hit was obtained purely by random chance.  If
		  information is not available (nor calculatable from other
		  information sources),	return undef.
	Returns	: a scalar value or undef if unavailable
	Args	: [optional] scalar value to set the significance

	Usage	  : $hit_object->bits();
	Purpose	  : Gets the bit score of the best HSP for the current hit.
	Example	  : $bits = $hit_object->bits();
	Returns	  : Integer or undef if	bit score is not set
	Argument  : n/a
	Comments  : For	BLAST1,	the non-bit score is listed in the summary line.

       See Also	  : score()

	Title	 : next_hsp
	Usage	 : while( $hsp = $obj->next_hsp()) { ... }
	Function : Returns the next available High Scoring Pair
	Example	 :
	Returns	 : Bio::Search::HSP::HSPI object or null if finished
	Args	 : none

	Usage	  : $hit_object->hsps();
	Purpose	  : Get	a list containing all HSP objects.
		  : Get	the numbers of HSPs for	the current hit.
	Example	  : @hsps = $hit_object->hsps();
		  : $num  = $hit_object->hsps();  # alternatively, use num_hsps()
	Returns	  : Array context : list of objects.
		  : Scalar context: integer (number of HSPs).
		  :		    (Equivalent	to num_hsps()).
	Argument  : n/a. Relies	on wantarray
	Throws	  : Exception if the HSPs have not been	collected.

       See Also	  : hsp(), num_hsps()

	Usage	  : $hit_object->num_hsps();
	Purpose	  : Get	the number of HSPs for the present hit.
	Example	  : $nhsps = $hit_object->num_hsps();
	Returns	  : Integer or '-' if HSPs have	not been callected
	Argument  : n/a

       See Also	  : hsps()

	Title	: rewind
	Usage	: $hit->rewind;
	Function: Allow	one to reset the HSP iterator to the beginning
		  Since	this is	an in-memory implementation
	Returns	: none
	Args	: none

	Usage	  : $ambig_code	= $hit_object->ambiguous_aln();
	Purpose	  : Sets/Gets ambiguity	code data member.
	Example	  : (see usage)
	Returns	  : String = 'q', 's', 'qs', '-'
		  :   'q'  = query sequence contains overlapping sub-sequences
		  :	     while sbjct does not.
		  :   's'  = sbjct sequence contains overlapping sub-sequences
		  :	     while query does not.
		  :   'qs' = query and sbjct sequence contains overlapping sub-sequences
		  :	     relative to each other.
		  :   '-'  = query and sbjct sequence do not contains multiple domains
		  :	     relative to each other OR both contain the	same distribution
		  :	     of	similar	domains.
	Argument  : n/a
	Throws	  : n/a
	Comment	  : Note: "sbjct" is synonymous	with "hit"

       See documentation in Bio::Search::Hit::HitI::overlap()

	Usage	  : $hit_object->n();
	Purpose	  : Gets the N number for the current hit.
		  : This is the	number of HSPs in the set which	was ascribed
		  : the	lowest P-value (listed on the description line).
		  : This number	is not the same	as the total number of HSPs.
		  : To get the total number of HSPs, use num_hsps().
	Example	  : $n = $hit_object->n();
	Returns	  : Integer
	Argument  : n/a
	Throws	  : Exception if HSPs have not been set.
	Comments  : Calling n()	on such	reports	will result in a call to num_hsps().
		  : The	num_hsps() method will count the actual	number of
		  : HSPs in the	alignment listing, which may exceed N in
		  : some cases.

       See Also	  : num_hsps()

	Usage	  : $hit_object->p( [format] );
	Purpose	  : Get	the P-value for	the best HSP
	Example	  : $p =  $sbjct->p;
		  : $p =  $sbjct->p('exp');  # get exponent only.
		  : ($num, $exp) =  $sbjct->p('parts');	 # split sci notation into parts
	Returns	  : Float or scientific	notation number	(the raw P-value, DEFAULT).
		  : Integer if format == 'exp' (the magnitude of the base 10 exponent).
		  : 2-element list (float, int)	if format == 'parts' and P-value
		  :		   is in scientific notation (See Comments).
	Argument  : format: string of 'raw' | 'exp' | 'parts'
		  :    'raw' returns value given in report. Default. (1.2e-34)
		  :    'exp' returns exponent value only (34)
		  :    'parts' returns the decimal and exponent	as a
		  :	       2-element list (1.2, -34) (See Comments).
	Throws	  : Warns if no	P-value	is defined. Uses expect	instead.
	Comments  : Using the 'parts' argument is not recommended since	it will	not
		  : work as expected if	the P-value is not in scientific notation.
		  : That is, floats are	not converted into sci notation	before
		  : splitting into parts.

       See Also	  : expect(), signif(),

	Usage	  : $hit_object->hsp( [string] );
	Purpose	  : Get	a single HSPI object for the present HitI object.
	Example	  : $hspObj  = $hit_object->hsp;  # same as 'best'
		  : $hspObj  = $hit_object->hsp('best');
		  : $hspObj  = $hit_object->hsp('worst');
	Returns	  : Object reference for a object.
	Argument  : String (or no argument).
		  :   No argument (default) = highest scoring HSP (same	as 'best').
		  :   'best' or	'first'	= highest scoring HSP.
		  :   'worst' or 'last'	= lowest scoring HSP.
	Throws	  : Exception if the HSPs have not been	collected.
		  : Exception if an unrecognized argument is used.

       See Also	  : hsps(), num_hsps()

	Title	: rank
	Usage	: $obj->rank($newval)
	Function: Get/Set the rank of this Hit in the Query search list
		  i.e. this is the Nth hit for a specific query
	Returns	: value	of rank
	Args	: newvalue (optional)

	Title	: locus
	Usage	: $locus = $hit->locus();
	Function: Retrieve the locus (if available) for	the hit
	Returns	: a scalar string (empty string	if not set)
	Args	: none

	Title	: each_accession_number
	Usage	: @each_accession_number = $hit->each_accession_number();
	Function: Get each accession number listed in the description of the hit.
		  If there are no alternatives,	then only the primary accession	will
		  be given
	Returns	: list of all accession	numbers	in the description
	Args	: none

       See documentation in Bio::Search::SearchUtils::tile_hsps()

	Title	: query_length
	Usage	: $obj->query_length($newval)
	Function: Get/Set the query_length
	Returns	: value	of query_length	(a scalar)
	Args	: on set, new value (a scalar or undef,	optional)

	Title	: ncbi_gi
	Usage	: $acc = $hit->ncbi_gi();
	Function: Retrieve the NCBI Unique ID (aka the GI #),
		  if available,	for the	hit
	Returns	: a scalar string (empty string	if not set)
	Args	: none
	Note	: As of	Sept. 2016 NCBI	records	will no	longer have a
		  GI; this attributue will remain in place for older

ModelHit methods overridden in ModelHit
       The following methods have been overridden due to their current
       reliance	on sequence-based queries. They	may be implemented in future
       versions	of this	class.

perl v5.32.0			  2019-12-07	 Bio::Search::Hit::ModelHit(3)

NAME | SYNOPSIS | DESCRIPTION | FEEDBACK | AUTHOR - Chris Fields | APPENDIX | HitI methods implemented in parent class Bio::Search::Hit::ModelHit | ModelHit methods overridden in ModelHit

Want to link to this manual page? Use this URL:

home | help