public static class ImputedFeatureEvaluatorImpl.JointDistribution
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected double[][] |
contingencyTable |
protected java.lang.Double |
entropyX
the entropy of X.
|
protected java.lang.Double |
entropyXY
the entropy of X*Y.
|
protected java.util.SortedMap<java.lang.String,java.util.SortedMap<java.lang.String,java.util.Set<java.lang.Long>>> |
jointDistroTable
A y*x table where the cells hold the instance ids.
|
protected java.util.Set<java.lang.String> |
xVals
the possible values of X (e.g.
|
protected java.util.Set<java.lang.String> |
yVals
the possible values of Y (e.g.
|
Constructor and Description |
---|
ImputedFeatureEvaluatorImpl.JointDistribution(java.util.Set<java.lang.String> xVals,
java.util.Set<java.lang.String> yVals)
set up the joint distribution table.
|
ImputedFeatureEvaluatorImpl.JointDistribution(java.util.Set<java.lang.String> xVals,
java.util.Set<java.lang.String> yVals,
java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> xMargin,
java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> yMargin,
java.lang.String xLeftover) |
Modifier and Type | Method and Description |
---|---|
double[][] |
getContingencyTable() |
double |
getEntropyX() |
double |
getEntropyXY() |
double |
getInfoGain() |
java.util.Set<java.lang.Long> |
getInstances(java.lang.String x,
java.lang.String y) |
double |
getMutualInformation(double entropyY) |
static ImputedFeatureEvaluatorImpl.JointDistribution |
merge(java.util.List<ImputedFeatureEvaluatorImpl.JointDistribution> jointDistros,
java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> yMargin,
java.lang.String xMerge)
merge joint distributions into a single distribution.
|
java.lang.String |
toString()
print out joint distribution table
|
protected double[][] contingencyTable
protected java.lang.Double entropyX
protected java.lang.Double entropyXY
protected java.util.SortedMap<java.lang.String,java.util.SortedMap<java.lang.String,java.util.Set<java.lang.Long>>> jointDistroTable
protected java.util.Set<java.lang.String> xVals
protected java.util.Set<java.lang.String> yVals
public ImputedFeatureEvaluatorImpl.JointDistribution(java.util.Set<java.lang.String> xVals, java.util.Set<java.lang.String> yVals)
xVals
- the possible x values (bins)yVals
- the possible y values (bins)public ImputedFeatureEvaluatorImpl.JointDistribution(java.util.Set<java.lang.String> xVals, java.util.Set<java.lang.String> yVals, java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> xMargin, java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> yMargin, java.lang.String xLeftover)
public static ImputedFeatureEvaluatorImpl.JointDistribution merge(java.util.List<ImputedFeatureEvaluatorImpl.JointDistribution> jointDistros, java.util.Map<java.lang.String,java.util.Set<java.lang.Long>> yMargin, java.lang.String xMerge)
jointDistros
- list of joint distribution tables to mergeyMargin
- map of y val - instance id. this could be calculated on
the fly, but we have this information already.xMerge
- the x val that contains everything that doesn't land in
any of the other bins.public double[][] getContingencyTable()
public double getEntropyX()
public double getEntropyXY()
public double getInfoGain()
public java.util.Set<java.lang.Long> getInstances(java.lang.String x, java.lang.String y)
public double getMutualInformation(double entropyY)
public java.lang.String toString()
toString
in class java.lang.Object