Package org.ujmp.core.genericmatrix.impl
Class DefaultSparseGenericMatrix<A>
- java.lang.Object
-
- java.lang.Number
-
- org.ujmp.core.AbstractMatrix
-
- org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix<A>
-
- org.ujmp.core.genericmatrix.stub.AbstractSparseGenericMatrix<A>
-
- org.ujmp.core.genericmatrix.impl.DefaultSparseGenericMatrix<A>
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,java.lang.Comparable<Matrix>
,HasMetaData
,BaseMatrix
,BooleanCalculations
,CanPerformCalculations
,DenseMatrix
,DenseMatrix2D
,DenseMatrixMultiD
,BasicDoubleCalculations
,DoubleCalculations
,BasicEntrywiseDoubleCalculations
,CreatorDoubleCalculations
,EntrywiseDoubleCalculations
,HyperbolicDoubleCalculations
,MiscEntrywiseDoubleCalculations
,RoundingDoubleCalculations
,TrigonometricDoubleCalculations
,DecompositionDoubleCalculations
,DiscretizeCalculations
,GeneralDoubleCalculations
,MiscGeneralDoubleCalculations
,MissingValueDoubleCalculations
,StatisticalDoubleCalculations
,BaseGenericMatrix<A>
,DenseGenericMatrix<A>
,DenseGenericMatrix2D<A>
,DenseGenericMatrixMultiD<A>
,GenericMatrix<A>
,GenericMatrix2D<A>
,GenericMatrixMultiD<A>
,SparseGenericMatrix<A>
,SparseGenericMatrix2D<A>
,SparseGenericMatrixMultiD<A>
,BaseMatrixProperties
,Clearable
,Conversions
,CoordinateFunctions
,CoreObject
,DistanceMeasures
,ExtendedMatrixProperties
,GettersAndSetters
,HasDescription
,HasGUIObject
,HasId
,HasLabel
,IntCalculations
,Matrix
,Matrix2D
,MatrixMultiD
,ObjectCalculations
,SparseMatrix
,SparseMatrix2D
,SparseMatrixMultiD
,StringCalculations
- Direct Known Subclasses:
DefaultSparseBigDecimalMatrix
,DefaultSparseBigIntegerMatrix
,DefaultSparseBooleanMatrix
,DefaultSparseByteMatrix
,DefaultSparseCharMatrix
,DefaultSparseDoubleMatrix
,DefaultSparseFloatMatrix
,DefaultSparseIntMatrix
,DefaultSparseLongMatrix
,DefaultSparseObjectMatrix
,DefaultSparseShortMatrix
,DefaultSparseStringMatrix
public class DefaultSparseGenericMatrix<A> extends AbstractSparseGenericMatrix<A>
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private int
maximumNumberOfEntries
private static long
serialVersionUID
protected java.util.Map<Coordinates,A>
values
-
Fields inherited from class org.ujmp.core.AbstractMatrix
guiObject, size
-
Fields inherited from interface org.ujmp.core.BaseMatrix
ALL, COLUMN, LINK, NEW, NONE, ORIG, ROW, X, Y, Z
-
Fields inherited from interface org.ujmp.core.DenseMatrix
Factory
-
Fields inherited from interface org.ujmp.core.DenseMatrix2D
Factory
-
Fields inherited from interface org.ujmp.core.interfaces.HasDescription
DESCRIPTION
-
Fields inherited from interface org.ujmp.core.annotation.HasMetaData
DIMENSIONMETADATA
-
Fields inherited from interface org.ujmp.core.Matrix
chol, divideMatrix, divideScalar, eig, Factory, inv, lu, minusMatrix, minusScalar, mtimes, plusMatrix, plusScalar, qr, solve, svd, timesMatrix, timesScalar, transpose
-
Fields inherited from interface org.ujmp.core.SparseMatrix
Factory
-
Fields inherited from interface org.ujmp.core.SparseMatrix2D
Factory
-
-
Constructor Summary
Constructors Constructor Description DefaultSparseGenericMatrix(long... size)
DefaultSparseGenericMatrix(Matrix m)
DefaultSparseGenericMatrix(Matrix m, int maximumNumberOfEntries)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Iterable<long[]>
availableCoordinates()
Returns an Iterator that only goes over the coordinates in the Matrix that are stored.void
clear()
boolean
containsCoordinates(long... coordinates)
Determines if the given Coordinates are part of the Matrix.double
getAsDouble(long... coordinates)
Returns a double representation of an entry in the matrix.A
getObject(long... coordinates)
long
getValueCount()
ValueType
getValueType()
void
setAsDouble(double value, long... coordinates)
Sets an entry in the matrix to a double value.void
setObject(java.lang.Object value, long... coordinates)
void
setSize(long... size)
Sets the size of the matrix.-
Methods inherited from class org.ujmp.core.genericmatrix.stub.AbstractSparseGenericMatrix
isSparse
-
Methods inherited from class org.ujmp.core.genericmatrix.stub.AbstractGenericMatrix
getAsObject, getObject, getObject, setAsObject, setObject, setObject
-
Methods inherited from class org.ujmp.core.AbstractMatrix
abs, addMissing, allCoordinates, allValues, and, and, append, appendHorizontally, appendVertically, atimes, bigDecimalValue, bigIntegerValue, booleanValue, bootstrap, bootstrap, ceil, center, charValue, chebyshevDistanceTo, chol, clone, compareTo, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, convert, convertEncoding, corrcoef, cos, cosh, cosineSimilarity, cosineSimilarityTo, countMissing, cov, cumprod, cumsum, dateValue, delete, delete, delete, deleteColumns, deleteColumns, deleteColumnsWithMissingValues, deleteRows, deleteRows, deleteRowsWithMissingValues, det, diag, diff, discretize, discretize, discretizeToBoolean, discretizeToColumns, divide, divide, divide, divide, doubleValue, eig, eigSymm, eq, eq, equals, equalsAnnotation, equalsContent, euklideanDistance, euklideanDistanceTo, exp, exportTo, extractAnnotation, eye, fadeIn, fadeOut, fill, fireValueChanged, fireValueChanged, fireValueChanged, flipdim, floatValue, floor, ge, ge, getAbsoluteValueMean, getAbsoluteValueSum, getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsByteArray, getAsChar, getAsDate, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsShort, getAsString, getColumnCount, getColumnForLabel, getColumnLabel, getColumnList, getCoordinatesOfMaximum, getCoordinatesOfMinimum, getCoreObjectId, getDescription, getDimensionCount, getDimensionLabel, getDimensionMetaData, getEuklideanValue, getFactory, getGUIObject, getId, getLabel, getLabelObject, getMaxValue, getMeanValue, getMetaData, getMetaData, getMetaDataDimensionMatrix, getMetaDataDouble, getMetaDataMatrix, getMetaDataString, getMinValue, getPositionForLabel, getPreferredObject, getRMS, getRowCount, getRowForLabel, getRowLabel, getRowList, getSize, getSize, getStdValue, getValueSum, getZCount, ginv, grayScale, gt, gt, importFrom, impute, includeAnnotation, indexOfMax, indexOfMin, intValue, inv, invSPD, invSymm, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSPD, isSquare, isSymmetric, isTransient, le, le, log, log10, log2, logistic, longValue, lowerCase, lt, lt, lu, manhattenDistance, manhattenDistanceTo, max, mean, min, minkowskiDistance, minkowskiDistanceTo, minus, minus, minus, minus, mtimes, mtimes, mutualInf, nans, ne, ne, nonZeroCoordinates, norm1, norm2, normalize, normF, normInf, not, ones, or, or, pairedTTest, pdet, pinv, pinv, plus, plus, plus, plus, power, power, princomp, prod, qr, rand, randn, rank, removePunctuation, removeWords, replace, replaceMissingBy, replaceRegex, replaceRegex, reshape, round, save, save, select, select, select, selectColumns, selectColumns, selectedCoordinates, selectedCoordinates, selectRows, selectRows, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsByteArray, setAsChar, setAsDate, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsShort, setAsString, setColumnLabel, setContent, setDescription, setDimensionLabel, setDimensionMetaData, setId, setLabel, setMetaData, setMetaData, setMetaDataDimensionMatrix, setRowLabel, share, share, showGUI, shuffle, sign, sin, sinh, solve, solveSPD, solveSymm, sortrows, sqrt, squeeze, standardize, std, stem, stringValue, subMatrix, sum, svd, svd, swap, tan, tanh, tanh, tfIdf, times, times, times, times, toBigDecimalArray, toBigDecimalMatrix, toBigIntegerArray, toBigIntegerMatrix, toBooleanArray, toBooleanMatrix, toByteArray, toByteMatrix, toCharArray, toCharMatrix, toColumnVector, toDateArray, toDoubleArray, toDoubleMatrix, toFloatArray, toFloatMatrix, toHtml, toIntArray, toIntMatrix, toListMatrix, toLongArray, toLongMatrix, toMapMatrix, toObjectArray, toObjectMatrix, toRowVector, toSetMatrix, toShortArray, toShortMatrix, toString, toStringArray, toStringMatrix, trace, translate, transpose, transpose, transpose, tril, triu, unique, uniqueValueCount, upperCase, var, xor, xor, zeros
-
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ujmp.core.BaseMatrix
getFactory
-
Methods inherited from interface org.ujmp.core.interfaces.BaseMatrixProperties
allValues, equals, equalsAnnotation, equalsContent, getColumnCount, getColumnList, getDimensionCount, getRowCount, getRowList, getSize, getSize, getZCount, isColumnVector, isDiagonal, isEmpty, isMultidimensionalMatrix, isReadOnly, isResizable, isRowVector, isScalar, isSingular, isSquare, isSymmetric, isTransient, toString
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.basic.BasicDoubleCalculations
atimes, divide, divide, divide, divide, minus, minus, minus, minus, mtimes, mtimes, plus, plus, plus, plus, times, times, times, times
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.basic.BasicEntrywiseDoubleCalculations
abs, exp, log, log10, log2, logistic, power, power, sign, sqrt
-
Methods inherited from interface org.ujmp.core.booleanmatrix.calculation.BooleanCalculations
and, and, eq, eq, ge, ge, gt, gt, le, le, lt, lt, ne, ne, not, or, or, xor, xor
-
Methods inherited from interface org.ujmp.core.interfaces.Conversions
toBigDecimalMatrix, toBigIntegerMatrix, toBooleanMatrix, toByteMatrix, toCharMatrix, toDoubleMatrix, toFloatMatrix, toIntMatrix, toListMatrix, toLongMatrix, toMapMatrix, toObjectMatrix, toSetMatrix, toShortMatrix, toStringMatrix
-
Methods inherited from interface org.ujmp.core.interfaces.CoordinateFunctions
allCoordinates, getCoordinatesOfMaximum, getCoordinatesOfMinimum, nonZeroCoordinates, selectedCoordinates, selectedCoordinates
-
Methods inherited from interface org.ujmp.core.interfaces.CoreObject
getCoreObjectId
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.creators.CreatorDoubleCalculations
eye, nans, ones, rand, randn, zeros
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.decomposition.DecompositionDoubleCalculations
chol, eig, eigSymm, ginv, inv, invSPD, invSymm, lu, pinv, pinv, princomp, qr, solve, solveSPD, solveSymm, svd, svd
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.discretize.DiscretizeCalculations
discretize, discretize, discretizeToBoolean, discretizeToColumns
-
Methods inherited from interface org.ujmp.core.interfaces.DistanceMeasures
chebyshevDistanceTo, cosineSimilarity, cosineSimilarityTo, euklideanDistance, euklideanDistanceTo, manhattenDistance, manhattenDistanceTo, minkowskiDistance, minkowskiDistanceTo
-
Methods inherited from interface org.ujmp.core.interfaces.ExtendedMatrixProperties
bigDecimalValue, bigIntegerValue, booleanValue, byteValue, charValue, containsBigDecimal, containsBigInteger, containsBoolean, containsByte, containsChar, containsDate, containsDouble, containsFloat, containsInt, containsLong, containsMissingValues, containsNull, containsObject, containsShort, containsString, dateValue, det, doubleValue, floatValue, getAbsoluteValueMean, getAbsoluteValueSum, getEuklideanValue, getMaxValue, getMeanValue, getMinValue, getRMS, getStdValue, getValueSum, intValue, isSPD, longValue, norm1, norm2, normF, normInf, pdet, rank, setContent, shortValue, stringValue, trace
-
Methods inherited from interface org.ujmp.core.interfaces.GettersAndSetters
getAsBigDecimal, getAsBigInteger, getAsBoolean, getAsByte, getAsByteArray, getAsChar, getAsDate, getAsFloat, getAsInt, getAsLong, getAsMatrix, getAsObject, getAsShort, getAsString, getPreferredObject, setAsBigDecimal, setAsBigInteger, setAsBoolean, setAsByte, setAsByteArray, setAsChar, setAsDate, setAsFloat, setAsInt, setAsLong, setAsMatrix, setAsObject, setAsShort, setAsString, toBigDecimalArray, toBigIntegerArray, toBooleanArray, toByteArray, toCharArray, toDateArray, toDoubleArray, toFloatArray, toIntArray, toLongArray, toObjectArray, toShortArray, toStringArray
-
Methods inherited from interface org.ujmp.core.interfaces.HasDescription
getDescription, setDescription
-
Methods inherited from interface org.ujmp.core.interfaces.HasGUIObject
getGUIObject, showGUI
-
Methods inherited from interface org.ujmp.core.interfaces.HasLabel
getLabel, getLabelObject, setLabel
-
Methods inherited from interface org.ujmp.core.annotation.HasMetaData
getColumnForLabel, getColumnLabel, getDimensionLabel, getDimensionMetaData, getMetaData, getMetaData, getMetaDataDimensionMatrix, getMetaDataDouble, getMetaDataMatrix, getMetaDataString, getPositionForLabel, getRowForLabel, getRowLabel, setColumnLabel, setDimensionLabel, setDimensionMetaData, setMetaData, setMetaData, setMetaDataDimensionMatrix, setRowLabel
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.hyperbolic.HyperbolicDoubleCalculations
cosh, sinh, tanh, tanh
-
Methods inherited from interface org.ujmp.core.Matrix
clone, exportTo, fireValueChanged, fireValueChanged, fireValueChanged, importFrom, save, save, share, share, toHtml
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.misc.MiscEntrywiseDoubleCalculations
grayScale
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.misc.MiscGeneralDoubleCalculations
append, appendHorizontally, appendVertically, center, fadeIn, fadeOut, normalize, replaceMissingBy, standardize
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.missingvalues.MissingValueDoubleCalculations
addMissing, countMissing, deleteColumnsWithMissingValues, deleteRowsWithMissingValues, impute
-
Methods inherited from interface org.ujmp.core.objectmatrix.calculation.ObjectCalculations
bootstrap, bootstrap, convert, delete, delete, delete, deleteColumns, deleteColumns, deleteRows, deleteRows, diag, extractAnnotation, fill, flipdim, includeAnnotation, replace, reshape, select, select, select, selectColumns, selectColumns, selectRows, selectRows, shuffle, sortrows, squeeze, subMatrix, swap, toColumnVector, toRowVector, transpose, transpose, transpose, tril, triu, unique, uniqueValueCount
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.rounding.RoundingDoubleCalculations
ceil, floor, round
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.general.statistical.StatisticalDoubleCalculations
corrcoef, cov, cumprod, cumsum, diff, indexOfMax, indexOfMin, max, mean, min, mutualInf, pairedTTest, prod, std, sum, var
-
Methods inherited from interface org.ujmp.core.stringmatrix.calculation.StringCalculations
convertEncoding, lowerCase, removePunctuation, removeWords, replaceRegex, replaceRegex, stem, tfIdf, translate, upperCase
-
Methods inherited from interface org.ujmp.core.doublematrix.calculation.entrywise.trigonometric.TrigonometricDoubleCalculations
cos, sin, tan
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
values
protected final java.util.Map<Coordinates,A> values
-
maximumNumberOfEntries
private int maximumNumberOfEntries
-
-
Method Detail
-
setSize
public void setSize(long... size)
Description copied from interface:BaseMatrixProperties
Sets the size of the matrix. This is an optional method that is not implemented for all matrices. If this method is not implemented, aMatrixException
is thrown.- Specified by:
setSize
in interfaceBaseMatrixProperties
- Overrides:
setSize
in classAbstractMatrix
- Parameters:
size
- the new size of the matrix
-
getObject
public A getObject(long... coordinates)
-
getValueCount
public long getValueCount()
- Specified by:
getValueCount
in interfaceBaseMatrixProperties
- Overrides:
getValueCount
in classAbstractMatrix
-
setObject
public void setObject(java.lang.Object value, long... coordinates)
- Specified by:
setObject
in interfaceGenericMatrixMultiD<A>
- Overrides:
setObject
in classAbstractGenericMatrix<A>
-
availableCoordinates
public java.lang.Iterable<long[]> availableCoordinates()
Description copied from interface:CoordinateFunctions
Returns an Iterator that only goes over the coordinates in the Matrix that are stored. For most Matrices, this is the same as allCoordinates(). For sparse Matrices, it iterates only over the entries in it.- Returns:
- Iterable over the saved entries in a Matrix.
-
containsCoordinates
public boolean containsCoordinates(long... coordinates)
Description copied from interface:CoordinateFunctions
Determines if the given Coordinates are part of the Matrix. If the Matrix is dense, true is returned for all Coordinates smaller than the Matrix's size. For sparse Matrices, this function checks if the coordinates are actually stored in the matrix or not.- Parameters:
coordinates
- The coordinates to check- Returns:
- a boolean stating if the coordinates are part of the Matrix
-
getAsDouble
public double getAsDouble(long... coordinates)
Description copied from interface:GettersAndSetters
Returns a double representation of an entry in the matrix. The stored value will be converted to a double as good as possible.- Specified by:
getAsDouble
in interfaceGettersAndSetters
- Overrides:
getAsDouble
in classAbstractMatrix
- Parameters:
coordinates
- location of the entry- Returns:
- a double representation of the entry @
-
setAsDouble
public void setAsDouble(double value, long... coordinates)
Description copied from interface:GettersAndSetters
Sets an entry in the matrix to a double value. If the matrix cannot store double values, the value will be represented as good as possible.- Specified by:
setAsDouble
in interfaceGettersAndSetters
- Overrides:
setAsDouble
in classAbstractMatrix
- Parameters:
value
- double valuecoordinates
- location of the entry @
-
getValueType
public ValueType getValueType()
- Specified by:
getValueType
in interfaceBaseMatrixProperties
- Overrides:
getValueType
in classAbstractMatrix
-
clear
public final void clear()
-
-