Class 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 class  OutlierSqrtScaling.Par
      Parameterization class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected double factor
      Scaling factor
      protected double max
      Minimum and maximum values.
      protected double min
      Minimum and maximum values.
      protected java.lang.Double pmax
      Predefined minimum and maximum values.
      protected java.lang.Double pmin
      Predefined 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
      double getMax()
      Get maximum resulting value.
      double getMin()
      Get minimum resulting value.
      double getScaled​(double value)
      Transform a given value using the scaling function.
      <A> void prepare​(A array, NumberArrayAdapter<?,​A> adapter)
      Prepare is called once for each data set, before getScaled() will be called.
      void prepare​(OutlierResult or)
      Prepare is called once for each data set, before getScaled() will be called.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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
    • Constructor Detail

      • OutlierSqrtScaling

        public OutlierSqrtScaling​(java.lang.Double pmin,
                                  java.lang.Double pmax)
        Constructor.
        Parameters:
        pmin - Predefined minimum
        pmax - Predefined maximum
    • Method Detail

      • getScaled

        public double getScaled​(double value)
        Description copied from interface: ScalingFunction
        Transform a given value using the scaling function.
        Specified by:
        getScaled in interface ScalingFunction
        Parameters:
        value - Original value
        Returns:
        Scaled value
      • prepare

        public void prepare​(OutlierResult or)
        Description copied from interface: OutlierScaling
        Prepare 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:
        prepare in interface OutlierScaling
        Parameters:
        or - Outlier result to use
      • prepare

        public <A> void prepare​(A array,
                                NumberArrayAdapter<?,​A> adapter)
        Description copied from interface: OutlierScaling
        Prepare 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 full OutlierResult is preferred, as it will allow access to the metadata.
        Specified by:
        prepare in interface OutlierScaling
        Parameters:
        array - Data to process
        adapter - Array adapter
      • getMin

        public double getMin()
        Description copied from interface: ScalingFunction
        Get minimum resulting value. May be Double.NaN or Double.NEGATIVE_INFINITY.
        Specified by:
        getMin in interface ScalingFunction
        Returns:
        Minimum resulting value.
      • getMax

        public double getMax()
        Description copied from interface: ScalingFunction
        Get maximum resulting value. May be Double.NaN or Double.POSITIVE_INFINITY.
        Specified by:
        getMax in interface ScalingFunction
        Returns:
        Maximum resulting value.