MCPcopy Create free account
hub / github.com/EdwardRaff/JSAT / InverseOfTransform

Class InverseOfTransform

JSAT/src/jsat/datatransform/InverseOfTransform.java:19–63  ·  view source on GitHub ↗

Creates a new Transform object that simply uses the inverse of an InvertibleTransform as a regular transform. This allows one to apply inverses after the fact in a simple matter like: DataSet x = //some data set; InvertibleTransform transform = //some transform; x.applyTransfo

Source from the content-addressed store, hash-verified

17 * @author Edward Raff
18 */
19public class InverseOfTransform implements DataTransform
20{
21
22 private static final long serialVersionUID = 2565737661260748018L;
23 private InvertibleTransform transform;
24
25 /**
26 * Creates a new transform that uses the
27 * {@link InvertibleTransform#transform(jsat.classifiers.DataPoint)
28 * transform} of the given transform
29 * @param transform the transform to use the inverse function of
30 */
31 public InverseOfTransform(InvertibleTransform transform)
32 {
33 this.transform = transform;
34 }
35
36 @Override
37 public void fit(DataSet data)
38 {
39 //no-op, nothing to do
40 }
41
42 /**
43 * Copy constructor
44 * @param toClone the object to copy
45 */
46 public InverseOfTransform(InverseOfTransform toClone)
47 {
48 this(toClone.transform.clone());
49 }
50
51 @Override
52 public DataPoint transform(DataPoint dp)
53 {
54 return transform.inverse(dp);
55 }
56
57 @Override
58 public InverseOfTransform clone()
59 {
60 return new InverseOfTransform(this);
61 }
62
63}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected