Class RandomSubset

    • Constructor Detail

      • RandomSubset

        public RandomSubset()
    • Method Detail

      • globalInfo

        public java.lang.String globalInfo()
        Returns a string describing this filter.
        Specified by:
        globalInfo in class SimpleFilter
        Returns:
        a description of the filter suitable for displaying in the explorer/experimenter gui
      • listOptions

        public java.util.Enumeration<Option> listOptions()
        Returns an enumeration describing the available options.
        Specified by:
        listOptions in interface OptionHandler
        Overrides:
        listOptions in class Filter
        Returns:
        an enumeration of all the available options.
      • getOptions

        public java.lang.String[] getOptions()
        Gets the current settings of the filter.
        Specified by:
        getOptions in interface OptionHandler
        Overrides:
        getOptions in class Filter
        Returns:
        an array of strings suitable for passing to setOptions
      • setOptions

        public void setOptions​(java.lang.String[] options)
                        throws java.lang.Exception
        Parses a given list of options.

        Valid options are:

         -N <double>
          The number of attributes to randomly select.
          If < 1 then percentage, >= 1 absolute number.
          (default: 0.5)
         -V
          Invert selection - i.e. randomly remove rather than select.
         -S <int>
          The seed value.
          (default: 1)
         -output-debug-info
          If set, filter is run in debug mode and
          may output additional info to the console
         -do-not-check-capabilities
          If set, filter capabilities are not checked before filter is built
          (use with caution).
        Specified by:
        setOptions in interface OptionHandler
        Overrides:
        setOptions in class Filter
        Parameters:
        options - the list of options as an array of strings
        Throws:
        java.lang.Exception - if an option is not supported
      • numAttributesTipText

        public java.lang.String numAttributesTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getNumAttributes

        public double getNumAttributes()
        Get the number of attributes (< 1 percentage, >= 1 absolute number).
        Returns:
        the number of attributes.
      • setNumAttributes

        public void setNumAttributes​(double value)
        Set the number of attributes.
        Parameters:
        value - the number of attributes to use.
      • invertSelectionTipText

        public java.lang.String invertSelectionTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • setInvertSelection

        public void setInvertSelection​(boolean inv)
        Set whether to invert the selection - i.e. randomly remove rather than select attributes.
        Parameters:
        inv - true if the selection should be inverted
      • getInvertSelection

        public boolean getInvertSelection()
        Get whether to invert the selection - i.e. randomly remove rather than select attributes.
        Returns:
        true if the selection should be inverted
      • seedTipText

        public java.lang.String seedTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the explorer/experimenter gui
      • getSeed

        public int getSeed()
        Get the seed value for the random number generator.
        Specified by:
        getSeed in interface Randomizable
        Returns:
        the seed value.
      • setSeed

        public void setSeed​(int value)
        Set the seed value for the random number generator.
        Specified by:
        setSeed in interface Randomizable
        Parameters:
        value - the seed value.
      • allowAccessToFullInputFormat

        public boolean allowAccessToFullInputFormat()
        Returns whether to allow the determineOutputFormat(Instances) method access to the full dataset rather than just the header.

        Overrides:
        allowAccessToFullInputFormat in class SimpleBatchFilter
        Returns:
        true for this filter so that input data can affect subset of attributes that is selected
      • main

        public static void main​(java.lang.String[] args)
        Runs the filter with the given parameters. Use -h to list options.
        Parameters:
        args - the commandline options