Class ObjectSparseSlice<T,U extends NdArray<T>>
- java.lang.Object
-
- org.tensorflow.ndarray.impl.AbstractNdArray<T,U>
-
- org.tensorflow.ndarray.impl.sparse.AbstractSparseNdArray<T,U>
-
- org.tensorflow.ndarray.impl.sparse.slice.SparseSlice<T,U>
-
- org.tensorflow.ndarray.impl.sparse.slice.ObjectSparseSlice<T,U>
-
- All Implemented Interfaces:
NdArray<T>,Shaped,SparseNdArray<T,U>
public class ObjectSparseSlice<T,U extends NdArray<T>> extends SparseSlice<T,U> implements NdArray<T>
-
-
Field Summary
-
Fields inherited from class org.tensorflow.ndarray.impl.sparse.slice.SparseSlice
source, sourcePosition
-
-
Constructor Summary
Constructors Constructor Description ObjectSparseSlice(SparseNdArray<T,U> source, long sourcePosition, DimensionalSpace dimensions)Creates a BooleanSparseSlice
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description UcreateDefaultArray()Creates the NdArray with the default value as a scalarClass<T>getType()Uread(DataBuffer<T> dst)Read the content of this N-dimensional array into the destination buffer.Uset(NdArray<T> src, long... coordinates)Assigns the value of the N-dimensional element found at the given coordinates.UsetObject(T value, long... coordinates)Assigns the value of the scalar found at the given coordinates.Uslice(long position, DimensionalSpace sliceDimensions)Uslice(Index... indices)Creates a multi-dimensional view (or slice) of this array by mapping one or more dimensions to the given index selectors.UtoDense()Converts the sparse window to a dense NdArray-
Methods inherited from class org.tensorflow.ndarray.impl.sparse.slice.SparseSlice
createValues, elements, equals, get, getObject, hashCode, write
-
Methods inherited from class org.tensorflow.ndarray.impl.sparse.AbstractSparseNdArray
copyTo, getDefaultArray, getDefaultValue, getIndices, getIndicesCoordinates, getValues, locateIndex, positionOf, setDefaultValue, setIndices, setValues, slowCopyTo, sortIndicesAndValues, toCoordinates, toString
-
Methods inherited from class org.tensorflow.ndarray.impl.AbstractNdArray
dimensions, scalars, shape, slowEquals, slowHashCode
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
ObjectSparseSlice
public ObjectSparseSlice(SparseNdArray<T,U> source, long sourcePosition, DimensionalSpace dimensions)
Creates a BooleanSparseSlice- Parameters:
source- the source Sparse Array that this object slices.sourcePosition- the relative source position into the sourcedimensions- the dimensional space for the window
-
-
Method Detail
-
toDense
public U toDense()
Converts the sparse window to a dense NdArray
-
setObject
public U setObject(T value, long... coordinates)
Description copied from class:AbstractSparseNdArrayAssigns the value of the scalar found at the given coordinates.To access the scalar element, the number of coordinates provided must be equal to the number of dimensions of this array (i.e. its rank). For example:
Note: if this array stores values of a primitive type, prefer the usage of the specialized method in the subclass for that type. For example,FloatNdArray matrix = NdArrays.ofFloats(shape(2, 2)); // matrix rank = 2 matrix.setObject(10.0f, 0, 1); // succeeds matrix.setObject(10.0f, 0); // throws IllegalRankException FloatNdArray scalar = matrix.get(0, 1); // scalar rank = 0 scalar.setObject(10.0f); // succeedsfloatArray.setFloat(10.0f, 0);
-
set
public U set(NdArray<T> src, long... coordinates)
Description copied from class:AbstractSparseNdArrayAssigns the value of the N-dimensional element found at the given coordinates.The number of coordinates provided can be anywhere between 0 and rank - 1. For example:
FloatNdArray matrix = NdArrays.ofFloats(shape(2, 2)); // matrix rank = 2 matrix.set(vector(10.0f, 20.0f), 0); // success matrix.set(scalar(10.0f), 1, 0); // success
-
read
public U read(DataBuffer<T> dst)
Read the content of this N-dimensional array into the destination buffer.The size of the buffer must be equal or greater to the
Shaped.size()of this array, or an exception is thrown. After the copy, content of the buffer and of the array can be altered independently, without affecting each other.- Specified by:
readin interfaceNdArray<T>- Parameters:
dst- the destination buffer- Returns:
- this array
- See Also:
DataBuffer.size()
-
slice
public U slice(Index... indices)
Description copied from class:SparseSliceCreates a multi-dimensional view (or slice) of this array by mapping one or more dimensions to the given index selectors.Slices allow to traverse an N-dimensional array in any of its axis and/or to filter only elements of interest. For example, for a given matrix on the
[x, y]axes, it is possible to iterate elements aty=0for allx.Any changes applied to the returned slice affect the data of this array as well, as there is no copy involved.
Example of usage:
FloatNdArray matrix3d = NdArrays.ofFloats(shape(3, 2, 4)); // with [x, y, z] axes // Iterates elements on the x axis by preserving only the 3rd value on the z axis, // (i.e. [x, y, 2]) matrix3d.slice(all(), all(), at(2)).elements(0).forEach(m -> { assertEquals(shape(2), m); // y=2, z=0 (scalar) }); // Creates a slice that contains only the last element of the y axis and elements with an // odd `z` coordinate. FloatNdArray slice = matrix3d.slice(all(), at(1), odd()); assertEquals(shape(3, 2), slice.shape()); // x=3, y=0 (scalar), z=2 (odd coordinates) // Iterates backward the elements on the x axis matrix3d.slice(flip()).elements(0).forEach(m -> { assertEquals(shape(2, 4), m); // y=2, z=4 });
-
slice
public U slice(long position, DimensionalSpace sliceDimensions)
-
createDefaultArray
public U createDefaultArray()
Description copied from class:AbstractSparseNdArrayCreates the NdArray with the default value as a scalar- Specified by:
createDefaultArrayin classAbstractSparseNdArray<T,U extends NdArray<T>>- Returns:
- the default NdArray of the default value as a scalar
-
-