Package vcf
Class Samples
- java.lang.Object
-
- vcf.Samples
-
public final class Samples extends java.lang.ObjectClass
Instances of classSamplesstores a list of samples.Samplesare immutable.
-
-
Constructor Summary
Constructors Constructor Description Samples(int[] idIndices, boolean[] isDiploid)Constructs a new instance ofSamplescorresponding to the specified list of diploid sample identifier indices.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Samplescombine(Samples first, Samples second)Returns a new samples instance by combining the two list of samples in the specified orderbooleanequals(java.lang.Object obj)Returnstrueif the specified object is aSamplesobject which represents the same ordered list of samples asthis, and returnsfalseotherwise.static SamplesfromIds(java.lang.String[] ids, boolean[] isDiploid)Constructs and returns aSamplesinstance corresponding to the specified list of sample identifiers.inthashCode()Returns a hash code value for the object.java.lang.Stringid(int index)Returns the identifier for the sample with the specified index in this list of samples.intidIndex(int index)Returns the sample identifier index corresponding to the sample with the specified index in this list of samples.int[]idIndexToIndex()Returns an array mapping sample identifier indices to sample indices.java.lang.String[]ids()Returns this list of samples as an array of sample identifiers.booleanisDiploid(int sample)Returnstrueif the specified sample has two alleles per genotype, and returnsfalseif the sample has one allele per genotype.intsize()Returns the number of samples in this list.java.lang.StringtoString()Returnsjava.util.Arrays.toString(this.ids()).
-
-
-
Constructor Detail
-
Samples
public Samples(int[] idIndices, boolean[] isDiploid)Constructs a new instance ofSamplescorresponding to the specified list of diploid sample identifier indices.- Parameters:
idIndices- an array of sample identifier indicesisDiploid- a boolean array whosek-th value istrueif thek-th sample is diploid, and isfalseif thek-th sample is haploid- Throws:
java.lang.IllegalArgumentException- ifidIndices.length != isDiploid.lengthjava.lang.IllegalArgumentException- if the specifiedidIndicesarray has two or more elements that are equaljava.lang.IndexOutOfBoundsException- if any element of the specifiedidIndicesarray is negative or greater than or equal tobeagleutil.SampleIds.instance().size()java.lang.NullPointerException- ifidIndices == null || isDiploid == null
-
-
Method Detail
-
combine
public static Samples combine(Samples first, Samples second)
Returns a new samples instance by combining the two list of samples in the specified order- Parameters:
first- the first list of samplessecond- the second list of samples- Returns:
- the combined samples
- Throws:
java.lang.IllegalArgumentException- if the two lists of samples are not disjointjava.lang.NullPointerException- iffirst == null || second == null
-
idIndexToIndex
public int[] idIndexToIndex()
Returns an array mapping sample identifier indices to sample indices. Indices for sample identifiers not present in this list of samples are mapped to-1.- Returns:
- an array mapping sample identifier indices to sample indices
-
fromIds
public static Samples fromIds(java.lang.String[] ids, boolean[] isDiploid)
Constructs and returns aSamplesinstance corresponding to the specified list of sample identifiers.- Parameters:
ids- an array of sample identifiersisDiploid- a boolean array whosek-th value istrueif thek-th sample is diploid, and isfalseif thek-th sample is haploid- Returns:
- a
Samplesinstance corresponding to the specified list of sample identifiers - Throws:
java.lang.IllegalArgumentException- ifids.length != isDiploid.lengthjava.lang.IllegalArgumentException- if the specified array has two or more elements that are equal as stringsjava.lang.NullPointerException- ifids == null || isDiploid == null
-
hashCode
public int hashCode()
Returns a hash code value for the object.- Overrides:
hashCodein classjava.lang.Object- Returns:
- a hash code value for the object.
-
equals
public boolean equals(java.lang.Object obj)
Returnstrueif the specified object is aSamplesobject which represents the same ordered list of samples asthis, and returnsfalseotherwise.- Overrides:
equalsin classjava.lang.Object- Parameters:
obj- the object to be tested for equality withthis- Returns:
trueif the specified object is aSamplesobject which represents the same ordered list of samples asthis
-
idIndex
public int idIndex(int index)
Returns the sample identifier index corresponding to the sample with the specified index in this list of samples.- Parameters:
index- a sample index- Returns:
- the sample identifier index corresponding to the sample with the specified index in this list of samples
- Throws:
java.lang.IndexOutOfBoundsException- ifindex < 0 || index >= this.size()
-
size
public int size()
Returns the number of samples in this list.- Returns:
- the number of samples in this list
-
id
public java.lang.String id(int index)
Returns the identifier for the sample with the specified index in this list of samples.- Parameters:
index- a sample index- Returns:
- the identifier for the sample with the specified index in this list of samples
- Throws:
java.lang.IndexOutOfBoundsException- ifindex < 0 || index >= this.size()
-
ids
public java.lang.String[] ids()
Returns this list of samples as an array of sample identifiers. The returned array has lengththis.size(), and it satisfiesthis.ids()[j].equals(this.id(j))for0 <= j && j < this.size()- Returns:
- this list of samples as an array of sample identifiers
-
isDiploid
public boolean isDiploid(int sample)
Returnstrueif the specified sample has two alleles per genotype, and returnsfalseif the sample has one allele per genotype.- Parameters:
sample- a sample index- Returns:
trueif the specified sample is diploid- Throws:
java.lang.IndexOutOfBoundsException- ifsample < 0 || sample >= this.size()
-
toString
public java.lang.String toString()
Returnsjava.util.Arrays.toString(this.ids()).- Overrides:
toStringin classjava.lang.Object- Returns:
- a string representation of
this
-
-