weka.datagenerators

## Class Test

- java.lang.Object
- - weka.datagenerators.Test

- All Implemented Interfaces:
    java.io.Serializable, RevisionHandler

      public class Test
      extends java.lang.Object
      implements java.io.Serializable, RevisionHandler

  Class to represent a test.
  The string representation of the test can be supplied in standard notation or for a subset of types of attributes in Prolog notation.
  Following examples for all possible tests that can be represented by this class, given in standard notation.
  Examples of tests for numeric attributes:
  B >= 2.333
  B < 4.56
  Examples of tests for nominal attributes with more then 2 values:
  A = rain
  A != rain
  Examples of tests for nominal attribute with exactly 2 values:
  A = false
  A = true
  The Prolog notation is only supplied for numeric attributes and for nominal attributes that have the values "true" and "false".
  Following examples for the Prolog notation provided.
  Examples of tests for numeric attributes:
  The same as for standard notation above.
  Examples of tests for nominal attributes with values "true"and "false":
  A
  not(A)
  (Other nominal attributes are not supported by the Prolog notation.)
  Version:
    $Revision: 10203 $
  Author:
    Gabi Schmidberger (gabi@cs.waikato.ac.nz)
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Test(int i, double s, Instances dataset)` Constructor
    `Test(int i, double s, Instances dataset, boolean n)` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equalTo(Test t)` Compares the test with the test that is given as parameter.
    `Test` | `getNot()` Negates the test.
    `java.lang.String` | `getRevision()` Returns the revision string.
    `boolean` | `passesTest(Instance inst)` Determines whether an instance passes the test.
    `java.lang.String` | `toPrologString()` Returns the test represented by a string in Prolog notation.
    `java.lang.String` | `toString()` Returns the test represented by a string.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### Test

          public Test(int i,
                      double s,
                      Instances dataset)

      Constructor
      Parameters:
        `i` - the attribute index
        `s` - the split
        `dataset` - the dataset

    - #### Test

          public Test(int i,
                      double s,
                      Instances dataset,
                      boolean n)

      Constructor
      Parameters:
        `i` - the attribute index
        `s` - the split
        `dataset` - the dataset
        `n` - whether to negate the test

  - ### Method Detail

    - #### getNot

          public Test getNot()

      Negates the test.
      Returns:
        the test itself negated

    - #### passesTest

          public boolean passesTest(Instance inst)
                             throws java.lang.Exception

      Determines whether an instance passes the test.
      Parameters:
        `inst` - the instance
      Returns:
        true if the instance satisfies the test, false otherwise
      Throws:
        `java.lang.Exception` - if something goes wrong

    - #### toString

          public java.lang.String toString()

      Returns the test represented by a string.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        a string representing the test

    - #### toPrologString

          public java.lang.String toPrologString()

      Returns the test represented by a string in Prolog notation.
      Returns:
        a string representing the test in Prolog notation

    - #### equalTo

          public boolean equalTo(Test t)

      Compares the test with the test that is given as parameter.
      Parameters:
        `t` - the test the object is compared to
      Returns:
        true if the two Tests are equal

    - #### getRevision

          public java.lang.String getRevision()

      Returns the revision string.
      Specified by:
        `getRevision` in interface `RevisionHandler`
      Returns:
        the revision