Struct arrow::ipc::gen::SparseTensor::SparseTensorIndexCOO
source · [−]pub struct SparseTensorIndexCOO<'a> {
pub _tab: Table<'a>,
}
Expand description
EXPERIMENTAL: Data structures for sparse tensors Coordinate (COO) format of sparse tensor index.
COO’s index list are represented as a NxM matrix, where N is the number of non-zero values, and M is the number of dimensions of a sparse tensor.
indicesBuffer stores the location and size of the data of this indices matrix. The value type and the stride of the indices matrix is specified in indicesType and indicesStrides fields.
For example, let X be a 2x3x4x5 tensor, and it has the following 6 non-zero values:
X[0, 1, 2, 0] := 1
X[1, 1, 2, 3] := 2
X[0, 2, 1, 0] := 3
X[0, 1, 3, 0] := 4
X[0, 1, 2, 1] := 5
X[1, 2, 0, 4] := 6
In COO format, the index matrix of X is the following 4x6 matrix:
[[0, 0, 0, 0, 1, 1],
[1, 1, 1, 2, 1, 2],
[2, 2, 3, 1, 2, 0],
[0, 1, 0, 0, 3, 4]]
When isCanonical is true, the indices is sorted in lexicographical order (row-major order), and it does not have duplicated entries. Otherwise, the indices may not be sorted, or may have duplicated entries.
Fields
_tab: Table<'a>
Implementations
sourceimpl<'a> SparseTensorIndexCOO<'a>
impl<'a> SparseTensorIndexCOO<'a>
pub fn init_from_table(table: Table<'a>) -> Self
pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>(
_fbb: &'mut_bldr mut FlatBufferBuilder<'bldr>,
args: &'args SparseTensorIndexCOOArgs<'args>
) -> WIPOffset<SparseTensorIndexCOO<'bldr>>
pub const VT_INDICESTYPE: VOffsetT = 4u16
pub const VT_INDICESSTRIDES: VOffsetT = 6u16
pub const VT_INDICESBUFFER: VOffsetT = 8u16
pub const VT_ISCANONICAL: VOffsetT = 10u16
sourcepub fn indicesType(&self) -> Int<'a>
pub fn indicesType(&self) -> Int<'a>
The type of values in indicesBuffer
sourcepub fn indicesStrides(&self) -> Option<Vector<'a, i64>>
pub fn indicesStrides(&self) -> Option<Vector<'a, i64>>
Non-negative byte offsets to advance one value cell along each dimension If omitted, default to row-major order (C-like).
sourcepub fn indicesBuffer(&self) -> &'a Buffer
pub fn indicesBuffer(&self) -> &'a Buffer
The location and size of the indices matrix’s data
sourcepub fn isCanonical(&self) -> bool
pub fn isCanonical(&self) -> bool
This flag is true if and only if the indices matrix is sorted in row-major order, and does not have duplicated entries. This sort order is the same as of Tensorflow’s SparseTensor, but it is inverse order of SciPy’s canonical coo_matrix (SciPy employs column-major order for its coo_matrix).
Trait Implementations
sourceimpl<'a> Clone for SparseTensorIndexCOO<'a>
impl<'a> Clone for SparseTensorIndexCOO<'a>
sourcefn clone(&self) -> SparseTensorIndexCOO<'a>
fn clone(&self) -> SparseTensorIndexCOO<'a>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for SparseTensorIndexCOO<'_>
impl Debug for SparseTensorIndexCOO<'_>
sourceimpl<'a> Follow<'a> for SparseTensorIndexCOO<'a>
impl<'a> Follow<'a> for SparseTensorIndexCOO<'a>
sourceimpl<'a> PartialEq<SparseTensorIndexCOO<'a>> for SparseTensorIndexCOO<'a>
impl<'a> PartialEq<SparseTensorIndexCOO<'a>> for SparseTensorIndexCOO<'a>
sourcefn eq(&self, other: &SparseTensorIndexCOO<'a>) -> bool
fn eq(&self, other: &SparseTensorIndexCOO<'a>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &SparseTensorIndexCOO<'a>) -> bool
fn ne(&self, other: &SparseTensorIndexCOO<'a>) -> bool
This method tests for !=
.
sourceimpl Verifiable for SparseTensorIndexCOO<'_>
impl Verifiable for SparseTensorIndexCOO<'_>
sourcefn run_verifier(
v: &mut Verifier<'_, '_>,
pos: usize
) -> Result<(), InvalidFlatbuffer>
fn run_verifier(
v: &mut Verifier<'_, '_>,
pos: usize
) -> Result<(), InvalidFlatbuffer>
Runs the verifier for this type, assuming its at position pos
in the verifier’s buffer.
Should not need to be called directly. Read more
impl<'a> Copy for SparseTensorIndexCOO<'a>
impl<'a> StructuralPartialEq for SparseTensorIndexCOO<'a>
Auto Trait Implementations
impl<'a> RefUnwindSafe for SparseTensorIndexCOO<'a>
impl<'a> Send for SparseTensorIndexCOO<'a>
impl<'a> Sync for SparseTensorIndexCOO<'a>
impl<'a> Unpin for SparseTensorIndexCOO<'a>
impl<'a> UnwindSafe for SparseTensorIndexCOO<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more