Package weka.core.converters

# Class C45Loader

java.lang.Object
weka.core.converters.AbstractLoader
weka.core.converters.AbstractFileLoader
weka.core.converters.C45Loader

All Implemented Interfaces:
  `Serializable`, `BatchConverter`, `FileSourcedConverter`, `IncrementalConverter`, `Loader`, `EnvironmentHandler`, `RevisionHandler`

public class C45Loader extends AbstractFileLoader implements BatchConverter, IncrementalConverter
Reads a file that is C45 format. Can take a filestem or filestem with .names or .data appended. Assumes that path/<filestem>.names and path/<filestem>.data exist and contain the names and data respectively.

Version:
  $Revision: 1.16 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - `Loader`
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static String`
`FILE_EXTENSION`
the file extension

### Fields inherited from class weka.core.converters.AbstractFileLoader

`FILE_EXTENSION_COMPRESSED`

### Fields inherited from interface weka.core.converters.Loader

`BATCH, INCREMENTAL, NONE`

## Constructor Summary

Constructors
Constructor
Description
`C45Loader()`

## Method Summary

Modifier and Type
Method
Description
`Instances`
`getDataSet()`
Return the full data set.
`String`
`getFileDescription()`
Returns a description of the file type.
`String`
`getFileExtension()`
Get the file extension used for arff files
`String[]`
`getFileExtensions()`
Gets all the file extensions used for this type of file
`Instance`
`getNextInstance(Instances structure)`
Read the data set incrementally---get the next instance in the data set or returns null if there are no more instances to get.
`String`
`getRevision()`
Returns the revision string.
`Instances`
`getStructure()`
Determines and returns (if possible) the structure (internally the header) of the data set as an empty set of instances.
`String`
`globalInfo()`
Returns a string describing this attribute evaluator
`static void`
`main(String[] args)`
Main method for testing this class.
`void`
`reset()`
Resets the Loader ready to read a new data set or the same data set again.
`void`
`setSource(File file)`
Resets the Loader object and sets the source of the data set to be the supplied File object.

### Methods inherited from class weka.core.converters.AbstractFileLoader

`getUseRelativePath, retrieveFile, runFileLoader, setEnvironment, setFile, setUseRelativePath, useRelativePathTipText`

### Methods inherited from class weka.core.converters.AbstractLoader

`setRetrieval, setSource`

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

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

## Field Details

### FILE_EXTENSION

public static String FILE_EXTENSION
the file extension

## Constructor Details

### C45Loader

public C45Loader()

## Method Details

### globalInfo

public String globalInfo()
Returns a string describing this attribute evaluator

Returns:
  a description of the evaluator suitable for displaying in the explorer/experimenter gui

### reset

public void reset() throws IOException
Resets the Loader ready to read a new data set or the same data set again.

Specified by:
  `reset` in interface `Loader`
Overrides:
  `reset` in class `AbstractFileLoader`
Throws:
  `IOException` - if something goes wrong

### getFileExtension

public String getFileExtension()
Get the file extension used for arff files

Specified by:
  `getFileExtension` in interface `FileSourcedConverter`
Returns:
  the file extension

### getFileExtensions

public String[] getFileExtensions()
Gets all the file extensions used for this type of file

Specified by:
  `getFileExtensions` in interface `FileSourcedConverter`
Returns:
  the file extensions

### getFileDescription

public String getFileDescription()
Returns a description of the file type.

Specified by:
  `getFileDescription` in interface `FileSourcedConverter`
Returns:
  a short file description

### setSource

public void setSource(File file) throws IOException
Resets the Loader object and sets the source of the data set to be the supplied File object.

Specified by:
  `setSource` in interface `Loader`
Overrides:
  `setSource` in class `AbstractFileLoader`
Parameters:
  `file` - the source file.
Throws:
  `IOException` - if an error occurs

### getStructure

public Instances getStructure() throws IOException
Determines and returns (if possible) the structure (internally the header) of the data set as an empty set of instances.

Specified by:
  `getStructure` in interface `Loader`
Specified by:
  `getStructure` in class `AbstractLoader`
Returns:
  the structure of the data set as an empty set of Instances
Throws:
  `IOException` - if an error occurs

### getDataSet

public Instances getDataSet() throws IOException
Return the full data set. If the structure hasn't yet been determined by a call to getStructure then method should do so before processing the rest of the data set.

Specified by:
  `getDataSet` in interface `Loader`
Specified by:
  `getDataSet` in class `AbstractLoader`
Returns:
  the structure of the data set as an empty set of Instances
Throws:
  `IOException` - if there is no source or parsing fails

### getNextInstance

public Instance getNextInstance(Instances structure) throws IOException
Read the data set incrementally---get the next instance in the data set or returns null if there are no more instances to get. If the structure hasn't yet been determined by a call to getStructure then method should do so before returning the next instance in the data set. If it is not possible to read the data set incrementally (ie. in cases where the data set structure cannot be fully established before all instances have been seen) then an exception should be thrown.

Specified by:
  `getNextInstance` in interface `Loader`
Specified by:
  `getNextInstance` in class `AbstractLoader`
Parameters:
  `structure` - the dataset header information, will get updated in case of string or relational attributes
Returns:
  the next instance in the data set as an Instance object or null if there are no more instances to be read
Throws:
  `IOException` - if there is an error during parsing

### getRevision

public String getRevision()
Returns the revision string.

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

### main

public static void main(String[] args)
Main method for testing this class.

Parameters:
  `args` - should contain <filestem>[.names | data]