Package weka.core

Class Range

    • Constructor Detail

      • Range

        public Range()
        Default constructor.
      • Range

        public Range​(String rangeList)
        Constructor to set initial range.
        Parameters:
        rangeList - the initial range
        Throws:
        IllegalArgumentException - if the range list is invalid
    • Method Detail

      • setUpper

        public void setUpper​(int newUpper)
        Sets the value of "last".
        Parameters:
        newUpper - the value of "last"
      • getInvert

        public boolean getInvert()
        Gets whether the range sense is inverted, i.e. all except the values included by the range string are selected.
        Returns:
        whether the matching sense is inverted
      • setInvert

        public void setInvert​(boolean newSetting)
        Sets whether the range sense is inverted, i.e. all except the values included by the range string are selected.
        Parameters:
        newSetting - true if the matching sense is inverted
      • getRanges

        public String getRanges()
        Gets the string representing the selected range of values.
        Returns:
        the range selection string
      • setRanges

        public void setRanges​(String rangeList)
        Sets the ranges from a string representation. Note that setUpper() must be called afterwards for ranges to be actually set internally.
        Parameters:
        rangeList - the comma separated list of ranges. The empty string sets the range to empty.
        Throws:
        IllegalArgumentException - if the rangeList was not well formed
      • isInRange

        public boolean isInRange​(int index)
        Gets whether the supplied cardinal number is included in the current range.
        Parameters:
        index - the number of interest
        Returns:
        true if index is in the current range
        Throws:
        RuntimeException - if the upper limit of the range hasn't been defined
      • toString

        public String toString()
        Constructs a representation of the current range. Being a string representation, the numbers are based from 1.
        Overrides:
        toString in class Object
        Returns:
        the string representation of the current range
      • getSelection

        public int[] getSelection()
        Gets an array containing all the selected values, in the order that they were selected (or ascending order if range inversion is on).
        Returns:
        the array of selected values
        Throws:
        RuntimeException - if the upper limit of the range hasn't been defined
      • indicesToRangeList

        public static String indicesToRangeList​(int[] indices)
        Creates a string representation of the indices in the supplied array.
        Parameters:
        indices - an array containing indices to select. Since the array will typically come from a program, indices are assumed from 0, and thus will have 1 added in the String representation.
        Returns:
        the string representation of the indices
      • main

        public static void main​(String[] argv)
        Main method for testing this class.
        Parameters:
        argv - one parameter: a test range specification