Package elki.utilities.scaling.outlier
Class OutlierSqrtScaling
- java.lang.Object
-
- elki.utilities.scaling.outlier.OutlierSqrtScaling
-
- All Implemented Interfaces:
OutlierScaling,ScalingFunction
public class OutlierSqrtScaling extends java.lang.Object implements OutlierScaling
Scaling that can map arbitrary positive values to a value in the range of [0:1].Transformation is done by taking the square root, then doing a linear linear mapping onto 0:1 using the minimum values seen.
- Since:
- 0.3
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classOutlierSqrtScaling.ParParameterization class.
-
Field Summary
Fields Modifier and Type Field Description protected doublefactorScaling factorprotected doublemaxMinimum and maximum values.protected doubleminMinimum and maximum values.protected java.lang.DoublepmaxPredefined minimum and maximum values.protected java.lang.DoublepminPredefined minimum and maximum values.
-
Constructor Summary
Constructors Constructor Description OutlierSqrtScaling(java.lang.Double pmin, java.lang.Double pmax)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetMax()Get maximum resulting value.doublegetMin()Get minimum resulting value.doublegetScaled(double value)Transform a given value using the scaling function.<A> voidprepare(A array, NumberArrayAdapter<?,A> adapter)Prepare is called once for each data set, before getScaled() will be called.voidprepare(OutlierResult or)Prepare is called once for each data set, before getScaled() will be called.
-
-
-
Field Detail
-
min
protected double min
Minimum and maximum values.
-
max
protected double max
Minimum and maximum values.
-
pmin
protected java.lang.Double pmin
Predefined minimum and maximum values.
-
pmax
protected java.lang.Double pmax
Predefined minimum and maximum values.
-
factor
protected double factor
Scaling factor
-
-
Method Detail
-
getScaled
public double getScaled(double value)
Description copied from interface:ScalingFunctionTransform a given value using the scaling function.- Specified by:
getScaledin interfaceScalingFunction- Parameters:
value- Original value- Returns:
- Scaled value
-
prepare
public void prepare(OutlierResult or)
Description copied from interface:OutlierScalingPrepare is called once for each data set, before getScaled() will be called. This function can be used to extract global parameters such as means, minimums or maximums from the outlier scores.- Specified by:
preparein interfaceOutlierScaling- Parameters:
or- Outlier result to use
-
prepare
public <A> void prepare(A array, NumberArrayAdapter<?,A> adapter)Description copied from interface:OutlierScalingPrepare is called once for each data set, before getScaled() will be called. This function can be used to extract global parameters such as means, minimums or maximums from the score array. The method using a fullOutlierResultis preferred, as it will allow access to the metadata.- Specified by:
preparein interfaceOutlierScaling- Parameters:
array- Data to processadapter- Array adapter
-
getMin
public double getMin()
Description copied from interface:ScalingFunctionGet minimum resulting value. May beDouble.NaNorDouble.NEGATIVE_INFINITY.- Specified by:
getMinin interfaceScalingFunction- Returns:
- Minimum resulting value.
-
getMax
public double getMax()
Description copied from interface:ScalingFunctionGet maximum resulting value. May beDouble.NaNorDouble.POSITIVE_INFINITY.- Specified by:
getMaxin interfaceScalingFunction- Returns:
- Maximum resulting value.
-
-