Package org.biojava.nbio.core.alignment
Class SimpleSequencePair<S extends Sequence<C>,C extends Compound>
- java.lang.Object
-
- org.biojava.nbio.core.alignment.SimpleProfile<S,C>
-
- org.biojava.nbio.core.alignment.SimpleSequencePair<S,C>
-
- Type Parameters:
S
- each element of the alignmentProfile
is of type SC
- each element of anAlignedSequence
is aCompound
of type C
- All Implemented Interfaces:
Serializable
,Iterable<AlignedSequence<S,C>>
,Profile<S,C>
,SequencePair<S,C>
public class SimpleSequencePair<S extends Sequence<C>,C extends Compound> extends SimpleProfile<S,C> implements SequencePair<S,C>
Implements a data structure for the results of pairwise sequence alignment.- Author:
- Mark Chapman, Paolo Pavan
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.biojava.nbio.core.alignment.template.Profile
Profile.StringFormat
-
-
Field Summary
-
Fields inherited from class org.biojava.nbio.core.alignment.SimpleProfile
matrix
-
-
Constructor Summary
Constructors Constructor Description SimpleSequencePair(AlignedSequence<S,C> query, AlignedSequence<S,C> target)
Creates a pair profile for the given already aligned sequences.SimpleSequencePair(S query, S target, List<AlignedSequence.Step> sx, int xb, int xa, List<AlignedSequence.Step> sy, int yb, int ya)
Creates a pair profile for the given sequences with a local alignment.SimpleSequencePair(S query, S target, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)
Creates a pair profile for the given sequences with a global alignment.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description C
getCompoundInQueryAt(int alignmentIndex)
Returns theCompound
in query sequence at given column index in alignment.C
getCompoundInTargetAt(int alignmentIndex)
Returns theCompound
in target sequence at given column index in alignment.int
getIndexInQueryAt(int alignmentIndex)
Returns the query index corresponding to a given alignment column.int
getIndexInQueryForTargetAt(int targetIndex)
Returns the query index corresponding to a given target index.int
getIndexInTargetAt(int alignmentIndex)
Returns the target index corresponding to a given alignment column.int
getIndexInTargetForQueryAt(int queryIndex)
Returns the target index corresponding to a given query index.int
getNumIdenticals()
Returns the number of indices for which both the query and target sequences have an identicalCompound
.int
getNumSimilars()
Returns the number of indices for which both the query and target sequences have a similarCompound
.double
getPercentageOfIdentity(boolean countGaps)
Returns the percentage of identity between the two sequences in the alignment as a fraction between 0 and 1.AlignedSequence<S,C>
getQuery()
Returns the firstAlignedSequence
of the pair.AlignedSequence<S,C>
getTarget()
Returns the secondAlignedSequence
of the pair.-
Methods inherited from class org.biojava.nbio.core.alignment.SimpleProfile
getAlignedSequence, getAlignedSequence, getAlignedSequences, getAlignedSequences, getAlignedSequences, getCompoundAt, getCompoundAt, getCompoundCountsAt, getCompoundCountsAt, getCompoundsAt, getCompoundSet, getCompoundWeightsAt, getCompoundWeightsAt, getIndexOf, getIndicesAt, getLastIndexOf, getLength, getOriginalSequences, getSize, getSubProfile, hasGap, isCircular, iterator, toString, toString, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Methods inherited from interface org.biojava.nbio.core.alignment.template.Profile
getAlignedSequence, getAlignedSequence, getAlignedSequences, getAlignedSequences, getAlignedSequences, getCompoundAt, getCompoundAt, getCompoundCountsAt, getCompoundCountsAt, getCompoundsAt, getCompoundSet, getCompoundWeightsAt, getCompoundWeightsAt, getIndexOf, getIndicesAt, getLastIndexOf, getLength, getOriginalSequences, getSize, getSubProfile, hasGap, isCircular, toString, toString, toString
-
-
-
-
Constructor Detail
-
SimpleSequencePair
public SimpleSequencePair(AlignedSequence<S,C> query, AlignedSequence<S,C> target)
Creates a pair profile for the given already aligned sequences.- Parameters:
query
- the first sequence of the pairtarget
- the second sequence of the pair- Throws:
IllegalArgumentException
- if sequences differ in size
-
SimpleSequencePair
public SimpleSequencePair(S query, S target, List<AlignedSequence.Step> sx, List<AlignedSequence.Step> sy)
Creates a pair profile for the given sequences with a global alignment.- Parameters:
query
- the first sequence of the pairtarget
- the second sequence of the pairsx
- lists whether the query sequence aligns aCompound
or gap at each index of the alignmentsy
- lists whether the target sequence aligns aCompound
or gap at each index of the alignment- Throws:
IllegalArgumentException
- if alignments differ in size or given sequences do not fit in alignments
-
SimpleSequencePair
public SimpleSequencePair(S query, S target, List<AlignedSequence.Step> sx, int xb, int xa, List<AlignedSequence.Step> sy, int yb, int ya)
Creates a pair profile for the given sequences with a local alignment.- Parameters:
query
- the first sequence of the pairtarget
- the second sequence of the pairsx
- lists whether the query sequence aligns aCompound
or gap at each index of the alignmentxb
- number ofCompound
s skipped in the query sequence before the aligned regionxa
- number ofCompound
s skipped in the query sequence after the aligned regionsy
- lists whether the target sequence aligns aCompound
or gap at each index of the alignmentyb
- number ofCompound
s skipped in the target sequence before the aligned regionya
- number ofCompound
s skipped in the target sequence after the aligned region- Throws:
IllegalArgumentException
- if alignments differ in size or given sequences do not fit in alignments
-
-
Method Detail
-
getCompoundInQueryAt
public C getCompoundInQueryAt(int alignmentIndex)
Description copied from interface:SequencePair
Returns theCompound
in query sequence at given column index in alignment.- Specified by:
getCompoundInQueryAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
alignmentIndex
- column index in alignment- Returns:
- the query sequence element
-
getCompoundInTargetAt
public C getCompoundInTargetAt(int alignmentIndex)
Description copied from interface:SequencePair
Returns theCompound
in target sequence at given column index in alignment.- Specified by:
getCompoundInTargetAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
alignmentIndex
- column index in alignment- Returns:
- the target sequence element
-
getIndexInQueryAt
public int getIndexInQueryAt(int alignmentIndex)
Description copied from interface:SequencePair
Returns the query index corresponding to a given alignment column.- Specified by:
getIndexInQueryAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
alignmentIndex
- column index in alignment- Returns:
- index in query
Sequence
-
getIndexInQueryForTargetAt
public int getIndexInQueryForTargetAt(int targetIndex)
Description copied from interface:SequencePair
Returns the query index corresponding to a given target index.- Specified by:
getIndexInQueryForTargetAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
targetIndex
- index in targetSequence
- Returns:
- index in query
Sequence
-
getIndexInTargetAt
public int getIndexInTargetAt(int alignmentIndex)
Description copied from interface:SequencePair
Returns the target index corresponding to a given alignment column.- Specified by:
getIndexInTargetAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
alignmentIndex
- column index in alignment- Returns:
- index in target
Sequence
-
getIndexInTargetForQueryAt
public int getIndexInTargetForQueryAt(int queryIndex)
Description copied from interface:SequencePair
Returns the target index corresponding to a given query index.- Specified by:
getIndexInTargetForQueryAt
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
queryIndex
- index in querySequence
- Returns:
- index in target
Sequence
-
getNumIdenticals
public int getNumIdenticals()
Description copied from interface:SequencePair
Returns the number of indices for which both the query and target sequences have an identicalCompound
.- Specified by:
getNumIdenticals
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Returns:
- the number of identical indices
-
getNumSimilars
public int getNumSimilars()
Description copied from interface:SequencePair
Returns the number of indices for which both the query and target sequences have a similarCompound
.- Specified by:
getNumSimilars
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Returns:
- the number of similar indices
-
getQuery
public AlignedSequence<S,C> getQuery()
Description copied from interface:SequencePair
Returns the firstAlignedSequence
of the pair.- Specified by:
getQuery
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Returns:
- the first
AlignedSequence
of the pair
-
getTarget
public AlignedSequence<S,C> getTarget()
Description copied from interface:SequencePair
Returns the secondAlignedSequence
of the pair.- Specified by:
getTarget
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Returns:
- the second
AlignedSequence
of the pair
-
getPercentageOfIdentity
public double getPercentageOfIdentity(boolean countGaps)
Returns the percentage of identity between the two sequences in the alignment as a fraction between 0 and 1.- Specified by:
getPercentageOfIdentity
in interfaceSequencePair<S extends Sequence<C>,C extends Compound>
- Parameters:
countGaps
- If true, gap positions are counted as mismatches, i.e., the percentage is normalized by the alignment length. If false, gap positions are not counted, i.e. the percentage is normalized by the number of aligned residue pairs. See May (2004). "Percent sequence identity: the need to be explicit."- Returns:
- the percentage of sequence identity as a fraction in [0,1]
-
-