weka.core.converters
Class CSVLoader

java.lang.Object
  extended by weka.core.converters.AbstractLoader
      extended by weka.core.converters.AbstractFileLoader
          extended by weka.core.converters.CSVLoader
All Implemented Interfaces:
java.io.Serializable, BatchConverter, FileSourcedConverter, Loader

public class CSVLoader
extends AbstractFileLoader
implements BatchConverter

Reads a source that is in comma separated or tab separated format. Assumes that the first row in the file determines the number of and names of the attributes.

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

Field Summary
static java.lang.String FILE_EXTENSION
          the file extension
 
Constructor Summary
CSVLoader()
          default constructor
 
Method Summary
 Instances getDataSet()
          Return the full data set.
 java.lang.String getFileDescription()
          Returns a description of the file type.
 java.lang.String getFileExtension()
          Get the file extension used for arff files
 java.lang.String[] getFileExtensions()
          Gets all the file extensions used for this type of file
 Instance getNextInstance(Instances structure)
          CSVLoader is unable to process a data set incrementally.
 Instances getStructure()
          Determines and returns (if possible) the structure (internally the header) of the data set as an empty set of instances.
 java.lang.String globalInfo()
          Returns a string describing this attribute evaluator
static void main(java.lang.String[] args)
          Main method.
 void setSource(java.io.File file)
          Resets the Loader object and sets the source of the data set to be the supplied File object.
 void setSource(java.io.InputStream input)
          Resets the Loader object and sets the source of the data set to be the supplied Stream object.
 
Methods inherited from class weka.core.converters.AbstractFileLoader
reset, retrieveFile, runFileLoader, setFile
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FILE_EXTENSION

public static java.lang.String FILE_EXTENSION
the file extension

Constructor Detail

CSVLoader

public CSVLoader()
default constructor

Method Detail

getFileExtension

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

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

getFileDescription

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

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

getFileExtensions

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

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

globalInfo

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

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

setSource

public void setSource(java.io.InputStream input)
               throws java.io.IOException
Resets the Loader object and sets the source of the data set to be the supplied Stream object.

Specified by:
setSource in interface Loader
Overrides:
setSource in class AbstractLoader
Parameters:
input - the input stream
Throws:
java.io.IOException - if an error occurs

setSource

public void setSource(java.io.File file)
               throws java.io.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:
java.io.IOException - if an error occurs

getStructure

public Instances getStructure()
                       throws java.io.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:
java.io.IOException - if an error occurs

getDataSet

public Instances getDataSet()
                     throws java.io.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:
java.io.IOException - if there is no source or parsing fails

getNextInstance

public Instance getNextInstance(Instances structure)
                         throws java.io.IOException
CSVLoader is unable to process a data set incrementally.

Specified by:
getNextInstance in interface Loader
Specified by:
getNextInstance in class AbstractLoader
Parameters:
structure - ignored
Returns:
never returns without throwing an exception
Throws:
java.io.IOException - always. CSVLoader is unable to process a data set incrementally.

main

public static void main(java.lang.String[] args)
Main method.

Parameters:
args - should contain the name of an input file.