Package weka.classifiers.rules

# Class Rule

java.lang.Object
weka.classifiers.rules.Rule

All Implemented Interfaces:
  `Serializable`, `Copyable`, `RevisionHandler`, `WeightedInstancesHandler`

Direct Known Subclasses:
  `JRip.RipperRule`

public abstract class Rule extends Object implements WeightedInstancesHandler, Copyable, Serializable, RevisionHandler
Abstract class of generic rule

Version:
  $Revision: 8034 $
Author:
  Xin Xu (xx5@cs.waikato.ac.nz)
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Rule()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `copy()`
  Get a shallow copy of this rule
  `abstract boolean`
  `covers(Instance datum)`
  Whether the instance covered by this rule
  `abstract double`
  `getConsequent()`
  Get the consequent of this rule, i.e.
  `abstract void`
  `grow(Instances data)`
  Build this rule
  `abstract boolean`
  `hasAntds()`
  Whether this rule has antecedents, i.e.
  `abstract double`
  `size()`
  The size of the rule.

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

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

  ### Methods inherited from interface weka.core.RevisionHandler

  `getRevision`

- ## Constructor Details

  - ### Rule

    public Rule()

- ## Method Details

  - ### copy

    public Object copy()
    Get a shallow copy of this rule
    Specified by:
      `copy` in interface `Copyable`
    Returns:
      the copy

  - ### covers

    public abstract boolean covers(Instance datum)
    Whether the instance covered by this rule
    Parameters:
      `datum` - the instance in question
    Returns:
      the boolean value indicating whether the instance is covered by this rule

  - ### grow

    public abstract void grow(Instances data) throws Exception
    Build this rule
    Parameters:
      `data` - the data used to build the rule
    Throws:
      `Exception` - if rule cannot be built

  - ### hasAntds

    public abstract boolean hasAntds()
    Whether this rule has antecedents, i.e. whether it is a default rule
    Returns:
      the boolean value indicating whether the rule has antecedents

  - ### getConsequent

    public abstract double getConsequent()
    Get the consequent of this rule, i.e. the predicted class
    Returns:
      the consequent

  - ### size

    public abstract double size()
    The size of the rule. Could be number of antecedents in the case of conjunctive rule
    Returns:
      the size of the rule