Class WekaDatasetsMerge

  • All Implemented Interfaces:
    AdditionalInformationHandler, CleanUpHandler, Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<Actor>, SizeOfHandler, Stoppable, StoppableWithFeedback, VariablesInspectionHandler, VariableChangeListener, Actor, ErrorHandler, InputConsumer, OutputProducer, WekaMergeInstancesActor, Serializable, Comparable

    public class WekaDatasetsMerge
    extends AbstractTransformer
    implements WekaMergeInstancesActor
    Merges 2 or more datasets into a single dataset, under a selectable merge method.

    Input/output:
    - accepts:
       weka.core.Instances[]
       weka.core.Instance[]
    - generates:
       weka.core.Instances


    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -name <java.lang.String> (property: name)
        The name of the actor.
        default: WekaDatasetsMerge
     
    -annotation <adams.core.base.BaseAnnotation> (property: annotations)
        The annotations to attach to this actor.
        default:
     
    -skip <boolean> (property: skip)
        If set to true, transformation is skipped and the input token is just forwarded
        as it is.
        default: false
     
    -stop-flow-on-error <boolean> (property: stopFlowOnError)
        If set to true, the flow execution at this level gets stopped in case this
        actor encounters an error; the error gets propagated; useful for critical
        actors.
        default: false
     
    -silent <boolean> (property: silent)
        If enabled, then no errors are output in the console; Note: the enclosing
        actor handler must have this enabled as well.
        default: false
     
    -method <adams.flow.transformer.wekadatasetsmerge.AbstractMerge> (property: mergeMethod)
        The method that should be used to perform the merge.
        default: adams.flow.transformer.wekadatasetsmerge.Simple
     

    Merges two or more datasets into a single dataset using the specified merge method.

    Author:
    Corey Sterling (csterlin at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_MergeMethod

        protected AbstractMerge m_MergeMethod
        The method to use to perform the merge.
    • Constructor Detail

      • WekaDatasetsMerge

        public WekaDatasetsMerge()
    • Method Detail

      • getMergeMethod

        public AbstractMerge getMergeMethod()
        Gets the currently-set merge method.
        Returns:
        The merge method being used currently.
      • setMergeMethod

        public void setMergeMethod​(AbstractMerge mergeMethod)
        Sets the merge method to use to perform the merge.
        Parameters:
        mergeMethod - The merge method to use.
      • mergeMethodTipText

        public String mergeMethodTipText()
        Gets the tip-text for the merge method option.
        Returns:
        The tip-text as a String.
      • accepts

        public Class[] accepts()
        Returns the class that the consumer accepts.
        Specified by:
        accepts in interface InputConsumer
        Returns:
        the Class of objects that can be processed
      • generates

        public Class[] generates()
        Returns the class of objects that it generates.
        Specified by:
        generates in interface OutputProducer
        Returns:
        the Class of the generated tokens
      • getInput

        protected weka.core.Instances[] getInput()
        Gets the input Instances to merge.
        Returns:
        The input Instances objects to merge.
      • datasetForSingleInstance

        protected weka.core.Instances datasetForSingleInstance​(weka.core.Instance instance)
        Creates an Instances dataset, containing a copy of the single instance provided.
        Parameters:
        instance - The instance to create a dataset for.
        Returns:
        The created dataset.
      • doExecute

        protected String doExecute()
        Executes the flow item.
        Specified by:
        doExecute in class AbstractActor
        Returns:
        null if everything is fine, otherwise error message