Package adams.ml.data
Class InstancesHeaderRow
- java.lang.Object
-
- adams.data.spreadsheet.AbstractRow
-
- adams.data.spreadsheet.HeaderRow
-
- adams.ml.data.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 anInstances
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.
-
Constructor Summary
Constructors Constructor Description InstancesHeaderRow(InstancesView owner)
Initializes the header row.
-
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.
-
-
-
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 interfaceadams.data.spreadsheet.Row
- Overrides:
setOwner
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
getClone
in classadams.data.spreadsheet.HeaderRow
- Parameters:
owner
- the new owner- Returns:
- the clone
-
clear
public void clear()
Removes all cells.
Does nothing.- Specified by:
clear
in interfaceadams.data.spreadsheet.Row
- Overrides:
clear
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
assign
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
newCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
hasCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
hasCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
addCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
addCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
removeCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
removeCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
getCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
getCell
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
getContent
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
getCellKey
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
cellKeys
in classadams.data.spreadsheet.HeaderRow
- Returns:
- all cell keys
-
cells
public Collection<adams.data.spreadsheet.Cell> cells()
Returns all cells.- Specified by:
cells
in interfaceadams.data.spreadsheet.Row
- Overrides:
cells
in classadams.data.spreadsheet.HeaderRow
- Returns:
- the cells
-
getCellCount
public int getCellCount()
Returns the number of cells stored in the row.- Specified by:
getCellCount
in interfaceadams.data.spreadsheet.Row
- Overrides:
getCellCount
in classadams.data.spreadsheet.AbstractRow
- Returns:
- the number of cells
-
removeMissing
public boolean removeMissing()
Removes all cells marked "missing".- Specified by:
removeMissing
in interfaceadams.data.spreadsheet.Row
- Overrides:
removeMissing
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
indexOf
in classadams.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 interfaceadams.core.Mergeable<adams.data.spreadsheet.Row>
- Specified by:
mergeWith
in interfaceadams.data.spreadsheet.Row
- Overrides:
mergeWith
in classadams.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 interfaceadams.data.spreadsheet.Row
- Overrides:
toString
in classadams.data.spreadsheet.AbstractRow
- Returns:
- the values of the row
-
-