Class FilteredIQR

  • All Implemented Interfaces:
    Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, ShallowCopySupporter<RowFinder>, SizeOfHandler, RowFinder, TrainableRowFinder, Serializable

    public class FilteredIQR
    extends AbstractTrainableRowFinder
    Returns indices of rows that got identified as outliers/extreme values.

    Valid options are:

    -D <int> (property: debugLevel)
        The greater the number the more additional info the scheme may output to 
        the console (0 = off).
        default: 0
        minimum: 0
     
    -pre-filter <weka.filters.Filter> (property: preFilter)
        The filter to pre-filter the data with before subjecting it to the IQR filter.
        default: weka.filters.AllFilter
     
    -filter <weka.filters.Filter> (property: filter)
        The IQR filter to use; parameters get set internally.
        default: weka.filters.unsupervised.attribute.InterquartileRange -R first-last -O 3.0 -E 6.0
     
    -iqr <double> (property: iqr)
        IQR multipler for min/max values.
        default: 4.25
        minimum: 0.0
     
    -attribute-range <adams.core.Range> (property: attributeRange)
        The attribute range to work on.
        default: first-last
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_PreFilter

        protected weka.filters.Filter m_PreFilter
        the filter to apply to the data first.
      • m_Filter

        protected weka.filters.unsupervised.attribute.InterquartileRange m_Filter
        the IQR filter.
      • m_ActualFilter

        protected weka.filters.unsupervised.attribute.InterquartileRange m_ActualFilter
        the actual IQR filter.
      • m_IQR

        protected double m_IQR
        the maximum value of the attribute.
      • m_Range

        protected Range m_Range
        the attribute range to work on.
      • m_FullFilter

        protected weka.filters.MultiFilter m_FullFilter
        the MultiFilter doing all the filtering.
    • Constructor Detail

      • FilteredIQR

        public FilteredIQR()
    • Method Detail

      • setPreFilter

        public void setPreFilter​(weka.filters.Filter value)
        Sets the pre filter.
        Parameters:
        value - the filter
      • getPreFilter

        public weka.filters.Filter getPreFilter()
        Returns the pre filter.
        Returns:
        the filter
      • preFilterTipText

        public String preFilterTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setFilter

        public void setFilter​(weka.filters.Filter value)
        Sets the IQR filter.
        Parameters:
        value - the filter
      • getFilter

        public weka.filters.Filter getFilter()
        Returns the IQR filter.
        Returns:
        the filter
      • filterTipText

        public String filterTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setIqr

        public void setIqr​(double value)
        Sets the IQR multiplier.
        Parameters:
        value - iqr
      • getIqr

        public double getIqr()
        Returns the iqr multiplier.
        Returns:
        the iqr
      • iqrTipText

        public String iqrTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setAttributeRange

        public void setAttributeRange​(Range value)
        Sets the attribute range to work on.
        Parameters:
        value - the range
      • getAttributeRange

        public Range getAttributeRange()
        Returns the attribute range to work on.
        Returns:
        the range
      • attributeRangeTipText

        public String attributeRangeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • doTrainRowFinder

        protected boolean doTrainRowFinder​(weka.core.Instances data)
        Performs the actual training of the row finder with the specified dataset.
        Specified by:
        doTrainRowFinder in class AbstractTrainableRowFinder
        Parameters:
        data - the training data
        Returns:
        true if successfully trained
      • doFindRows

        protected int[] doFindRows​(weka.core.Instances data)
        Returns the rows of interest in the dataset.
        Specified by:
        doFindRows in class AbstractRowFinder
        Parameters:
        data - the dataset to inspect
        Returns:
        the rows of interest