Package haplotype

Class HapPairPhasedGT

  • All Implemented Interfaces:
    GT

    public final class HapPairPhasedGT
    extends java.lang.Object
    implements GT

    Class HapPairPhasedGT stores a list of samples and a haplotype pair for each sample.

    Instance of class HapPairPhasedGT are immutable.

    • Constructor Summary

      Constructors 
      Constructor Description
      HapPairPhasedGT​(Samples samples, java.util.List<BitHapPair> hapPairList)
      Constructs a new BasicPhasedGT instance from the specified data.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int allele​(int marker, int haplotype)
      Returns the allele on the specified haplotype for the specified marker or return -1 if the allele is missing.
      int allele1​(int marker, int hapPair)
      Returns the first allele for the specified marker and sample or return -1 if the allele is missing.
      int allele2​(int marker, int hapPair)
      Returns the second allele for the specified marker and sample or return -1 if the allele is missing.
      boolean isPhased()
      Returns true if the genotype for each marker and sample is a phased, non-missing genotype, and returns false otherwise.
      boolean isPhased​(int sample)
      Returns true if the genotype for each marker for the specified sample is a phased, nonmissing genotype, and returns false otherwise.
      boolean isPhased​(int marker, int sample)
      Returns true if the genotype for the specified marker and sample is a phased, nonmissing genotype, and returns false otherwise.
      Marker marker​(int marker)
      Returns the specified marker.
      Markers markers()
      Returns the list of markers.
      int nHaps()
      Returns the number of haplotypes.
      int nMarkers()
      Returns the number of markers.
      int nSamples()
      Returns the number of samples.
      Samples samples()
      Returns the list of samples.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • HapPairPhasedGT

        public HapPairPhasedGT​(Samples samples,
                               java.util.List<BitHapPair> hapPairList)
        Constructs a new BasicPhasedGT instance from the specified data.
        Parameters:
        samples - a list of samples
        hapPairList - a list of haplotype pairs corresponding to the specified list of samples
        Throws:
        java.lang.IllegalArgumentException - if hapPairList.isEmpty() == true
        java.lang.IllegalArgumentException - if hapPairList.get(j).markers().equals(hapPairList.get(k).markers()) == false for any indices j, k satisfying 0 <= j && j < k && k < hapPairList.size()
        java.lang.IllegalArgumentException - if the list of samples does not match the list of samples determined by hapPairList
        java.lang.IllegalArgumentException - if samples.nSamples() != hapPairs.size()
        java.lang.IllegalArgumentException - if (samples.idIndex(j) != hapPairs.get(j).idIndex()) for any j satisfying 0 <= j && j < hapPairList.size()
        java.lang.NullPointerException - if samples == null
        java.lang.NullPointerException - if (hapPairList == null || hapPairList(j) == null) for any j satisfying (0 <= j && j < hapPairList.size())
    • Method Detail

      • isPhased

        public boolean isPhased​(int marker,
                                int sample)
        Description copied from interface: GT
        Returns true if the genotype for the specified marker and sample is a phased, nonmissing genotype, and returns false otherwise.
        Specified by:
        isPhased in interface GT
        Parameters:
        marker - the marker index
        sample - the sample index
        Returns:
        true if the genotype for the specified marker and sample is a phased, nonmissing genotype
      • isPhased

        public boolean isPhased​(int sample)
        Description copied from interface: GT
        Returns true if the genotype for each marker for the specified sample is a phased, nonmissing genotype, and returns false otherwise.
        Specified by:
        isPhased in interface GT
        Parameters:
        sample - a sample index
        Returns:
        true if the genotype for each marker for the specified sample is a phased, nonmissing genotype
      • isPhased

        public boolean isPhased()
        Description copied from interface: GT
        Returns true if the genotype for each marker and sample is a phased, non-missing genotype, and returns false otherwise.
        Specified by:
        isPhased in interface GT
        Returns:
        true if the genotype for each marker and sample is a phased, non-missing genotype
      • allele1

        public int allele1​(int marker,
                           int hapPair)
        Description copied from interface: GT
        Returns the first allele for the specified marker and sample or return -1 if the allele is missing. The two alleles for a sample are arbitrarily ordered if this.unphased(marker, sample) == false.
        Specified by:
        allele1 in interface GT
        Parameters:
        marker - the marker index
        hapPair - the sample index
        Returns:
        the first allele for the specified marker and sample
      • allele2

        public int allele2​(int marker,
                           int hapPair)
        Description copied from interface: GT
        Returns the second allele for the specified marker and sample or return -1 if the allele is missing. The two alleles for a sample are arbitrarily ordered if this.unphased(marker, sample) == false.
        Specified by:
        allele2 in interface GT
        Parameters:
        marker - the marker index
        hapPair - the sample index
        Returns:
        the allele for the specified marker and sample
      • allele

        public int allele​(int marker,
                          int haplotype)
        Description copied from interface: GT
        Returns the allele on the specified haplotype for the specified marker or return -1 if the allele is missing. The two alleles for an individual are arbitrarily ordered if this.unphased(marker, hap/2) == false.
        Specified by:
        allele in interface GT
        Parameters:
        marker - the marker index
        haplotype - the haplotype index
        Returns:
        the allele on the specified haplotype for the specified marker
      • nMarkers

        public int nMarkers()
        Description copied from interface: GT
        Returns the number of markers.
        Specified by:
        nMarkers in interface GT
        Returns:
        the number of markers
      • markers

        public Markers markers()
        Description copied from interface: GT
        Returns the list of markers.
        Specified by:
        markers in interface GT
        Returns:
        the list of markers
      • marker

        public Marker marker​(int marker)
        Description copied from interface: GT
        Returns the specified marker.
        Specified by:
        marker in interface GT
        Parameters:
        marker - a marker index
        Returns:
        the specified marker
      • nHaps

        public int nHaps()
        Description copied from interface: GT
        Returns the number of haplotypes. The returned value is equal to 2*this.nSamples().
        Specified by:
        nHaps in interface GT
        Returns:
        the number of haplotypes
      • nSamples

        public int nSamples()
        Description copied from interface: GT
        Returns the number of samples.
        Specified by:
        nSamples in interface GT
        Returns:
        the number of samples
      • samples

        public Samples samples()
        Description copied from interface: GT
        Returns the list of samples.
        Specified by:
        samples in interface GT
        Returns:
        the list of samples