2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 2 of the License, or
5
* (at your option) any later version.
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software
14
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18
* AttributeTransformer.java
19
* Copyright (C) 2000 University of Waikato, Hamilton, New Zealand
23
package weka.attributeSelection;
28
* Abstract attribute transformer. Transforms the dataset.
30
* @author Mark Hall (mhall@cs.waikato.ac.nz)
31
* @version $Revision: 1.8 $
33
public interface AttributeTransformer {
39
* Returns just the header for the transformed data (ie. an empty
40
* set of instances. This is so that AttributeSelection can
41
* determine the structure of the transformed data without actually
42
* having to get all the transformed data through getTransformedData().
43
* @return the header of the transformed data.
44
* @exception Exception if the header of the transformed data can't
47
Instances transformedHeader() throws Exception;
50
* Returns the transformed data
51
* @return A set of instances representing the transformed data
52
* @exception Exception if the attribute could not be evaluated
54
Instances transformedData() throws Exception;
57
* Transforms an instance in the format of the original data to the
59
* @return a transformed instance
60
* @exception Exception if the instance could not be transformed
62
Instance convertInstance(Instance instance) throws Exception;