Package adams.ml.data

Class InstancesHeaderRow

  • All Implemented Interfaces:
    adams.core.Mergeable<adams.data.spreadsheet.Row>, adams.data.spreadsheet.Row, Serializable

    public class InstancesHeaderRow
    extends adams.data.spreadsheet.HeaderRow
    Header row for an Instances object.
    Version:
    $Revision$
    Author:
    FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected weka.core.Instances m_Data
      the underlying data.
      • Fields inherited from class adams.data.spreadsheet.HeaderRow

        m_CellKeys
      • Fields inherited from class adams.data.spreadsheet.AbstractRow

        m_Cells, m_Owner
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      adams.data.spreadsheet.Cell addCell​(int columnIndex)
      Adds a cell with the key of the cell in the header at the specified location.
      adams.data.spreadsheet.Cell addCell​(String cellKey)
      Adds a cell with the given key to the list and returns the created object.
      void assign​(adams.data.spreadsheet.Row row)
      Obtains copies of the cells from the other row, but not the owner.
      Collection<String> cellKeys()
      Returns a collection of all stored cell keys.
      protected int cellKeyToIndex​(String cellKey)
      Turns the cellKey into a column index.
      Collection<adams.data.spreadsheet.Cell> cells()
      Returns all cells.
      void clear()
      Removes all cells.
      adams.data.spreadsheet.Cell getCell​(int columnIndex)
      Returns the cell with the given index, null if not found.
      adams.data.spreadsheet.Cell getCell​(String cellKey)
      Returns the cell with the given key, null if not found.
      int getCellCount()
      Returns the number of cells stored in the row.
      String getCellKey​(int columnIndex)
      Returns the cell key with the given column index.
      adams.data.spreadsheet.HeaderRow getClone​(adams.data.spreadsheet.SpreadSheet owner)
      Returns a clone of itself.
      String getContent​(int columnIndex)
      Returns the cell content with the given index.
      weka.core.Instances getData()
      Returns the underlying Instance.
      boolean hasCell​(int columnIndex)
      Returns whether the row alread contains the cell at the specified location.
      boolean hasCell​(String cellKey)
      Returns whether the row alread contains the cell with the given key.
      int indexOf​(adams.data.spreadsheet.Cell cell)
      Returns the column this particular cell is in (must belong to this row!).
      void mergeWith​(adams.data.spreadsheet.Row other)
      Merges its own data with the one provided by the specified row.
      adams.data.spreadsheet.Cell newCell​(adams.data.spreadsheet.Row owner)
      Creates a new instance of a cell.
      adams.data.spreadsheet.Cell removeCell​(int columnIndex)
      Removes the cell at the specified index.
      adams.data.spreadsheet.Cell removeCell​(String cellKey)
      Removes the cell at the specified index.
      boolean removeMissing()
      Removes all cells marked "missing".
      void setOwner​(adams.data.spreadsheet.SpreadSheet owner)
      Sets the spreadsheet this row belongs to.
      String toString()
      Simply returns the internal hashtable of cells as string.
      • Methods inherited from class adams.data.spreadsheet.HeaderRow

        indexOf, indexOfContent, insertCell, uniqueKey
      • Methods inherited from class adams.data.spreadsheet.AbstractRow

        getOwner
    • Field Detail

      • m_Data

        protected weka.core.Instances m_Data
        the underlying data.
    • Constructor Detail

      • InstancesHeaderRow

        public InstancesHeaderRow​(InstancesView owner)
        Initializes the header row.
        Parameters:
        owner - the owner
    • Method Detail

      • getData

        public weka.core.Instances getData()
        Returns the underlying Instance.
        Returns:
        the underlying data
      • cellKeyToIndex

        protected int cellKeyToIndex​(String cellKey)
        Turns the cellKey into a column index.
        Parameters:
        cellKey - the cellKey to convert
        Returns:
        the column index, -1 if failed to convert
      • setOwner

        public void setOwner​(adams.data.spreadsheet.SpreadSheet owner)
        Sets the spreadsheet this row belongs to.
        Specified by:
        setOwner in interface adams.data.spreadsheet.Row
        Overrides:
        setOwner in class adams.data.spreadsheet.AbstractRow
        Parameters:
        owner - the owner
      • getClone

        public adams.data.spreadsheet.HeaderRow getClone​(adams.data.spreadsheet.SpreadSheet owner)
        Returns a clone of itself.
        Specified by:
        getClone in interface adams.data.spreadsheet.Row
        Overrides:
        getClone in class adams.data.spreadsheet.HeaderRow
        Parameters:
        owner - the new owner
        Returns:
        the clone
      • clear

        public void clear()
        Removes all cells.
        Does nothing.
        Specified by:
        clear in interface adams.data.spreadsheet.Row
        Overrides:
        clear in class adams.data.spreadsheet.HeaderRow
      • assign

        public void assign​(adams.data.spreadsheet.Row row)
        Obtains copies of the cells from the other row, but not the owner.
        Does nothing.
        Specified by:
        assign in interface adams.data.spreadsheet.Row
        Overrides:
        assign in class adams.data.spreadsheet.HeaderRow
        Parameters:
        row - the row to get the cells from
      • newCell

        public adams.data.spreadsheet.Cell newCell​(adams.data.spreadsheet.Row owner)
        Creates a new instance of a cell.
        Specified by:
        newCell in interface adams.data.spreadsheet.Row
        Overrides:
        newCell in class adams.data.spreadsheet.HeaderRow
        Parameters:
        owner - the owner
        Returns:
        always null
      • hasCell

        public boolean hasCell​(int columnIndex)
        Returns whether the row alread contains the cell at the specified location.
        Specified by:
        hasCell in interface adams.data.spreadsheet.Row
        Overrides:
        hasCell in class adams.data.spreadsheet.HeaderRow
        Parameters:
        columnIndex - the column index
        Returns:
        true if the cell already exists
      • hasCell

        public boolean hasCell​(String cellKey)
        Returns whether the row alread contains the cell with the given key.
        Specified by:
        hasCell in interface adams.data.spreadsheet.Row
        Overrides:
        hasCell in class adams.data.spreadsheet.AbstractRow
        Parameters:
        cellKey - the key to look for
        Returns:
        true if the cell already exists
      • addCell

        public adams.data.spreadsheet.Cell addCell​(int columnIndex)
        Adds a cell with the key of the cell in the header at the specified location. If the cell already exists, it returns that instead of creating one.
        Specified by:
        addCell in interface adams.data.spreadsheet.Row
        Overrides:
        addCell in class adams.data.spreadsheet.HeaderRow
        Parameters:
        columnIndex - the index of the column to create
        Returns:
        the created cell or the already existing cell
      • addCell

        public adams.data.spreadsheet.Cell addCell​(String cellKey)
        Adds a cell with the given key to the list and returns the created object. If the cell already exists, then this cell is returned instead and no new object created.
        Specified by:
        addCell in interface adams.data.spreadsheet.Row
        Overrides:
        addCell in class adams.data.spreadsheet.HeaderRow
        Parameters:
        cellKey - the key for the cell to create
        Returns:
        the created cell or the already existing cell
      • removeCell

        public adams.data.spreadsheet.Cell removeCell​(int columnIndex)
        Removes the cell at the specified index.
        Specified by:
        removeCell in interface adams.data.spreadsheet.Row
        Overrides:
        removeCell in class adams.data.spreadsheet.AbstractRow
        Parameters:
        columnIndex - the index of the column
        Returns:
        the removed cell, null if not removed
      • removeCell

        public adams.data.spreadsheet.Cell removeCell​(String cellKey)
        Removes the cell at the specified index.
        Specified by:
        removeCell in interface adams.data.spreadsheet.Row
        Overrides:
        removeCell in class adams.data.spreadsheet.HeaderRow
        Parameters:
        cellKey - the key of the cell to remove
        Returns:
        the removed cell, null if non removed
      • getCell

        public adams.data.spreadsheet.Cell getCell​(String cellKey)
        Returns the cell with the given key, null if not found.
        Specified by:
        getCell in interface adams.data.spreadsheet.Row
        Overrides:
        getCell in class adams.data.spreadsheet.AbstractRow
        Parameters:
        cellKey - the cell to look for
        Returns:
        the cell or null if not found
      • getCell

        public adams.data.spreadsheet.Cell getCell​(int columnIndex)
        Returns the cell with the given index, null if not found.
        Specified by:
        getCell in interface adams.data.spreadsheet.Row
        Overrides:
        getCell in class adams.data.spreadsheet.AbstractRow
        Parameters:
        columnIndex - the index of the column
        Returns:
        the cell or null if not found
      • getContent

        public String getContent​(int columnIndex)
        Returns the cell content with the given index.
        Specified by:
        getContent in interface adams.data.spreadsheet.Row
        Overrides:
        getContent in class adams.data.spreadsheet.AbstractRow
        Parameters:
        columnIndex - the index of the column
        Returns:
        the content or null if not found
      • getCellKey

        public String getCellKey​(int columnIndex)
        Returns the cell key with the given column index.
        Specified by:
        getCellKey in interface adams.data.spreadsheet.Row
        Overrides:
        getCellKey in class adams.data.spreadsheet.HeaderRow
        Parameters:
        columnIndex - the index of the column
        Returns:
        the cell key, null if invalid index
      • cellKeys

        public Collection<String> cellKeys()
        Returns a collection of all stored cell keys.
        Specified by:
        cellKeys in interface adams.data.spreadsheet.Row
        Overrides:
        cellKeys in class adams.data.spreadsheet.HeaderRow
        Returns:
        all cell keys
      • cells

        public Collection<adams.data.spreadsheet.Cell> cells()
        Returns all cells.
        Specified by:
        cells in interface adams.data.spreadsheet.Row
        Overrides:
        cells in class adams.data.spreadsheet.HeaderRow
        Returns:
        the cells
      • getCellCount

        public int getCellCount()
        Returns the number of cells stored in the row.
        Specified by:
        getCellCount in interface adams.data.spreadsheet.Row
        Overrides:
        getCellCount in class adams.data.spreadsheet.AbstractRow
        Returns:
        the number of cells
      • removeMissing

        public boolean removeMissing()
        Removes all cells marked "missing".
        Specified by:
        removeMissing in interface adams.data.spreadsheet.Row
        Overrides:
        removeMissing in class adams.data.spreadsheet.AbstractRow
        Returns:
        true if any cell was removed
      • indexOf

        public int indexOf​(adams.data.spreadsheet.Cell cell)
        Returns the column this particular cell is in (must belong to this row!).
        Specified by:
        indexOf in interface adams.data.spreadsheet.Row
        Overrides:
        indexOf in class adams.data.spreadsheet.HeaderRow
        Parameters:
        cell - the cell to get the column index of
        Returns:
        the column index, -1 if not found
      • mergeWith

        public void mergeWith​(adams.data.spreadsheet.Row other)
        Merges its own data with the one provided by the specified row.

        Not implemented!
        Specified by:
        mergeWith in interface adams.core.Mergeable<adams.data.spreadsheet.Row>
        Specified by:
        mergeWith in interface adams.data.spreadsheet.Row
        Overrides:
        mergeWith in class adams.data.spreadsheet.HeaderRow
        Parameters:
        other - the row to merge with
      • toString

        public String toString()
        Simply returns the internal hashtable of cells as string.
        Specified by:
        toString in interface adams.data.spreadsheet.Row
        Overrides:
        toString in class adams.data.spreadsheet.AbstractRow
        Returns:
        the values of the row