Package weka.gui.explorer

# Class AttributeSelectionPanel

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.AbstractPerspective
weka.gui.explorer.AttributeSelectionPanel

All Implemented Interfaces:
  `ImageObserver`, `MenuContainer`, `Serializable`, `EventListener`, `Accessible`, `Explorer.CapabilitiesFilterChangeListener`, `Explorer.ExplorerPanel`, `Explorer.LogHandler`, `Perspective`

@PerspectiveInfo(ID="weka.gui.explorer.attributeselectionpanel", title="Select attributes", toolTipText="Determine relevance of attributes", iconPath="weka/gui/weka_icon_new_small.png") public class AttributeSelectionPanel extends AbstractPerspective implements Explorer.CapabilitiesFilterChangeListener, Explorer.ExplorerPanel, Explorer.LogHandler
This panel allows the user to select and configure an attribute evaluator and a search method, set the attribute of the current dataset to be used as the class, and perform attribute selection using one of two selection modes (select using all the training data or perform a n-fold cross validation---on each trial selecting features using n-1 folds of the data). The results of attribute selection runs are stored in a results history so that previous results are accessible.

Version:
  $Revision: 15378 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - Serialized Form

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static enum`
  `AttributeSelectionPanel.TestMode`

  ## Nested classes/interfaces inherited from class javax.swing.JComponent

  `JComponent.AccessibleJComponent`

  ## Nested classes/interfaces inherited from class java.awt.Component

  `Component.BaselineResizeBehavior`

- ## Field Summary

  ### Fields inherited from class javax.swing.JComponent

  `TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

  ### 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

  Constructors
  Constructor
  Description
  `AttributeSelectionPanel()`
  Creates the classifier panel

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `acceptsInstances()`
  Returns true if this perspective can do something meaningful with a set of instances
  `void`
  `capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)`
  method gets called in case of a change event
  `Defaults`
  `getDefaultSettings()`
  Get the default settings for this perspective (or null if there are none)
  `Explorer`
  `getExplorer()`
  returns the parent Explorer frame
  `String`
  `getTabTitle()`
  Returns the title for the tab in the Explorer
  `String`
  `getTabTitleToolTip()`
  Returns the tooltip for the tab in the Explorer
  `static void`
  `main(String[] args)`
  Tests out the attribute selection panel from the command line.
  `boolean`
  `okToBeActive()`
  Returns true if the perspective is usable at this time.
  `boolean`
  `requiresLog()`
  Whether this perspective requires a graphical log to write to
  `void`
  `setActive(boolean active)`
  Set active status of this perspective.
  `void`
  `setExplorer(Explorer parent)`
  Sets the Explorer to use as parent frame (used for sending notifications about changes in the data)
  `void`
  `setInstances(Instances inst)`
  Tells the panel to use a new set of instances.
  `void`
  `setLog(Logger newLog)`
  Sets the Logger to receive informational messages
  `void`
  `settingsChanged()`
  Called when the user alters settings.

  ### Methods inherited from class weka.gui.AbstractPerspective

  `getMainApplication, getMenus, getPerspectiveIcon, getPerspectiveID, getPerspectiveTipText, getPerspectiveTitle, instantiationComplete, setLoaded, setMainApplication, terminate, toString`

  ### Methods inherited from class javax.swing.JPanel

  `getAccessibleContext, getUI, getUIClassID, setUI, updateUI`

  ### Methods inherited from class javax.swing.JComponent

  `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

  ### Methods inherited from class java.awt.Container

  `add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate`

  ### Methods inherited from class java.awt.Component

  `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle`

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### AttributeSelectionPanel

    public AttributeSelectionPanel()
    Creates the classifier panel

- ## Method Details

  - ### setLog

    public void setLog(Logger newLog)
    Sets the Logger to receive informational messages
    Specified by:
      `setLog` in interface `Explorer.LogHandler`
    Specified by:
      `setLog` in interface `Perspective`
    Overrides:
      `setLog` in class `AbstractPerspective`
    Parameters:
      `newLog` - the Logger that will now get info messages

  - ### setInstances

    public void setInstances(Instances inst)
    Tells the panel to use a new set of instances.
    Specified by:
      `setInstances` in interface `Explorer.ExplorerPanel`
    Specified by:
      `setInstances` in interface `Perspective`
    Overrides:
      `setInstances` in class `AbstractPerspective`
    Parameters:
      `inst` - a set of Instances

  - ### capabilitiesFilterChanged

    public void capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)
    method gets called in case of a change event
    Specified by:
      `capabilitiesFilterChanged` in interface `Explorer.CapabilitiesFilterChangeListener`
    Parameters:
      `e` - the associated change event

  - ### setExplorer

    public void setExplorer(Explorer parent)
    Sets the Explorer to use as parent frame (used for sending notifications about changes in the data)
    Specified by:
      `setExplorer` in interface `Explorer.ExplorerPanel`
    Parameters:
      `parent` - the parent frame

  - ### getExplorer

    public Explorer getExplorer()
    returns the parent Explorer frame
    Specified by:
      `getExplorer` in interface `Explorer.ExplorerPanel`
    Returns:
      the parent

  - ### getTabTitle

    public String getTabTitle()
    Returns the title for the tab in the Explorer
    Specified by:
      `getTabTitle` in interface `Explorer.ExplorerPanel`
    Returns:
      the title of this tab

  - ### getTabTitleToolTip

    public String getTabTitleToolTip()
    Returns the tooltip for the tab in the Explorer
    Specified by:
      `getTabTitleToolTip` in interface `Explorer.ExplorerPanel`
    Returns:
      the tooltip of this tab

  - ### requiresLog

    public boolean requiresLog()
    Description copied from class: `AbstractPerspective`
    Whether this perspective requires a graphical log to write to
    Specified by:
      `requiresLog` in interface `Perspective`
    Overrides:
      `requiresLog` in class `AbstractPerspective`
    Returns:
      true if a log is needed by this perspective

  - ### acceptsInstances

    public boolean acceptsInstances()
    Description copied from class: `AbstractPerspective`
    Returns true if this perspective can do something meaningful with a set of instances
    Specified by:
      `acceptsInstances` in interface `Perspective`
    Overrides:
      `acceptsInstances` in class `AbstractPerspective`
    Returns:
      true if this perspective accepts instances

  - ### getDefaultSettings

    public Defaults getDefaultSettings()
    Description copied from class: `AbstractPerspective`
    Get the default settings for this perspective (or null if there are none)
    Specified by:
      `getDefaultSettings` in interface `Perspective`
    Overrides:
      `getDefaultSettings` in class `AbstractPerspective`
    Returns:
      the default settings for this perspective, or null if the perspective does not have any settings

  - ### okToBeActive

    public boolean okToBeActive()
    Description copied from class: `AbstractPerspective`
    Returns true if the perspective is usable at this time. This is a no-opp implementation that always returns true. Subclasses should override if there are specific conditions that need to be met (e.g. can't operate if there are no instances set).
    Specified by:
      `okToBeActive` in interface `Perspective`
    Overrides:
      `okToBeActive` in class `AbstractPerspective`
    Returns:
      true if this perspective is usable at this time

  - ### setActive

    public void setActive(boolean active)
    Description copied from class: `AbstractPerspective`
    Set active status of this perspective. True indicates that this perspective is the visible active perspective in the application
    Specified by:
      `setActive` in interface `Perspective`
    Overrides:
      `setActive` in class `AbstractPerspective`
    Parameters:
      `active` - true if this perspective is the active one

  - ### settingsChanged

    public void settingsChanged()
    Description copied from class: `AbstractPerspective`
    Called when the user alters settings. The settings altered by the user are not necessarily ones related to this perspective
    Specified by:
      `settingsChanged` in interface `Perspective`
    Overrides:
      `settingsChanged` in class `AbstractPerspective`

  - ### main

    public static void main(String[] args)
    Tests out the attribute selection panel from the command line.
    Parameters:
      `args` - may optionally contain the name of a dataset to load.