Tensors#
Dense Tensors#
- 
class Tensor#
- Subclassed by arrow::NumericTensor< TYPE > - Public Functions - Constructor with no dimension names or strides, data assumed to be row-major. 
 - Constructor with non-negative strides. 
 - Constructor with non-negative strides and dimension names. 
 - 
int64_t size() const#
- Total number of value cells in the tensor. 
 - 
inline bool is_mutable() const#
- Return true if the underlying data buffer is mutable. 
 - 
bool is_contiguous() const#
- Either row major or column major. 
 - 
bool is_row_major() const#
- AKA “C order”. 
 - 
bool is_column_major() const#
- AKA “Fortran order”. 
 - Public Static Functions - Create a Tensor with full parameters. - This factory function will return Status::Invalid when the parameters are inconsistent - Parameters:
- type – [in] The data type of the tensor values 
- data – [in] The buffer of the tensor content 
- shape – [in] The shape of the tensor 
- strides – [in] The strides of the tensor (if this is empty, the data assumed to be row-major) 
- dim_names – [in] The names of the tensor dimensions 
 
 
 - 
static inline int64_t CalculateValueOffset(const std::vector<int64_t> &strides, const std::vector<int64_t> &index)#
- Return the offset of the given index on the given strides. 
 
- 
template<typename TYPE>
 class NumericTensor : public arrow::Tensor#
- Public Functions - Constructor with non-negative strides and dimension names. 
 - Constructor with no dimension names or strides, data assumed to be row-major. 
 - Constructor with non-negative strides. 
 - Public Static Functions - Create a NumericTensor with full parameters. - This factory function will return Status::Invalid when the parameters are inconsistent - Parameters:
- data – [in] The buffer of the tensor content 
- shape – [in] The shape of the tensor 
- strides – [in] The strides of the tensor (if this is empty, the data assumed to be row-major) 
- dim_names – [in] The names of the tensor dimensions 
 
 
 
Sparse Tensors#
- 
enum arrow::SparseTensorFormat::type#
- EXPERIMENTAL: The index format type of SparseTensor. - Values: - 
enumerator COO#
- Coordinate list (COO) format. 
 - 
enumerator CSR#
- Compressed sparse row (CSR) format. 
 - 
enumerator CSC#
- Compressed sparse column (CSC) format. 
 - 
enumerator CSF#
- Compressed sparse fiber (CSF) format. 
 
- 
enumerator COO#
- 
class SparseIndex#
- EXPERIMENTAL: The base class for the index of a sparse tensor. - SparseIndex describes where the non-zero elements are within a SparseTensor. - There are several ways to represent this. The format_id is used to distinguish what kind of representation is used. Each possible value of format_id must have only one corresponding concrete subclass of SparseIndex. - Subclassed by arrow::internal::SparseIndexBase< SparseCOOIndex >, arrow::internal::SparseIndexBase< SparseCSCIndex >, arrow::internal::SparseIndexBase< SparseCSFIndex >, arrow::internal::SparseIndexBase< SparseCSRIndex >, arrow::internal::SparseIndexBase< SparseIndexType > 
- 
class SparseCOOIndex : public arrow::internal::SparseIndexBase<SparseCOOIndex>#
- EXPERIMENTAL: The index data for a COO sparse tensor. - A COO sparse index manages the location of its non-zero values by their coordinates. - Public Functions - Construct SparseCOOIndex from column-major NumericTensor. 
 - 
inline const std::shared_ptr<Tensor> &indices() const#
- Return a tensor that has the coordinates of the non-zero values. - The returned tensor is a N x D tensor where N is the number of non-zero values and D is the number of dimensions in the logical data. The column at index - iis a D-tuple of coordinates indicating that the logical value at those coordinates should be found at physical index- i.
 - 
inline virtual int64_t non_zero_length() const override#
- Return the number of non zero values in the sparse tensor related to this sparse index. 
 - 
inline bool is_canonical() const#
- Return whether a sparse tensor index is canonical, or not. - If a sparse tensor index is canonical, it is sorted in the lexicographical order, and the corresponding sparse tensor doesn’t have duplicated entries. 
 - 
virtual std::string ToString() const override#
- Return a string representation of the sparse index. 
 - 
inline bool Equals(const SparseCOOIndex &other) const#
- Return whether the COO indices are equal. 
 - Public Static Functions - Make SparseCOOIndex from a coords tensor and canonicality. 
 - Make SparseCOOIndex from a coords tensor with canonicality auto-detection. 
 - Make SparseCOOIndex from raw properties with canonicality auto-detection. 
 - Make SparseCOOIndex from raw properties. 
 - Make SparseCOOIndex from sparse tensor’s shape properties and data with canonicality auto-detection. - The indices_data should be in row-major (C-like) order. If not, use the raw properties constructor. 
 - Make SparseCOOIndex from sparse tensor’s shape properties and data. - The indices_data should be in row-major (C-like) order. If not, use the raw properties constructor. 
 
- 
class SparseCSRIndex : public arrow::internal::SparseCSXIndex<SparseCSRIndex, internal::SparseMatrixCompressedAxis::ROW>#
- EXPERIMENTAL: The index data for a CSR sparse matrix. - A CSR sparse index manages the location of its non-zero values by two vectors. - The first vector, called indptr, represents the range of the rows; the i-th row spans from indptr[i] to indptr[i+1] in the corresponding value vector. So the length of an indptr vector is the number of rows + 1. - The other vector, called indices, represents the column indices of the corresponding non-zero values. So the length of an indices vector is same as the number of non-zero-values. 
- 
class SparseTensor#
- EXPERIMENTAL: The base class of sparse tensor container. - Subclassed by arrow::SparseTensorImpl< SparseIndexType > - Public Functions - 
inline std::shared_ptr<Buffer> data() const#
- Return a buffer that contains the value vector of the sparse tensor. 
 - 
inline const uint8_t *raw_data() const#
- Return an immutable raw data pointer. 
 - 
inline uint8_t *raw_mutable_data() const#
- Return a mutable raw data pointer. 
 - 
inline const std::vector<int64_t> &shape() const#
- Return a shape vector of the sparse tensor. 
 - 
inline const std::shared_ptr<SparseIndex> &sparse_index() const#
- Return a sparse index of the sparse tensor. 
 - 
inline int ndim() const#
- Return a number of dimensions of the sparse tensor. 
 - 
inline const std::vector<std::string> &dim_names() const#
- Return a vector of dimension names. 
 - 
const std::string &dim_name(int i) const#
- Return the name of the i-th dimension. 
 - 
int64_t size() const#
- Total number of value cells in the sparse tensor. 
 - 
inline bool is_mutable() const#
- Return true if the underlying data buffer is mutable. 
 - 
inline int64_t non_zero_length() const#
- Total number of non-zero cells in the sparse tensor. 
 - 
bool Equals(const SparseTensor &other, const EqualOptions& = EqualOptions::Defaults()) const#
- Return whether sparse tensors are equal. 
 - 
Result<std::shared_ptr<Tensor>> ToTensor(MemoryPool *pool) const#
- Return dense representation of sparse tensor as tensor. - The returned Tensor has row-major order (C-like). 
 
- 
inline std::shared_ptr<Buffer> data() const#
- 
template<typename SparseIndexType>
 class SparseTensorImpl : public arrow::SparseTensor#
- EXPERIMENTAL: Concrete sparse tensor implementation classes with sparse index type. - Public Functions - Construct a sparse tensor from physical data buffer and logical index. 
 - Construct an empty sparse tensor. 
 - Public Static Functions - Create a SparseTensor with full parameters. 
 - Create a sparse tensor from a dense tensor. - The dense tensor is re-encoded as a sparse index and a physical data buffer for the non-zero value. 
 
- 
using arrow::SparseCOOTensor = SparseTensorImpl<SparseCOOIndex>#
- EXPERIMENTAL: Type alias for COO sparse tensor. 
- 
using arrow::SparseCSCMatrix = SparseTensorImpl<SparseCSCIndex>#
- EXPERIMENTAL: Type alias for CSC sparse matrix. 
- 
using arrow::SparseCSFTensor = SparseTensorImpl<SparseCSFIndex>#
- EXPERIMENTAL: Type alias for CSF sparse matrix. 
- 
using arrow::SparseCSRMatrix = SparseTensorImpl<SparseCSRIndex>#
- EXPERIMENTAL: Type alias for CSR sparse matrix. 
 
    