adams.flow.transformer
Class RTransformer

java.lang.Object
  extended by adams.core.ConsoleObject
      extended by adams.core.option.AbstractOptionHandler
          extended by adams.flow.core.AbstractActor
              extended by adams.flow.transformer.AbstractTransformer
                  extended by adams.flow.transformer.RTransformer
All Implemented Interfaces:
AdditionalInformationHandler, CleanUpHandler, Debuggable, DebugOutputHandler, Destroyable, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<AbstractActor>, SizeOfHandler, Stoppable, VariableChangeListener, Actor, ErrorHandler, InputConsumer, OutputProducer, Serializable, Comparable

public class RTransformer
extends AbstractTransformer

Carries out an r command on the token passed in. The input can be accessed via 'X'.
Variables are supported as well, e.g. pow(X,@{exp}) with '@{exp}' being a variable available at execution time.
Returns a result from R.

Input/output:
- accepts:
   java.lang.Integer
   java.lang.String
   java.lang.Double
   java.lang.Double[]
   java.lang.Double[][]
   adams.data.spreadsheet.SpreadSheet
- generates:
   java.lang.Integer

Valid options are:

-D <int> (property: debugLevel)
    The greater the number the more additional info the scheme may output to 
    the console (0 = off).
    default: 0
    minimum: 0
 
-name <java.lang.String> (property: name)
    The name of the actor.
    default: RTransformer
 
-annotation <adams.core.base.BaseText> (property: annotations)
    The annotations to attach to this actor.
    default: 
 
-skip (property: skip)
    If set to true, transformation is skipped and the input token is just forwarded 
    as it is.
 
-stop-flow-on-error (property: stopFlowOnError)
    If set to true, the flow gets stopped in case this actor encounters an error;
     useful for critical actors.
 
-script <adams.core.scripting.RScript> (property: script)
    Script to pass into r. The input value can be accessed via 'X'.
    default: 
 
-return-type <Integer|Double|DoubleArray|DoubleMatrix|String|DataFrame> (property: returnType)
    Data type of returned object
    default: Integer
 
-data-frame-columns <java.lang.String> (property: dataFrameColumns)
    The comma-separated list of dataframe column names to return only (if return 
    type is DataFrame)
    default: 
 

Version:
$Revision: 6830 $
Author:
rsmith
See Also:
Serialized Form

Field Summary
static String INPUT
          the placeholder for the input value.
protected  String m_DataFrameColumns
          the comma-separated list of dataframe column names in case of .
protected  org.rosuda.REngine.Rserve.RConnection m_RConn
          Connection to Rserve
protected  Object m_returnedObject
          Object returned from r
protected  RDataType m_returnType
          Data type of object returned from r script
protected  Rserve m_Rserve
          the Rserve actor.
protected  RScript m_Script
          Script to pass to r
 
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
 
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_Headless, m_Name, m_Parent, m_Root, m_ScopeHandler, m_Self, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
 
Fields inherited from class adams.core.option.AbstractOptionHandler
m_DebugLevel, m_OptionManager
 
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
 
Constructor Summary
RTransformer()
           
 
Method Summary
 Class[] accepts()
          List of classes that can be used as input.
 String dataFrameColumnsTipText()
          A description of the return type.
 void defineOptions()
          Adds to the internal list of options.
protected  String doExecute()
          Executes the flow, including reading the input and returning R's output.
 Class[] generates()
          List of classes this flow can return.
 String getDataFrameColumns()
          Returns the comma-separated list of dataframe column names to retrieve only.
 String getQuickInfo()
          Returns a quick info about the actor, which will be displayed in the GUI.
 RDataType getReturnType()
          Gets the type of object this flow returns.
 RScript getScript()
          Gets the script.
 String globalInfo()
          Info about this flow.
 boolean hasPendingOutput()
          Returns true if the is pending output.
 Token output()
          Turns the returned object into a token to be passed through the system.
protected  void reset()
          Ressets the members.
 String returnTypeTipText()
          Tool tip about the return type.
 String scriptTipText()
          Tool tip about the script.
 void setDataFrameColumns(String value)
          Sets the comma-separated list of dataframe column names to retrieve only.
 void setReturnType(RDataType val)
          Sets the type of object this flow returns.
 void setScript(RScript val)
          Sets the script.
 String setUp()
          Sets up the connection to Rserve.
 void wrapUp()
          Closes the Rserve connection as the flow finishes.
 
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, execute, input, postExecute, restoreState
 
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, debug, destroy, equals, findVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setVariables, shallowCopy, shallowCopy, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
 
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, debug, debugLevelTipText, finishInit, getDebugLevel, getOptionManager, isDebugOn, newOptionManager, setDebugLevel, toCommandLine, toString
 
Methods inherited from class adams.core.ConsoleObject
getDebugging, getSystemErr, getSystemOut
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, debug, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setVariables, sizeOf, stopExecution, stopExecution, variableChanged
 
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
 
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
 

Field Detail

m_Script

protected RScript m_Script
Script to pass to r


INPUT

public static final String INPUT
the placeholder for the input value.

See Also:
Constant Field Values

m_returnType

protected RDataType m_returnType
Data type of object returned from r script


m_DataFrameColumns

protected String m_DataFrameColumns
the comma-separated list of dataframe column names in case of .


m_returnedObject

protected Object m_returnedObject
Object returned from r


m_RConn

protected org.rosuda.REngine.Rserve.RConnection m_RConn
Connection to Rserve


m_Rserve

protected Rserve m_Rserve
the Rserve actor.

Constructor Detail

RTransformer

public RTransformer()
Method Detail

globalInfo

public String globalInfo()
Info about this flow.

Specified by:
globalInfo in class AbstractOptionHandler

defineOptions

public void defineOptions()
Adds to the internal list of options.

Specified by:
defineOptions in interface OptionHandler
Overrides:
defineOptions in class AbstractActor

reset

protected void reset()
Ressets the members.

Overrides:
reset in class AbstractTransformer

setScript

public void setScript(RScript val)
Sets the script.

Parameters:
val - the script

getScript

public RScript getScript()
Gets the script.

Returns:
the script

scriptTipText

public String scriptTipText()
Tool tip about the script.

Returns:
tool tip message

setReturnType

public void setReturnType(RDataType val)
Sets the type of object this flow returns.

Parameters:
val - the type of object

getReturnType

public RDataType getReturnType()
Gets the type of object this flow returns.

Returns:
the type of object

returnTypeTipText

public String returnTypeTipText()
Tool tip about the return type.

Returns:
the tip

setDataFrameColumns

public void setDataFrameColumns(String value)
Sets the comma-separated list of dataframe column names to retrieve only.

Parameters:
value - the comma-separated list

getDataFrameColumns

public String getDataFrameColumns()
Returns the comma-separated list of dataframe column names to retrieve only.

Returns:
the comma-separated list

dataFrameColumnsTipText

public String dataFrameColumnsTipText()
A description of the return type.

Returns:
string description

getQuickInfo

public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.

Specified by:
getQuickInfo in interface QuickInfoSupporter
Specified by:
getQuickInfo in interface Actor
Overrides:
getQuickInfo in class AbstractActor
Returns:
null if no info available, otherwise short string

accepts

public Class[] accepts()
List of classes that can be used as input.


generates

public Class[] generates()
List of classes this flow can return.


output

public Token output()
Turns the returned object into a token to be passed through the system.

Specified by:
output in interface OutputProducer
Overrides:
output in class AbstractTransformer

hasPendingOutput

public boolean hasPendingOutput()
Returns true if the is pending output.

Specified by:
hasPendingOutput in interface OutputProducer
Overrides:
hasPendingOutput in class AbstractTransformer

setUp

public String setUp()
Sets up the connection to Rserve.

Specified by:
setUp in interface Actor
Overrides:
setUp in class AbstractActor

doExecute

protected String doExecute()
Executes the flow, including reading the input and returning R's output.

Specified by:
doExecute in class AbstractActor

wrapUp

public void wrapUp()
Closes the Rserve connection as the flow finishes.

Specified by:
wrapUp in interface Actor
Overrides:
wrapUp in class AbstractTransformer


Copyright © 2013 University of Waikato, Hamilton, NZ. All Rights Reserved.