weka.gui.beans
Class TrainTestSplitMaker

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byweka.gui.beans.AbstractTrainAndTestSetProducer
                      extended byweka.gui.beans.TrainTestSplitMaker
All Implemented Interfaces:
javax.accessibility.Accessible, BeanCommon, DataSourceListener, EventConstraints, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, TestSetListener, TestSetProducer, TrainingSetListener, TrainingSetProducer, UserRequestAcceptor, Visible

public class TrainTestSplitMaker
extends AbstractTrainAndTestSetProducer
implements DataSourceListener, TrainingSetListener, TestSetListener, UserRequestAcceptor, EventConstraints, java.io.Serializable

Bean that accepts data sets, training sets, test sets and produces both a training and test set by randomly spliting the data

Version:
1.0
Author:
Mark Hall
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  int m_randomSeed
           
private  java.lang.Thread m_splitThread
           
private  int m_trainPercentage
           
 
Fields inherited from class weka.gui.beans.AbstractTrainAndTestSetProducer
m_listenee, m_logger, m_testListeners, m_trainingListeners, m_visual
 
Fields inherited from class javax.swing.JPanel
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Container
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
TrainTestSplitMaker()
           
 
Method Summary
 void acceptDataSet(DataSetEvent e)
          Accept a data set
 void acceptTestSet(TestSetEvent e)
          Accept a test set
 void acceptTrainingSet(TrainingSetEvent e)
          Accept a training set
private  void block(boolean tf)
          Function used to stop code that calls acceptDataSet.
 java.util.Enumeration enumerateRequests()
          Get list of user requests
 boolean eventGeneratable(java.lang.String eventName)
          Returns true, if at the current time, the named event could be generated.
 int getSeed()
          Get the value of the random seed
 int getTrainPercent()
          Get the percentage of the data that will be in the training portion of the split
 java.lang.String globalInfo()
          Global info for this bean
protected  void notifyTestSetProduced(TestSetEvent tse)
          Notify test set listeners that a test set is available
protected  void notifyTrainingSetProduced(TrainingSetEvent tse)
          Notify training set listeners that a training set is available
 void performRequest(java.lang.String request)
          Perform the named request
 java.lang.String seedTipText()
          Tip text for this property
 void setSeed(int newSeed)
          Set the random seed
 void setTrainPercent(int newTrainPercent)
          Set the percentage of data to be in the training portion of the split
 void stop()
          Stop processing
 java.lang.String trainPercentTipText()
          Tip text info for this property
 
Methods inherited from class weka.gui.beans.AbstractTrainAndTestSetProducer
addTestSetListener, addTrainingSetListener, connectionAllowed, connectionNotification, disconnectionNotification, getVisual, removeTestSetListener, removeTrainingSetListener, setLog, setVisual, useDefaultVisual
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_trainPercentage

private int m_trainPercentage

m_randomSeed

private int m_randomSeed

m_splitThread

private java.lang.Thread m_splitThread
Constructor Detail

TrainTestSplitMaker

public TrainTestSplitMaker()
Method Detail

globalInfo

public java.lang.String globalInfo()
Global info for this bean

Returns:
a String value

trainPercentTipText

public java.lang.String trainPercentTipText()
Tip text info for this property

Returns:
a String value

setTrainPercent

public void setTrainPercent(int newTrainPercent)
Set the percentage of data to be in the training portion of the split

Parameters:
newTrainPercent - an int value

getTrainPercent

public int getTrainPercent()
Get the percentage of the data that will be in the training portion of the split

Returns:
an int value

seedTipText

public java.lang.String seedTipText()
Tip text for this property

Returns:
a String value

setSeed

public void setSeed(int newSeed)
Set the random seed

Parameters:
newSeed - an int value

getSeed

public int getSeed()
Get the value of the random seed

Returns:
an int value

acceptTrainingSet

public void acceptTrainingSet(TrainingSetEvent e)
Accept a training set

Specified by:
acceptTrainingSet in interface TrainingSetListener
Parameters:
e - a TrainingSetEvent value

acceptTestSet

public void acceptTestSet(TestSetEvent e)
Accept a test set

Specified by:
acceptTestSet in interface TestSetListener
Parameters:
e - a TestSetEvent value

acceptDataSet

public void acceptDataSet(DataSetEvent e)
Accept a data set

Specified by:
acceptDataSet in interface DataSourceListener
Specified by:
acceptDataSet in class AbstractTrainAndTestSetProducer
Parameters:
e - a DataSetEvent value

notifyTestSetProduced

protected void notifyTestSetProduced(TestSetEvent tse)
Notify test set listeners that a test set is available

Parameters:
tse - a TestSetEvent value

notifyTrainingSetProduced

protected void notifyTrainingSetProduced(TrainingSetEvent tse)
Notify training set listeners that a training set is available

Parameters:
tse - a TrainingSetEvent value

block

private void block(boolean tf)
Function used to stop code that calls acceptDataSet. This is needed as cross validation is performed inside a separate thread of execution.

Parameters:
tf - a boolean value

stop

public void stop()
Stop processing

Specified by:
stop in interface BeanCommon
Specified by:
stop in class AbstractTrainAndTestSetProducer

enumerateRequests

public java.util.Enumeration enumerateRequests()
Get list of user requests

Specified by:
enumerateRequests in interface UserRequestAcceptor
Returns:
an Enumeration value

performRequest

public void performRequest(java.lang.String request)
Perform the named request

Specified by:
performRequest in interface UserRequestAcceptor
Parameters:
request - a String value
Throws:
java.lang.IllegalArgumentException - if an error occurs

eventGeneratable

public boolean eventGeneratable(java.lang.String eventName)
Returns true, if at the current time, the named event could be generated. Assumes that the supplied event name is an event that could be generated by this bean

Specified by:
eventGeneratable in interface EventConstraints
Parameters:
eventName - the name of the event in question
Returns:
true if the named event could be generated at this point in time