Class AbstractMatrix<R,C,V>
java.lang.Object
ubic.basecode.dataStructure.matrix.AbstractMatrix<R,C,V>
- All Implemented Interfaces:
Serializable
,Matrix2D<R,
C, V>
- Direct Known Subclasses:
CompressedBitMatrix
,DoubleMatrix
,IntegerMatrix
,ObjectMatrixImpl
,StringMatrix
- Author:
- pavlidis
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal void
addColumnName
(C s) Add a column name when we don't care what the index will be.final void
addRowName
(R s) Add a row name when we don't care what the index will be.double[][]
Attempt to coerce the entries into doubles.void
Set all values in the matrix to the given value.protected void
checkColRange
(int startCol, int endCol) protected void
checkRowRange
(int startRow, int endRow) final boolean
containsColumnName
(C columnName) final boolean
containsRowName
(R rowName) final int
getColIndexByName
(C columnKey) Get the index of a column by name.final C
getColName
(int i) Gte the column name for an index.final int
Get the index of a row by name..final R
getRowName
(int i) Get the row name for an indexfinal boolean
Check if this matrix has a valid set of column names.boolean
Test for the presence of missing values (null, or in the case of numbers, NaN)final boolean
final boolean
final int
Return the number of missing values in the matrix.final void
setColumnName
(C s, int i) Add a column name associated with an index.void
setColumnNames
(List<C> v) final void
setRowName
(R s, int i) Add a row name associated with a row index.final void
setRowNames
(List<R> v) abstract int
size()
-
Field Details
-
MAX_ROWS_TO_PRINT
protected static final int MAX_ROWS_TO_PRINT- See Also:
-
-
Constructor Details
-
AbstractMatrix
public AbstractMatrix()
-
-
Method Details
-
addColumnName
Add a column name when we don't care what the index will be. The index will be set by the method. This is useful for when we need to set up a matrix before we know how many column or rows there are.- Specified by:
addColumnName
in interfaceMatrix2D<R,
C, V> - Parameters:
s
-
-
addRowName
Add a row name when we don't care what the index will be. The index will be set by the method. This is useful for when we need to set up a matrix before we know how many column or rows there are.- Parameters:
s
-
-
asDoubles
public double[][] asDoubles()Description copied from interface:Matrix2D
Attempt to coerce the entries into doubles.Numeric entries (Double, BigDecimal, Integer, BigInteger) and Strings that can be parsed as doubles are converted. Booleans are converted to 1 or 0. Dates are converted via Date.getDate(). Null entries are rendered as Double.NaN. For entries that are other types of objects, the HashCode is used.
-
assign
Description copied from interface:Matrix2D
Set all values in the matrix to the given value. -
containsColumnName
- Specified by:
containsColumnName
in interfaceMatrix2D<R,
C, V> - Parameters:
columnName
-- Returns:
-
containsRowName
- Specified by:
containsRowName
in interfaceMatrix2D<R,
C, V> - Parameters:
rowName
-- Returns:
-
getColIndexByName
Description copied from interface:Matrix2D
Get the index of a column by name.- Specified by:
getColIndexByName
in interfaceMatrix2D<R,
C, V> - Parameters:
columnKey
- String- Returns:
- int
-
getColName
Description copied from interface:Matrix2D
Gte the column name for an index.- Specified by:
getColName
in interfaceMatrix2D<R,
C, V> - Parameters:
i
- int- Returns:
- java.lang.String
-
getColNames
- Specified by:
getColNames
in interfaceMatrix2D<R,
C, V> - Returns:
- list of column names. Do not modify this list. Use the addColumnName methods.
-
getRowIndexByName
Description copied from interface:Matrix2D
Get the index of a row by name..- Specified by:
getRowIndexByName
in interfaceMatrix2D<R,
C, V> - Parameters:
s
- String- Returns:
- int
-
getRowName
Description copied from interface:Matrix2D
Get the row name for an index- Specified by:
getRowName
in interfaceMatrix2D<R,
C, V> - Parameters:
i
- int- Returns:
- java.lang.String
-
getRowNameMapIterator
- Specified by:
getRowNameMapIterator
in interfaceMatrix2D<R,
C, V> - Returns:
- java.util.Iterator
-
getRowNames
- Specified by:
getRowNames
in interfaceMatrix2D<R,
C, V> - Returns:
-
hasColNames
public final boolean hasColNames()Description copied from interface:Matrix2D
Check if this matrix has a valid set of column names.- Specified by:
hasColNames
in interfaceMatrix2D<R,
C, V> - Returns:
- boolean
-
hasMissingValues
public boolean hasMissingValues()Test for the presence of missing values (null, or in the case of numbers, NaN)- Returns:
-
hasRow
-
hasRowNames
public final boolean hasRowNames()- Specified by:
hasRowNames
in interfaceMatrix2D<R,
C, V> - Returns:
- boolean
-
numMissing
public final int numMissing()Description copied from interface:Matrix2D
Return the number of missing values in the matrix.- Specified by:
numMissing
in interfaceMatrix2D<R,
C, V> - Returns:
-
setColumnName
Description copied from interface:Matrix2D
Add a column name associated with an index.- Specified by:
setColumnName
in interfaceMatrix2D<R,
C, V> - Parameters:
s
- Object a column namei
- int the column index associated with this name
-
setColumnNames
- Specified by:
setColumnNames
in interfaceMatrix2D<R,
C, V> - Parameters:
v
-
-
setRowName
Description copied from interface:Matrix2D
Add a row name associated with a row index.- Specified by:
setRowName
in interfaceMatrix2D<R,
C, V> - Parameters:
s
- Objecti
- int
-
setRowNames
- Specified by:
setRowNames
in interfaceMatrix2D<R,
C, V> - Parameters:
v
-
-
size
public abstract int size() -
checkColRange
protected void checkColRange(int startCol, int endCol) -
checkRowRange
protected void checkRowRange(int startRow, int endRow)
-