Package org.apache.sysds.runtime.data
Class DenseBlockString
- java.lang.Object
-
- org.apache.sysds.runtime.data.DenseBlock
-
- org.apache.sysds.runtime.data.DenseBlockDRB
-
- org.apache.sysds.runtime.data.DenseBlockString
-
- All Implemented Interfaces:
Serializable
public class DenseBlockString extends DenseBlockDRB
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.sysds.runtime.data.DenseBlock
DenseBlock.Type
-
-
Constructor Summary
Constructors Constructor Description DenseBlockString(int[] dims)DenseBlockString(int[] dims, String[] data)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longcapacity()Get the total length of allocated blocks.doubleget(int[] ix)Get the value of a given celldoubleget(int r, int c)Get the value for a given row and column.String[]getData()longgetLong(int[] ix)Get the value of a given cell as longStringgetString(int[] ix)Get the value of a given cell as a Stringvoidincr(int r, int c)Increments the given value for a given row and column.voidincr(int r, int c, double delta)Increments the given value for a given row and column by delta.intindex(int r)Get the block index for a given row.booleanisNumeric()Indicates if the dense block is numeric.booleanisNumeric(Types.ValueType vt)Indicates if the dense block is a specific numeric value type.intpos(int r)Get the position for a given row within its associated block.intpos(int r, int c)Get the position for a given row and column within the associated block.DenseBlockset(int[] ix, double v)Set the specified cell to the given value.DenseBlockset(int[] ix, long v)Set the specified cell to the given value.DenseBlockset(int[] ix, String v)Set the specified cell to the given value.DenseBlockset(int r, double[] v)Copy the given vector into the given row.DenseBlockset(int r, int c, double v)Set the given value for a given row and column.DenseBlockset(String s)Set the given string for the entire dense block (fill).DenseBlockset(DenseBlock db)Copy the given dense block.double[]values(int r)Get the allocated block for the given row.double[]valuesAt(int bix)Get an allocated block.-
Methods inherited from class org.apache.sysds.runtime.data.DenseBlockDRB
blockSize, blockSize, countNonZeros, countNonZeros, countNonZeros, isContiguous, isContiguous, numBlocks, pos, reset, set, set, size
-
Methods inherited from class org.apache.sysds.runtime.data.DenseBlock
estimateMemory, getCumODims, getDim, getNextIndexes, numDims, numRows, reset, reset, reset, reset, reset, reset, set, set, set, setDims, size, toString
-
-
-
-
Constructor Detail
-
DenseBlockString
public DenseBlockString(int[] dims)
-
DenseBlockString
public DenseBlockString(int[] dims, String[] data)
-
-
Method Detail
-
getData
public String[] getData()
-
isNumeric
public boolean isNumeric()
Description copied from class:DenseBlockIndicates if the dense block is numeric.- Specified by:
isNumericin classDenseBlock- Returns:
- true if numeric (FP, INT, BOOLEAN)
-
isNumeric
public boolean isNumeric(Types.ValueType vt)
Description copied from class:DenseBlockIndicates if the dense block is a specific numeric value type.- Specified by:
isNumericin classDenseBlock- Parameters:
vt- value type to check- Returns:
- true if numeric and of value type vt
-
capacity
public long capacity()
Description copied from class:DenseBlockGet the total length of allocated blocks.- Specified by:
capacityin classDenseBlock- Returns:
- capacity
-
values
public double[] values(int r)
Description copied from class:DenseBlockGet the allocated block for the given row. This call is equivalent to valuesAt(indexes(r)).- Specified by:
valuesin classDenseBlock- Parameters:
r- row index- Returns:
- block
-
valuesAt
public double[] valuesAt(int bix)
Description copied from class:DenseBlockGet an allocated block.- Specified by:
valuesAtin classDenseBlock- Parameters:
bix- block index- Returns:
- block
-
index
public int index(int r)
Description copied from class:DenseBlockGet the block index for a given row.- Specified by:
indexin classDenseBlock- Parameters:
r- row index- Returns:
- block index
-
pos
public int pos(int r)
Description copied from class:DenseBlockGet the position for a given row within its associated block.- Overrides:
posin classDenseBlockDRB- Parameters:
r- row index- Returns:
- block position
-
pos
public int pos(int r, int c)Description copied from class:DenseBlockGet the position for a given row and column within the associated block.- Overrides:
posin classDenseBlockDRB- Parameters:
r- row indexc- column index- Returns:
- block position
-
incr
public void incr(int r, int c)Description copied from class:DenseBlockIncrements the given value for a given row and column.- Specified by:
incrin classDenseBlock- Parameters:
r- row indexc- column index
-
incr
public void incr(int r, int c, double delta)Description copied from class:DenseBlockIncrements the given value for a given row and column by delta.- Specified by:
incrin classDenseBlock- Parameters:
r- row indexc- column indexdelta- increment value
-
set
public DenseBlock set(String s)
Description copied from class:DenseBlockSet the given string for the entire dense block (fill). Generally the string will be parsed, except for string DenseBlock.- Overrides:
setin classDenseBlock- Parameters:
s- string- Returns:
- self
-
set
public DenseBlock set(int r, int c, double v)
Description copied from class:DenseBlockSet the given value for a given row and column.- Specified by:
setin classDenseBlock- Parameters:
r- row indexc- column indexv- value- Returns:
- self
-
set
public DenseBlock set(DenseBlock db)
Description copied from class:DenseBlockCopy the given dense block.- Specified by:
setin classDenseBlock- Parameters:
db- dense block- Returns:
- self
-
set
public DenseBlock set(int r, double[] v)
Description copied from class:DenseBlockCopy the given vector into the given row.- Specified by:
setin classDenseBlock- Parameters:
r- row indexv- value vector- Returns:
- self
-
set
public DenseBlock set(int[] ix, double v)
Description copied from class:DenseBlockSet the specified cell to the given value.- Specified by:
setin classDenseBlock- Parameters:
ix- cell indexesv- value- Returns:
- self
-
set
public DenseBlock set(int[] ix, long v)
Description copied from class:DenseBlockSet the specified cell to the given value.- Specified by:
setin classDenseBlock- Parameters:
ix- cell indexesv- value- Returns:
- self
-
get
public double get(int r, int c)Description copied from class:DenseBlockGet the value for a given row and column.- Specified by:
getin classDenseBlock- Parameters:
r- row indexc- column index- Returns:
- value
-
get
public double get(int[] ix)
Description copied from class:DenseBlockGet the value of a given cell- Specified by:
getin classDenseBlock- Parameters:
ix- cell indexes- Returns:
- value
-
set
public DenseBlock set(int[] ix, String v)
Description copied from class:DenseBlockSet the specified cell to the given value.- Specified by:
setin classDenseBlock- Parameters:
ix- cell indexesv- value as String- Returns:
- self
-
getString
public String getString(int[] ix)
Description copied from class:DenseBlockGet the value of a given cell as a String- Specified by:
getStringin classDenseBlock- Parameters:
ix- cell indexes- Returns:
- value as String
-
getLong
public long getLong(int[] ix)
Description copied from class:DenseBlockGet the value of a given cell as long- Specified by:
getLongin classDenseBlock- Parameters:
ix- cell indexes- Returns:
- value as long
-
-