Package weka.experiment
Class ResultMatrix
java.lang.Object
weka.experiment.ResultMatrix
- All Implemented Interfaces:
Serializable
,OptionHandler
,RevisionHandler
- Direct Known Subclasses:
ResultMatrixCSV
,ResultMatrixGnuPlot
,ResultMatrixHTML
,ResultMatrixLatex
,ResultMatrixPlainText
,ResultMatrixSignificance
public abstract class ResultMatrix
extends Object
implements Serializable, RevisionHandler, OptionHandler
This matrix is a container for the datasets and classifier setups and their
statistics. Derived classes output the data in different formats. Derived
classes need to implement the following methods:
toStringMatrix()
toStringKey()
toStringHeader()
toStringSummary()
toStringRanking()
- Version:
- $Revision: 13955 $
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionthe left parentheses for enumerating cols/rows.loss string.the right parentheses for enumerating cols/rows.static final int
loss.static final int
tie.static final int
win.tie string.win string. -
Constructor Summary
ConstructorDescriptioninitializes the matrix as 1x1 matrix.ResultMatrix
(int cols, int rows) initializes the matrix with the given dimensions.ResultMatrix
(ResultMatrix matrix) initializes the matrix with the values from the given matrix. -
Method Summary
Modifier and TypeMethodDescriptionvoid
adds the key-value pair to the header.void
assign
(ResultMatrix matrix) acquires the data from the given matrix.void
clear()
removes the stored data and the ordering, but retains the dimensions of the matrix.void
removes all the header information.void
clears the currently stored ranking data.void
clears the current summary data.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.double
getAverage
(int col) returns the average of the mean at the given position, if the position is valid, otherwise 0.int
returns the number of columns.boolean
getColHidden
(int index) returns the hidden status of the column, if the index is valid, otherwise false.getColName
(int index) returns the name of the row, if the index is valid, otherwise null.int
returns the current width for the column names.int[]
returns the current order of the columns, null means the default order.double
getCount
(int index) returns the count for the row.int
returns the current width for the counts.int
returns the default width for the column names.int
returns the default width for the counts.boolean
returns the default of whether column names are prefixed with the index.boolean
returns theh default of whether row names are prefixed with the index.int
returns the default precision for the means.int
returns the default width for the mean.boolean
returns the default of whether column names or numbers instead are printed.boolean
returns the default of whether row names or numbers instead are printed.boolean
returns the default of whether the filter classname is removed from the dataset name.int
returns the default width for the row names.boolean
returns the default of whether average per column is displayed or not.boolean
returns the default of whether std deviations are displayed or not.int
returns the default width for the significance.int
returns the default standard deviation precision.int
returns the default width for the std dev.int
getDisplayCol
(int index) returns the displayed index of the given col, depending on the order of columns, returns -1 if index out of bounds.abstract String
returns the name of the output format.int
getDisplayRow
(int index) returns the displayed index of the given row, depending on the order of rows, returns -1 if index out of bounds.boolean
returns whether column names are prefixed with the index.boolean
returns whether row names or prefixed with the index.returns the value associated with the given key, null if if cannot be found.double
getMean
(int col, int row) returns the mean at the given position, if the position is valid, otherwise 0.int
returns the current precision for the means.int
returns the current width for the mean.String[]
Gets the current option settings for the OptionHandler.boolean
returns whether column names or numbers instead are printed.boolean
returns whether row names or numbers instead are printed.boolean
returns whether the filter classname is removed from the dataset name.int
returns the number of rows.boolean
getRowHidden
(int index) returns the hidden status of the row, if the index is valid, otherwise false.getRowName
(int index) returns the name of the row, if the index is valid, otherwise null.int
returns the current width for the row names.int[]
returns the current order of the rows, null means the default order.boolean
returns whether average per column is displayed or not.boolean
returns whether std deviations are displayed or not.int
getSignificance
(int col, int row) returns the significance at the given position, if the position is valid, otherwise SIGNIFICANCE_ATIE.int
getSignificanceCount
(int col, int type) counts the occurrences of the given significance type in the given column.int
returns the current width for the significance.double
getStdDev
(int col, int row) returns the std deviation at the given position, if the position is valid, otherwise 0.int
returns the current standard deviation precision.int
returns the current width for the std dev.int
returns the number of visible columns.int
returns the number of visible rows.abstract String
Returns a string describing the matrix.returns an enumeration of the header keys.Returns an enumeration of all the available options..Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.void
setColHidden
(int index, boolean hidden) sets the hidden status of the column (if the index is valid).void
setColName
(int index, String name) sets the name of the column (if the index is valid).void
setColNameWidth
(int width) sets the width for the column names (0 = optimal).void
setColOrder
(int[] order) sets the ordering of the columns, null means default.void
setCount
(int index, double count) sets the count for the row (if the index is valid).void
setCountWidth
(int width) sets the width for the counts (0 = optimal).void
setEnumerateColNames
(boolean enumerate) sets whether the column names are prefixed with "(x)" where "x" is the index.void
setEnumerateRowNames
(boolean enumerate) sets whether to the row names are prefixed with the index.void
setMean
(int col, int row, double value) sets the mean at the given position (if the position is valid).void
setMeanPrec
(int prec) sets the precision for the means.void
setMeanWidth
(int width) sets the width for the mean (0 = optimal).void
setOptions
(String[] options) Sets the OptionHandler's options using the given list.void
setPrintColNames
(boolean print) sets whether the column names or numbers instead are printed.void
setPrintRowNames
(boolean print) sets whether the row names or numbers instead are printed deactivating automatically sets m_EnumerateColNames to TRUE.void
setRanking
(int[][] wins) sets the ranking data based on the wins.void
setRemoveFilterName
(boolean remove) sets whether to remove the filter classname from the dataset name.void
setRowHidden
(int index, boolean hidden) sets the hidden status of the row (if the index is valid).void
setRowName
(int index, String name) sets the name of the row (if the index is valid).void
setRowNameWidth
(int width) sets the width for the row names (0 = optimal).void
setRowOrder
(int[] order) sets the ordering of the rows, null means default.void
setShowAverage
(boolean show) sets whether to display the average per column or not.void
setShowStdDev
(boolean show) sets whether to display the std deviations or not.void
setSignificance
(int col, int row, int value) sets the significance at the given position (if the position is valid).void
setSignificanceWidth
(int width) sets the width for the significance (0 = optimal).void
setSize
(int cols, int rows) clears the content of the matrix and sets the new size.void
setStdDev
(int col, int row, double value) sets the std deviation at the given position (if the position is valid).void
setStdDevPrec
(int prec) sets the precision for the standard deviation.void
setStdDevWidth
(int width) sets the width for the std dev (0 = optimal).void
setSummary
(int[][] nonSigWins, int[][] wins) sets the non-significant and significant wins of the resultsets.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.Returns the tip text for this property.toString()
returns the matrix as a string.abstract String
returns the header of the matrix as a string.abstract String
returns returns a key for all the col names, for better readability if the names got cut off.abstract String
returns the matrix as a string.abstract String
returns the ranking in a string representation.abstract String
returns the summary as string.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface weka.core.RevisionHandler
getRevision
-
Field Details
-
SIGNIFICANCE_TIE
public static final int SIGNIFICANCE_TIEtie.- See Also:
-
SIGNIFICANCE_WIN
public static final int SIGNIFICANCE_WINwin.- See Also:
-
SIGNIFICANCE_LOSS
public static final int SIGNIFICANCE_LOSSloss.- See Also:
-
TIE_STRING
tie string. -
WIN_STRING
win string. -
LOSS_STRING
loss string. -
LEFT_PARENTHESES
the left parentheses for enumerating cols/rows. -
RIGHT_PARENTHESES
the right parentheses for enumerating cols/rows.
-
-
Constructor Details
-
ResultMatrix
public ResultMatrix()initializes the matrix as 1x1 matrix. -
ResultMatrix
public ResultMatrix(int cols, int rows) initializes the matrix with the given dimensions.- Parameters:
cols
- the number of columnsrows
- the number of rows
-
ResultMatrix
initializes the matrix with the values from the given matrix.- Parameters:
matrix
- the matrix to get the values from
-
-
Method Details
-
globalInfo
Returns a string describing the matrix.- Returns:
- a description suitable for displaying in the experimenter gui
-
listOptions
Returns an enumeration of all the available options..- Specified by:
listOptions
in interfaceOptionHandler
- Returns:
- an enumeration of all available options.
-
setOptions
Sets the OptionHandler's options using the given list. All options will be set (or reset) during this call (i.e. incremental setting of options is not possible).- Specified by:
setOptions
in interfaceOptionHandler
- Parameters:
options
- the list of options as an array of strings- Throws:
Exception
- if an option is not supported
-
getOptions
Gets the current option settings for the OptionHandler.- Specified by:
getOptions
in interfaceOptionHandler
- Returns:
- the list of current option settings as an array of strings
-
getDisplayName
returns the name of the output format.- Returns:
- the display name
-
assign
acquires the data from the given matrix.- Parameters:
matrix
- the matrix to get the data from
-
clear
public void clear()removes the stored data and the ordering, but retains the dimensions of the matrix. -
setSize
public void setSize(int cols, int rows) clears the content of the matrix and sets the new size.- Parameters:
cols
- the number of mean columnsrows
- the number of mean rows
-
setMeanPrec
public void setMeanPrec(int prec) sets the precision for the means.- Parameters:
prec
- the number of decimals
-
getMeanPrec
public int getMeanPrec()returns the current precision for the means.- Returns:
- the number of decimals
-
getDefaultMeanPrec
public int getDefaultMeanPrec()returns the default precision for the means.- Returns:
- the number of decimals
-
meanPrecTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setStdDevPrec
public void setStdDevPrec(int prec) sets the precision for the standard deviation.- Parameters:
prec
- the number of decimals
-
getStdDevPrec
public int getStdDevPrec()returns the current standard deviation precision.- Returns:
- the number of decimals
-
getDefaultStdDevPrec
public int getDefaultStdDevPrec()returns the default standard deviation precision.- Returns:
- the number of decimals
-
stdDevPrecTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setColNameWidth
public void setColNameWidth(int width) sets the width for the column names (0 = optimal).- Parameters:
width
- the width
-
getColNameWidth
public int getColNameWidth()returns the current width for the column names.- Returns:
- the width
-
getDefaultColNameWidth
public int getDefaultColNameWidth()returns the default width for the column names.- Returns:
- the width
-
colNameWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setRowNameWidth
public void setRowNameWidth(int width) sets the width for the row names (0 = optimal).- Parameters:
width
- the width
-
getRowNameWidth
public int getRowNameWidth()returns the current width for the row names.- Returns:
- the width
-
getDefaultRowNameWidth
public int getDefaultRowNameWidth()returns the default width for the row names.- Returns:
- the width
-
rowNameWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setMeanWidth
public void setMeanWidth(int width) sets the width for the mean (0 = optimal).- Parameters:
width
- the width
-
getMeanWidth
public int getMeanWidth()returns the current width for the mean.- Returns:
- the width
-
getDefaultMeanWidth
public int getDefaultMeanWidth()returns the default width for the mean.- Returns:
- the width
-
meanWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setStdDevWidth
public void setStdDevWidth(int width) sets the width for the std dev (0 = optimal).- Parameters:
width
- the width
-
getStdDevWidth
public int getStdDevWidth()returns the current width for the std dev.- Returns:
- the width
-
getDefaultStdDevWidth
public int getDefaultStdDevWidth()returns the default width for the std dev.- Returns:
- the width
-
stdDevWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setSignificanceWidth
public void setSignificanceWidth(int width) sets the width for the significance (0 = optimal).- Parameters:
width
- the width
-
getSignificanceWidth
public int getSignificanceWidth()returns the current width for the significance.- Returns:
- the width
-
getDefaultSignificanceWidth
public int getDefaultSignificanceWidth()returns the default width for the significance.- Returns:
- the width
-
significanceWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setCountWidth
public void setCountWidth(int width) sets the width for the counts (0 = optimal).- Parameters:
width
- the width
-
getCountWidth
public int getCountWidth()returns the current width for the counts.- Returns:
- the width
-
getDefaultCountWidth
public int getDefaultCountWidth()returns the default width for the counts.- Returns:
- the width
-
countWidthTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setShowStdDev
public void setShowStdDev(boolean show) sets whether to display the std deviations or not.- Parameters:
show
- if true then the std deviations are displayed
-
getShowStdDev
public boolean getShowStdDev()returns whether std deviations are displayed or not.- Returns:
- true if the std deviations are displayed
-
getDefaultShowStdDev
public boolean getDefaultShowStdDev()returns the default of whether std deviations are displayed or not.- Returns:
- true if the std deviations are displayed
-
showStdDevTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setShowAverage
public void setShowAverage(boolean show) sets whether to display the average per column or not.- Parameters:
show
- if true then the average is displayed
-
getShowAverage
public boolean getShowAverage()returns whether average per column is displayed or not.- Returns:
- true if the average is displayed
-
getDefaultShowAverage
public boolean getDefaultShowAverage()returns the default of whether average per column is displayed or not.- Returns:
- true if the average is displayed
-
showAverageTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setRemoveFilterName
public void setRemoveFilterName(boolean remove) sets whether to remove the filter classname from the dataset name.- Parameters:
remove
- if true then the filter classnames are shortened
-
getRemoveFilterName
public boolean getRemoveFilterName()returns whether the filter classname is removed from the dataset name.- Returns:
- true if the filter classnames are shortened
-
getDefaultRemoveFilterName
public boolean getDefaultRemoveFilterName()returns the default of whether the filter classname is removed from the dataset name.- Returns:
- true if the filter classnames are shortened
-
removeFilterNameTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setPrintColNames
public void setPrintColNames(boolean print) sets whether the column names or numbers instead are printed. deactivating automatically sets m_EnumerateColNames to TRUE.- Parameters:
print
- if true then the names are printed instead of numbers- See Also:
-
getPrintColNames
public boolean getPrintColNames()returns whether column names or numbers instead are printed.- Returns:
- true if names instead of numbers are printed
-
getDefaultPrintColNames
public boolean getDefaultPrintColNames()returns the default of whether column names or numbers instead are printed.- Returns:
- true if names instead of numbers are printed
-
printColNamesTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setPrintRowNames
public void setPrintRowNames(boolean print) sets whether the row names or numbers instead are printed deactivating automatically sets m_EnumerateColNames to TRUE.- Parameters:
print
- if true then names instead of numbers are printed- See Also:
-
getPrintRowNames
public boolean getPrintRowNames()returns whether row names or numbers instead are printed.- Returns:
- true if names instead of numbers are printed
-
getDefaultPrintRowNames
public boolean getDefaultPrintRowNames()returns the default of whether row names or numbers instead are printed.- Returns:
- true if names instead of numbers are printed
-
printRowNamesTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setEnumerateColNames
public void setEnumerateColNames(boolean enumerate) sets whether the column names are prefixed with "(x)" where "x" is the index.- Parameters:
enumerate
- if true then the names are prefixed
-
getEnumerateColNames
public boolean getEnumerateColNames()returns whether column names are prefixed with the index.- Returns:
- true if the names are prefixed
-
getDefaultEnumerateColNames
public boolean getDefaultEnumerateColNames()returns the default of whether column names are prefixed with the index.- Returns:
- true if the names are prefixed
-
enumerateColNamesTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
setEnumerateRowNames
public void setEnumerateRowNames(boolean enumerate) sets whether to the row names are prefixed with the index.- Parameters:
enumerate
- if true then the names will be prefixed
-
getEnumerateRowNames
public boolean getEnumerateRowNames()returns whether row names or prefixed with the index.- Returns:
- true if the names are prefixed
-
getDefaultEnumerateRowNames
public boolean getDefaultEnumerateRowNames()returns theh default of whether row names are prefixed with the index.- Returns:
- true if the names are prefixed
-
enumerateRowNamesTipText
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the experimenter gui
-
getColCount
public int getColCount()returns the number of columns.- Returns:
- the number of columns
-
getVisibleColCount
public int getVisibleColCount()returns the number of visible columns.- Returns:
- the number of columns
-
getRowCount
public int getRowCount()returns the number of rows.- Returns:
- the number of rows
-
getVisibleRowCount
public int getVisibleRowCount()returns the number of visible rows.- Returns:
- the number of rows
-
setColName
sets the name of the column (if the index is valid).- Parameters:
index
- the index of the columnname
- the name of the column
-
getColName
returns the name of the row, if the index is valid, otherwise null. if getPrintColNames() is FALSE then an empty string is returned or if getEnumerateColNames() is TRUE then the 1-based index surrounded by parentheses.- Parameters:
index
- the index of the column- Returns:
- the name of the column
- See Also:
-
setRowName
sets the name of the row (if the index is valid).- Parameters:
index
- the index of the rowname
- the name of the row
-
getRowName
returns the name of the row, if the index is valid, otherwise null. if getPrintRowNames() is FALSE then an empty string is returned or if getEnumerateRowNames() is TRUE then the 1-based index surrounded by parentheses.- Parameters:
index
- the index of the row- Returns:
- the name of the row
- See Also:
-
setColHidden
public void setColHidden(int index, boolean hidden) sets the hidden status of the column (if the index is valid).- Parameters:
index
- the index of the columnhidden
- the hidden status of the column
-
getColHidden
public boolean getColHidden(int index) returns the hidden status of the column, if the index is valid, otherwise false.- Parameters:
index
- the index of the column- Returns:
- true if hidden
-
setRowHidden
public void setRowHidden(int index, boolean hidden) sets the hidden status of the row (if the index is valid).- Parameters:
index
- the index of the rowhidden
- the hidden status of the row
-
getRowHidden
public boolean getRowHidden(int index) returns the hidden status of the row, if the index is valid, otherwise false.- Parameters:
index
- the index of the row- Returns:
- true if hidden
-
setCount
public void setCount(int index, double count) sets the count for the row (if the index is valid).- Parameters:
index
- the index of the rowcount
- the count for the row
-
getCount
public double getCount(int index) returns the count for the row. if the index is invalid then 0.- Parameters:
index
- the index of the row- Returns:
- the count for the row
-
setMean
public void setMean(int col, int row, double value) sets the mean at the given position (if the position is valid).- Parameters:
col
- the column of the meanrow
- the row of the meanvalue
- the value of the mean
-
getMean
public double getMean(int col, int row) returns the mean at the given position, if the position is valid, otherwise 0.- Parameters:
col
- the column indexrow
- the row index- Returns:
- the mean
-
getAverage
public double getAverage(int col) returns the average of the mean at the given position, if the position is valid, otherwise 0.- Parameters:
col
- the column index- Returns:
- the average
-
setStdDev
public void setStdDev(int col, int row, double value) sets the std deviation at the given position (if the position is valid).- Parameters:
col
- the column of the std. deviationrow
- the row of the std deviationvalue
- the value of the std deviation
-
getStdDev
public double getStdDev(int col, int row) returns the std deviation at the given position, if the position is valid, otherwise 0.- Parameters:
col
- the column indexrow
- the row index- Returns:
- the std deviation
-
setSignificance
public void setSignificance(int col, int row, int value) sets the significance at the given position (if the position is valid).- Parameters:
col
- the column of the significancerow
- the row of the significancevalue
- the value of the significance
-
getSignificance
public int getSignificance(int col, int row) returns the significance at the given position, if the position is valid, otherwise SIGNIFICANCE_ATIE.- Parameters:
col
- the column indexrow
- the row index- Returns:
- the indicator
-
getSignificanceCount
public int getSignificanceCount(int col, int type) counts the occurrences of the given significance type in the given column.- Parameters:
col
- the columnn to gather the information fromtype
- the significance type, WIN/TIE/LOSS- Returns:
- the count
-
setRowOrder
public void setRowOrder(int[] order) sets the ordering of the rows, null means default.- Parameters:
order
- the new order of the rows
-
getRowOrder
public int[] getRowOrder()returns the current order of the rows, null means the default order.- Returns:
- the current order of the rows
-
getDisplayRow
public int getDisplayRow(int index) returns the displayed index of the given row, depending on the order of rows, returns -1 if index out of bounds.- Parameters:
index
- the row to get the displayed index for- Returns:
- the real index of the row
-
setColOrder
public void setColOrder(int[] order) sets the ordering of the columns, null means default.- Parameters:
order
- the new order of the columns
-
getColOrder
public int[] getColOrder()returns the current order of the columns, null means the default order.- Returns:
- the current order of the columns
-
getDisplayCol
public int getDisplayCol(int index) returns the displayed index of the given col, depending on the order of columns, returns -1 if index out of bounds.- Parameters:
index
- the column to get the displayed index for- Returns:
- the real index of the column
-
toStringMatrix
returns the matrix as a string.- Returns:
- the matrix as string
-
toString
returns the matrix as a string. -
clearHeader
public void clearHeader()removes all the header information. -
addHeader
adds the key-value pair to the header.- Parameters:
key
- the name of the header valuevalue
- the value of the header value
-
getHeader
returns the value associated with the given key, null if if cannot be found.- Parameters:
key
- the key to retrieve the value for- Returns:
- the associated value
-
headerKeys
returns an enumeration of the header keys.- Returns:
- all stored keys
-
toStringHeader
returns the header of the matrix as a string.- Returns:
- the header as string
- See Also:
-
m_HeaderKeys
m_HeaderValues
-
toStringKey
returns returns a key for all the col names, for better readability if the names got cut off.- Returns:
- the key
-
clearSummary
public void clearSummary()clears the current summary data. -
setSummary
public void setSummary(int[][] nonSigWins, int[][] wins) sets the non-significant and significant wins of the resultsets.- Parameters:
nonSigWins
- the non-significant winswins
- the significant wins
-
toStringSummary
returns the summary as string.- Returns:
- the summary
-
clearRanking
public void clearRanking()clears the currently stored ranking data. -
setRanking
public void setRanking(int[][] wins) sets the ranking data based on the wins.- Parameters:
wins
- the wins
-
toStringRanking
returns the ranking in a string representation.- Returns:
- the ranking
-