Package vcf
Class BitArrayRefGTRec
java.lang.Object
vcf.BitArrayRefGTRec
- All Implemented Interfaces:
IntArray
,DuplicatesGTRec
,GTRec
,MarkerContainer
Class BitArrayRefGTRec
represents phased, nonmissing, genotypes
for a list of samples at a single marker. Instances of class
BitArrayRefGTRec
store haplotype alleles in bit sets.
Instances of class BitArrayRefGTRec
are immutable.
-
Method Summary
Modifier and TypeMethodDescriptionint
allele1
(int sample) Returns the first allele for the specified sample or -1 if the allele is missing.int
allele2
(int sample) Returns the second allele for the specified sample or -1 if the allele is missing.int[]
alleles()
Returns an array of lengththis.size()
whosej
-th element is equal tothis.allele(j
}int
get
(int hap) Returns the specified allele for the specified haplotype or -1 if the allele is missing.boolean
isPhased()
Returnstrue
if every genotype for each sample is a phased, non-missing genotype, and returnsfalse
otherwise.boolean
isPhased
(int sample) Returnstrue
if the genotype for the specified sample has non-missing alleles and is either haploid or diploid with a phased allele separator, and returnsfalse
otherwise.marker()
Returns the marker.samples()
Returns the list of samples.int
size()
Returns the number of haplotypes.static BitArrayRefGTRec[]
toBitArrayRefGTRecs
(EstPhase estPhase) Returns the current estimated phased, non-missing genotypes.static BitArrayRefGTRec[]
toBitArrayRefGTRecs
(XRefGT gt, int nThreads) Returns the phased, non-missing genotypes as aBitArrayRefGTRec[]
array.toString()
Returns the data represented bythis
as a VCF record with a GT format field.
-
Method Details
-
toBitArrayRefGTRecs
Returns the current estimated phased, non-missing genotypes. This method converts column-major data into row-major data.- Parameters:
estPhase
- the current estimated phased genotypes for each target sample- Returns:
- the current estimated phased, non-missing genotypes
- Throws:
NullPointerException
- ifestPhase == null
-
toBitArrayRefGTRecs
Returns the phased, non-missing genotypes as aBitArrayRefGTRec[]
array. This method converts column-major data into row-major data.- Parameters:
gt
- the genotype datanThreads
- the maximum number of computational threads for object construction- Returns:
- the phased, non-missing genotypes as a
BitArrayRefGTRec[]
array - Throws:
IllegalArgumentException
- ifnThreads < 1
NullPointerException
- ifgt == null
-
samples
Description copied from interface:GTRec
Returns the list of samples. -
size
public int size()Description copied from interface:DuplicatesGTRec
Returns the number of haplotypes.- Specified by:
size
in interfaceDuplicatesGTRec
- Specified by:
size
in interfaceIntArray
- Returns:
- the number of haplotypes
-
marker
Description copied from interface:MarkerContainer
Returns the marker.- Specified by:
marker
in interfaceMarkerContainer
- Returns:
- the marker
-
isPhased
public boolean isPhased()Description copied from interface:DuplicatesGTRec
Returnstrue
if every genotype for each sample is a phased, non-missing genotype, and returnsfalse
otherwise.- Specified by:
isPhased
in interfaceDuplicatesGTRec
- Returns:
true
if the genotype for each sample is a phased, non-missing genotype
-
isPhased
public boolean isPhased(int sample) Description copied from interface:DuplicatesGTRec
Returnstrue
if the genotype for the specified sample has non-missing alleles and is either haploid or diploid with a phased allele separator, and returnsfalse
otherwise.- Specified by:
isPhased
in interfaceDuplicatesGTRec
- Parameters:
sample
- a sample index- Returns:
true
if the genotype for the specified sample is a phased, nonmissing genotype
-
allele1
public int allele1(int sample) Description copied from interface:DuplicatesGTRec
Returns 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:
allele1
in interfaceDuplicatesGTRec
- Parameters:
sample
- a sample index- Returns:
- the first allele for the specified sample
-
allele2
public int allele2(int sample) Description copied from interface:DuplicatesGTRec
Returns 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:
allele2
in interfaceDuplicatesGTRec
- Parameters:
sample
- a sample index- Returns:
- the second allele for the specified sample
-
get
public int get(int hap) Description copied from interface:DuplicatesGTRec
Returns 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:
get
in interfaceDuplicatesGTRec
- Specified by:
get
in interfaceIntArray
- Parameters:
hap
- a haplotype index- Returns:
- the specified allele for the specified sample
-
alleles
public int[] alleles()Description copied from interface:DuplicatesGTRec
Returns an array of lengththis.size()
whosej
-th element is equal tothis.allele(j
}- Specified by:
alleles
in interfaceDuplicatesGTRec
- Returns:
- an array of length
this.size()
whosej
-th element is equal tothis.allele(j
}
-
toString
Returns the data represented bythis
as 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.
-