Class AColGroupValue
- java.lang.Object
-
- org.apache.sysds.runtime.compress.colgroup.AColGroup
-
- org.apache.sysds.runtime.compress.colgroup.AColGroupCompressed
-
- org.apache.sysds.runtime.compress.colgroup.ADictBasedColGroup
-
- org.apache.sysds.runtime.compress.colgroup.AColGroupValue
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
AMorphingMMColGroup
,APreAgg
public abstract class AColGroupValue extends ADictBasedColGroup
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sysds.runtime.compress.colgroup.AColGroup
AColGroup.CompressionType
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CM_COV_Object
centralMoment(CMOperator op, int nRows)
Central Moment instruction executed on a column group.void
computeColSums(double[] c, int nRows)
Compute the column sumlong
estimateInMemorySize()
Get the upper bound estimate of in memory allocation for the column group.int[]
getCounts()
Returns the counts of values inside the dictionary.long
getNumberNonZeros(int nRows)
Get the number of nonZeros contained in this column group.int
getNumValues()
Obtain number of distinct tuples in contained sets of values associated with this column group.AColGroup
replace(double pattern, double replace)
Make a copy of the column group values, and replace all values that match pattern with replacement value.AColGroup
rexpandCols(int max, boolean ignore, boolean cast, int nRows)
Expand the column group to multiple columns.String
toString()
-
Methods inherited from class org.apache.sysds.runtime.compress.colgroup.ADictBasedColGroup
decompressToDenseBlock, decompressToSparseBlock, getDictionary, getExactSizeOnDisk, rightMultByMatrix, write
-
Methods inherited from class org.apache.sysds.runtime.compress.colgroup.AColGroupCompressed
getMax, getMin, getSum, isEmpty, preAggRows, tsmm, unaryAggregateOperations, unaryAggregateOperations
-
Methods inherited from class org.apache.sysds.runtime.compress.colgroup.AColGroup
append, appendN, binaryRowOpLeft, binaryRowOpRight, colSum, containsValue, decompressToDenseBlock, decompressToSparseBlock, get, getColIndices, getCompressionScheme, getCompType, getCost, getIdx, getNumCols, leftMultByAColGroup, leftMultByMatrixNoPreAgg, rightMultByMatrix, scalarOperation, shiftColIndices, sliceColumn, sliceColumns, sliceRows, tsmmAColGroup, unaryOperation
-
-
-
-
Method Detail
-
getNumValues
public int getNumValues()
Description copied from class:AColGroup
Obtain number of distinct tuples in contained sets of values associated with this column group. If the column group is uncompressed the number or rows is returned.- Specified by:
getNumValues
in classAColGroup
- Returns:
- the number of distinct sets of values associated with the bitmaps in this column group
-
getCounts
public final int[] getCounts()
Returns the counts of values inside the dictionary. If already calculated it will return the previous counts. This produce an overhead in cases where the count is calculated, but the overhead will be limited to number of distinct tuples in the dictionary. The returned counts always contains the number of zero tuples as well if there are some contained, even if they are not materialized.- Returns:
- The count of each value in the MatrixBlock.
-
computeColSums
public void computeColSums(double[] c, int nRows)
Description copied from class:AColGroup
Compute the column sum- Specified by:
computeColSums
in classAColGroup
- Parameters:
c
- The array to add the column sum to.nRows
- The number of rows in the column group.
-
getNumberNonZeros
public long getNumberNonZeros(int nRows)
Description copied from class:AColGroup
Get the number of nonZeros contained in this column group.- Specified by:
getNumberNonZeros
in classAColGroup
- Parameters:
nRows
- The number of rows in the column group, this is used for groups that does not contain information about how many rows they have.- Returns:
- The nnz.
-
estimateInMemorySize
public long estimateInMemorySize()
Description copied from class:AColGroup
Get the upper bound estimate of in memory allocation for the column group.- Overrides:
estimateInMemorySize
in classADictBasedColGroup
- Returns:
- an upper bound on the number of bytes used to store this ColGroup in memory.
-
replace
public AColGroup replace(double pattern, double replace)
Description copied from class:AColGroup
Make a copy of the column group values, and replace all values that match pattern with replacement value.
-
centralMoment
public CM_COV_Object centralMoment(CMOperator op, int nRows)
Description copied from class:AColGroup
Central Moment instruction executed on a column group.- Specified by:
centralMoment
in classAColGroup
- Parameters:
op
- The Operator to use.nRows
- The number of rows contained in the ColumnGroup.- Returns:
- A Central Moment object.
-
rexpandCols
public AColGroup rexpandCols(int max, boolean ignore, boolean cast, int nRows)
Description copied from class:AColGroup
Expand the column group to multiple columns. (one hot encode the column group)- Specified by:
rexpandCols
in classAColGroup
- Parameters:
max
- The number of columns to expand to and cutoff values at.ignore
- If zero and negative values should be ignored.cast
- If the double values contained should be cast to whole numbers.nRows
- The number of rows in the column group.- Returns:
- A new column group containing max number of columns.
-
-