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: 1.8 $
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