Package vcf
Class LowMafRefGTRec
java.lang.Object
vcf.LowMafRefGTRec
- All Implemented Interfaces:
IntArray,DuplicatesGTRec,GTRec,MarkerContainer,RefGTRec
Class LowMafRefGTRec represent represents phased, non-missing
genotypes for a list of reference samples at a single marker.
Class LowMafRefGTRec stores the haplotypes that carry each
non-major allele.
Instances of class LowMemRefGTRec are immutable.
-
Constructor Summary
ConstructorsConstructorDescriptionLowMafRefGTRec(Marker marker, Samples samples, int[][] hapIndices) Constructs a newLowMafRefGTRecinstance from the specified data.LowMafRefGTRec(RefGTRec rec) Constructs a newLowMafRefGTRecinstance from the specified data.Constructs a newLowMafRefGTRcinstance from the specified data. -
Method Summary
Modifier and TypeMethodDescriptionintallele1(int sample) Returns the first allele for the specified sample or -1 if the allele is missing.intallele2(int sample) Returns the second allele for the specified sample or -1 if the allele is missing.intalleleCount(int allele) Returns the number of haplotypes that carry the specified non-major allele.int[]Returns an array of lengththis.nAlleles()whosej-th element is the allele count of thej-th allele.int[]alleles()Returns an array of lengththis.size()whosej-th element is equal tothis.allele(j}intget(int hap) Returns the specified allele for the specified haplotype or -1 if the allele is missing.inthapIndex(int allele, int copy) Returns index of the haplotype that carries the specified copy of the specified allele.int[][]Returns an array whosej-th element isnullifjis the major allele with lowest index, and otherwise is an array of indices of haplotypes that carry thej-th allele sorted in increasing orderbooleanReturnstrueif this instance stores the indices of haplotypes that carry non-major alleles, and returnsfalseotherwise.booleanisCarrier(int allele, int hap) Returnstrueif the specified haplotype carries the specified allele and returnfalseotherwise.booleanisPhased()Returnstrue.booleanisPhased(int sample) Returnstrue.intReturns the index of the major allele.map(int index) Returnsthis.maps()[index].IntArray[]maps()Returns an array of maps, which when composed map haplotype indices to alleles.marker()Returns the marker.intnMaps()Returnsthis.maps().lengthsamples()Returns the list of samples.intsize()Returns the number of haplotypes.toString()Returns the data represented bythisas a VCF record with a GT format field.
-
Constructor Details
-
LowMafRefGTRec
Constructs a newLowMafRefGTRecinstance from the specified data.- Parameters:
rec- the phased, non-missing genotype data- Throws:
NullPointerException- ifrec == null
-
LowMafRefGTRec
Constructs a newLowMafRefGTRcinstance from the specified data.- Parameters:
gtp- a VCF record parser that extracts sample genotypes- Throws:
IllegalArgumentException- if the VCF record contains an unphased genotype or missing alleleIllegalArgumentException- if a format error is detected in the VCF recordNullPointerException- ifgtp == null
-
LowMafRefGTRec
Constructs a newLowMafRefGTRecinstance from the specified data. The specifiedhapIndicesarray is required to contain exactly onenullelement. Thenullelement should be the major allele because this is most memory-efficient, but this requirement is not enforced. A haplotype index should be an element of only one array inhapIndices. If a haplotype index is an element of more than one array inhapIndices, it is assigned to the array with smallest index.- Parameters:
marker- the markersamples- the sampleshapIndices- whosej-th element is a list of haplotypes sorted in increasing order that carry thej-th allele, or isnull- Throws:
IllegalArgumentException- if the(hapIndicesdoes not contain exactly onenullelementIllegalArgumentException- if any non-null element ofhapIndicesis not a sorted list of distinct haplotype indices between 0 (inclusive) and2*samples.size()(exclusive)IllegalArgumentException- ifmarker.nAlleles() != hapIndices.lengthNullPointerException- ifmarker == null || samples == null || hapIndices == null
-
-
Method Details
-
hapIndices
public int[][] hapIndices()Description copied from interface:RefGTRecReturns an array whosej-th element isnullifjis the major allele with lowest index, and otherwise is an array of indices of haplotypes that carry thej-th allele sorted in increasing order- Specified by:
hapIndicesin interfaceRefGTRec- Returns:
- an array whose
j-th element isnullifjis the major allele with lowest index, and otherwise is an array of indices of haplotypes that carry thej-th allele sorted in increasing order
-
isPhased
public boolean isPhased(int sample) Description copied from interface:RefGTRecReturnstrue.- Specified by:
isPhasedin interfaceDuplicatesGTRec- Specified by:
isPhasedin interfaceRefGTRec- Parameters:
sample- the sample index- Returns:
true
-
isPhased
public boolean isPhased()Returnstrue.- Specified by:
isPhasedin interfaceDuplicatesGTRec- Specified by:
isPhasedin interfaceRefGTRec- Returns:
true
-
samples
Description copied from interface:GTRecReturns the list of samples. -
size
public int size()Description copied from interface:DuplicatesGTRecReturns the number of haplotypes.- Specified by:
sizein interfaceDuplicatesGTRec- Specified by:
sizein interfaceIntArray- Returns:
- the number of haplotypes
-
marker
Description copied from interface:MarkerContainerReturns the marker.- Specified by:
markerin interfaceMarkerContainer- Returns:
- the marker
-
allele1
public int allele1(int sample) Description copied from interface:DuplicatesGTRecReturns the first allele for the specified sample or -1 if the allele is missing. The two alleles for a sample are arbitrarily ordered ifthis.unphased(marker, sample) == false.- Specified by:
allele1in interfaceDuplicatesGTRec- Parameters:
sample- a sample index- Returns:
- the first allele for the specified sample
-
allele2
public int allele2(int sample) Description copied from interface:DuplicatesGTRecReturns the second allele for the specified sample or -1 if the allele is missing. The two alleles for a sample are arbitrarily ordered ifthis.unphased(marker, sample) == false.- Specified by:
allele2in interfaceDuplicatesGTRec- Parameters:
sample- a sample index- Returns:
- the second allele for the specified sample
-
get
public int get(int hap) Description copied from interface:DuplicatesGTRecReturns the specified allele for the specified haplotype or -1 if the allele is missing. The two alleles for a sample at a marker are arbitrarily ordered ifthis.unphased(marker, hap/2) == false.- Specified by:
getin interfaceDuplicatesGTRec- Specified by:
getin interfaceIntArray- Parameters:
hap- a haplotype index- Returns:
- the specified allele for the specified sample
-
alleles
public int[] alleles()Description copied from interface:DuplicatesGTRecReturns an array of lengththis.size()whosej-th element is equal tothis.allele(j}- Specified by:
allelesin interfaceDuplicatesGTRec- Returns:
- an array of length
this.size()whosej-th element is equal tothis.allele(j}
-
isAlleleCoded
public boolean isAlleleCoded()Description copied from interface:RefGTRecReturnstrueif this instance stores the indices of haplotypes that carry non-major alleles, and returnsfalseotherwise.- Specified by:
isAlleleCodedin interfaceRefGTRec- Returns:
trueif this instance stores the indices of haplotypes that carry non-major alleles
-
majorAllele
public int majorAllele()Description copied from interface:RefGTRecReturns the index of the major allele.- Specified by:
majorAllelein interfaceRefGTRec- Returns:
- the index of the major allele
-
alleleCounts
public int[] alleleCounts()Description copied from interface:RefGTRecReturns an array of lengththis.nAlleles()whosej-th element is the allele count of thej-th allele.- Specified by:
alleleCountsin interfaceRefGTRec- Returns:
- an array of allele counts
-
alleleCount
public int alleleCount(int allele) Description copied from interface:RefGTRecReturns the number of haplotypes that carry the specified non-major allele.- Specified by:
alleleCountin interfaceRefGTRec- Parameters:
allele- an allele index- Returns:
- the number of haplotypes that carry the specified non-major allele
-
hapIndex
public int hapIndex(int allele, int copy) Description copied from interface:RefGTRecReturns index of the haplotype that carries the specified copy of the specified allele. -
isCarrier
public boolean isCarrier(int allele, int hap) Description copied from interface:RefGTRecReturnstrueif the specified haplotype carries the specified allele and returnfalseotherwise. -
toString
Returns the data represented bythisas a VCF record with a GT format field. The returned VCF record will have missing QUAL and INFO fields, will have "PASS" in the filter field, and will have a GT format field. -
nMaps
public int nMaps()Description copied from interface:RefGTRecReturnsthis.maps().length -
maps
Description copied from interface:RefGTRecReturns an array of maps, which when composed map haplotype indices to alleles. The allele on haplotypehis determined by the following calculation:IntArray[] maps = this.maps(); int value = maps[0].get(h); for (int j=1; j<maps.length; ++j) { value = indexArrays[j].get(value); } int allele = value -
map
Description copied from interface:RefGTRecReturnsthis.maps()[index].
-