Package org.snpeff.snpEffect
Class SnpEffectPredictor
- java.lang.Object
-
- org.snpeff.snpEffect.SnpEffectPredictor
-
- All Implemented Interfaces:
java.io.Serializable
public class SnpEffectPredictor extends java.lang.Object implements java.io.SerializablePredicts effects of SNPsNote: Actually tries to predict any kind of SeqChange, not only SNPs . It is called SnpEffectPredictor for 'historical reasons'.
- Author:
- pcingola
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intDEFAULT_UP_DOWN_LENGTHstatic intSMALL_VARIANT_SIZE_THRESHOLD
-
Constructor Summary
Constructors Constructor Description SnpEffectPredictor(Genome genome)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(Gene gene)Add a gene intervalvoidadd(Marker marker)Add a markervoidaddAll(Markers markersToAdd)Add a set of markersvoidbuildForest()Create interval trees (forest)intcountTranscripts()Count number of transcriptsMarkerscreateGenomicRegions()Create (and add) up-down stream, splice sites, intergenic, etcvoidfilterTranscriptSupportLevel(TranscriptSupportLevel maxTsl)Filter transcripts by TSLGenegetGene(java.lang.String geneId)Obtain a gene by geneIdGenomegetGenome()IntervalForestgetIntervalForest()MarkersgetMarkers()intgetSpliceRegionExonSize()intgetSpliceRegionIntronMax()intgetSpliceRegionIntronMin()TranscriptgetTranscript(java.lang.String trId)intgetUpDownStreamLength()intkeepTranscriptsProteinCoding()Remove all transcripts that are NOT in the liststatic SnpEffectPredictorload(Config config)Load predictor from a binary filevoidprint()Dump to sdtoutMarkersquery(Marker marker)Return a collection of intervals that intersect 'marker'GenequeryClosestGene(Marker inputInterval)Find closest gene to this markerMarkersqueryDeep(Marker marker)Return a collection of intervals that intersect 'marker' Query resulting genes, transcripts and exons to get ALL types of intervals possiblejava.util.Set<java.lang.String>regions(Marker marker, boolean showGeneDetails, boolean compareTemplate)Name of the regions hit by a markerjava.util.Set<java.lang.String>regions(Marker marker, boolean showGeneDetails, boolean compareTemplate, java.lang.String id)Name of the regions hit by a markervoidremoveNonCanonical(java.lang.String canonFile)Remove all non-canonical transcripts If a file is provided, read "Gene => canonical_transcript" mapping from filebooleanremoveUnverified()Remove all unverified transcriptsintretainAllTranscripts(java.util.Set<java.lang.String> trIds)Remove all transcripts that are NOT in the listvoidsave(java.lang.String fileName)Save predictor to a binary filevoidsave(Config config)Save predictor to a binary file (specified by the configuration)voidsetDebug(boolean debug)voidsetSpliceRegionExonSize(int spliceRegionExonSize)voidsetSpliceRegionIntronMax(int spliceRegionIntronMax)voidsetSpliceRegionIntronMin(int spliceRegionIntronMin)voidsetSpliceSiteSize(int spliceSiteSize)voidsetUpDownStreamLength(int upDownStreamLength)voidsetUseChromosomes(boolean useChromosomes)intsize()java.lang.StringtoString()VariantEffectsvariantEffect(Variant variant)Predict the effect of a variantprotected voidvariantEffect(Variant variant, VariantEffects variantEffects, Markers intersects)Calculate variant effect for each marker in 'intersect'
-
-
-
Field Detail
-
DEFAULT_UP_DOWN_LENGTH
public static final int DEFAULT_UP_DOWN_LENGTH
- See Also:
- Constant Field Values
-
SMALL_VARIANT_SIZE_THRESHOLD
public static final int SMALL_VARIANT_SIZE_THRESHOLD
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SnpEffectPredictor
public SnpEffectPredictor(Genome genome)
-
-
Method Detail
-
load
public static SnpEffectPredictor load(Config config)
Load predictor from a binary file
-
add
public void add(Gene gene)
Add a gene interval
-
add
public void add(Marker marker)
Add a markerNote: Markers have to be added BEFORE building the interval trees. Interval trees are built the first time you call snpEffect(snp) method.
-
addAll
public void addAll(Markers markersToAdd)
Add a set of markers
-
buildForest
public void buildForest()
Create interval trees (forest)
-
countTranscripts
public int countTranscripts()
Count number of transcripts
-
createGenomicRegions
public Markers createGenomicRegions()
Create (and add) up-down stream, splice sites, intergenic, etc
-
filterTranscriptSupportLevel
public void filterTranscriptSupportLevel(TranscriptSupportLevel maxTsl)
Filter transcripts by TSL
-
getGene
public Gene getGene(java.lang.String geneId)
Obtain a gene by geneId
-
getGenome
public Genome getGenome()
-
getIntervalForest
public IntervalForest getIntervalForest()
-
getMarkers
public Markers getMarkers()
-
getSpliceRegionExonSize
public int getSpliceRegionExonSize()
-
setSpliceRegionExonSize
public void setSpliceRegionExonSize(int spliceRegionExonSize)
-
getSpliceRegionIntronMax
public int getSpliceRegionIntronMax()
-
setSpliceRegionIntronMax
public void setSpliceRegionIntronMax(int spliceRegionIntronMax)
-
getSpliceRegionIntronMin
public int getSpliceRegionIntronMin()
-
setSpliceRegionIntronMin
public void setSpliceRegionIntronMin(int spliceRegionIntronMin)
-
getTranscript
public Transcript getTranscript(java.lang.String trId)
-
getUpDownStreamLength
public int getUpDownStreamLength()
-
setUpDownStreamLength
public void setUpDownStreamLength(int upDownStreamLength)
-
keepTranscriptsProteinCoding
public int keepTranscriptsProteinCoding()
Remove all transcripts that are NOT in the list- Returns:
- : Number of transcripts removed
-
print
public void print()
Dump to sdtout
-
queryClosestGene
public Gene queryClosestGene(Marker inputInterval)
Find closest gene to this markerIn case more than one 'closest' gene is found (e.g. two or more genes at the same distance). The following rules apply:
i) If many genes have the same 'closest distance', coding genes are preferred.
ii) If more than one coding gene has the same 'closet distance', a random gene is returned.
-
queryDeep
public Markers queryDeep(Marker marker)
Return a collection of intervals that intersect 'marker' Query resulting genes, transcripts and exons to get ALL types of intervals possible
-
regions
public java.util.Set<java.lang.String> regions(Marker marker, boolean showGeneDetails, boolean compareTemplate)
Name of the regions hit by a marker- Returns:
- A set of region names
-
regions
public java.util.Set<java.lang.String> regions(Marker marker, boolean showGeneDetails, boolean compareTemplate, java.lang.String id)
Name of the regions hit by a marker- Parameters:
id- : Only use genes or transcripts matching this ID (null for any)
-
removeNonCanonical
public void removeNonCanonical(java.lang.String canonFile)
Remove all non-canonical transcripts If a file is provided, read "Gene => canonical_transcript" mapping from file
-
removeUnverified
public boolean removeUnverified()
Remove all unverified transcripts- Returns:
- true if ALL genes had ALL transcripts removed (i.e. something went wrong, like in cases where no transcript was checked during the building process)
-
retainAllTranscripts
public int retainAllTranscripts(java.util.Set<java.lang.String> trIds)
Remove all transcripts that are NOT in the list- Returns:
- : Number of transcripts removed
-
save
public void save(Config config)
Save predictor to a binary file (specified by the configuration)
-
save
public void save(java.lang.String fileName)
Save predictor to a binary file
-
setDebug
public void setDebug(boolean debug)
-
setSpliceSiteSize
public void setSpliceSiteSize(int spliceSiteSize)
-
setUseChromosomes
public void setUseChromosomes(boolean useChromosomes)
-
size
public int size()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
variantEffect
public VariantEffects variantEffect(Variant variant)
Predict the effect of a variant
-
variantEffect
protected void variantEffect(Variant variant, VariantEffects variantEffects, Markers intersects)
Calculate variant effect for each marker in 'intersect'
-
-