blob: d9bb94ed129ae25489a5b659e7087c6b25ed1d18 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en" data-content_root="" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
<title>Tensors &#8212; Apache Arrow v17.0.0.dev77</title>
<script data-cfasync="false">
document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
document.documentElement.dataset.theme = localStorage.getItem("theme") || "light";
</script>
<!-- Loaded before other Sphinx assets -->
<link href="../../_static/styles/theme.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="../../_static/styles/bootstrap.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link href="../../_static/vendor/fontawesome/6.5.1/css/all.min.css?digest=8d27b9dea8ad943066ae" rel="stylesheet" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../_static/vendor/fontawesome/6.5.1/webfonts/fa-solid-900.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../_static/vendor/fontawesome/6.5.1/webfonts/fa-brands-400.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../../_static/vendor/fontawesome/6.5.1/webfonts/fa-regular-400.woff2" />
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../../_static/copybutton.css" />
<link rel="stylesheet" type="text/css" href="../../_static/design-style.1e8bd061cd6da7fc9cf755528e8ffc24.min.css" />
<link rel="stylesheet" type="text/css" href="../../_static/theme_overrides.css" />
<!-- Pre-loaded scripts that we'll load fully later -->
<link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8d27b9dea8ad943066ae" />
<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8d27b9dea8ad943066ae" />
<script src="../../_static/vendor/fontawesome/6.5.1/js/all.min.js?digest=8d27b9dea8ad943066ae"></script>
<script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script>
<script src="../../_static/doctools.js"></script>
<script src="../../_static/sphinx_highlight.js"></script>
<script src="../../_static/clipboard.min.js"></script>
<script src="../../_static/copybutton.js"></script>
<script src="../../_static/design-tabs.js"></script>
<script>DOCUMENTATION_OPTIONS.pagename = 'cpp/api/tensor';</script>
<script>
DOCUMENTATION_OPTIONS.theme_version = '0.15.2';
DOCUMENTATION_OPTIONS.theme_switcher_json_url = '/docs/_static/versions.json';
DOCUMENTATION_OPTIONS.theme_switcher_version_match = 'dev/';
DOCUMENTATION_OPTIONS.show_version_warning_banner = true;
</script>
<link rel="canonical" href="https://arrow.apache.org/docs/cpp/api/tensor.html" />
<link rel="icon" href="../../_static/favicon.ico"/>
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="Utilities" href="utilities.html" />
<link rel="prev" title="Gandiva Expression Compiler" href="gandiva.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
/* We explicitly disable cookie tracking to avoid privacy issues */
_paq.push(['disableCookies']);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.apache.org/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '20']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
</head>
<body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
<a id="pst-skip-link" class="skip-link" href="#main-content">Skip to main content</a>
<div id="pst-scroll-pixel-helper"></div>
<button type="button" class="btn rounded-pill" id="pst-back-to-top">
<i class="fa-solid fa-arrow-up"></i>
Back to top
</button>
<input type="checkbox"
class="sidebar-toggle"
name="__primary"
id="__primary"/>
<label class="overlay overlay-primary" for="__primary"></label>
<input type="checkbox"
class="sidebar-toggle"
name="__secondary"
id="__secondary"/>
<label class="overlay overlay-secondary" for="__secondary"></label>
<div class="search-button__wrapper">
<div class="search-button__overlay"></div>
<div class="search-button__search-container">
<form class="bd-search d-flex align-items-center"
action="../../search.html"
method="get">
<i class="fa-solid fa-magnifying-glass"></i>
<input type="search"
class="form-control"
name="q"
id="search-input"
placeholder="Search the docs ..."
aria-label="Search the docs ..."
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false"/>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form></div>
</div>
<header class="bd-header navbar navbar-expand-lg bd-navbar">
<div class="bd-header__inner bd-page-width">
<label class="sidebar-toggle primary-toggle" for="__primary">
<span class="fa-solid fa-bars"></span>
</label>
<div class="col-lg-3 navbar-header-items__start">
<div class="navbar-item">
<a class="navbar-brand logo" href="../../index.html">
<img src="../../_static/arrow.png" class="logo__image only-light" alt="Apache Arrow v17.0.0.dev77 - Home"/>
<script>document.write(`<img src="../../_static/arrow-dark.png" class="logo__image only-dark" alt="Apache Arrow v17.0.0.dev77 - Home"/>`);</script>
</a></div>
</div>
<div class="col-lg-9 navbar-header-items">
<div class="me-auto navbar-header-items__center">
<div class="navbar-item">
<nav class="navbar-nav">
<ul class="bd-navbar-elements navbar-nav">
<li class="nav-item">
<a class="nav-link nav-internal" href="../../format/index.html">
Specifications
</a>
</li>
<li class="nav-item">
<a class="nav-link nav-internal" href="../../developers/index.html">
Development
</a>
</li>
<li class="nav-item dropdown">
<button class="btn dropdown-toggle nav-item" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-controls="pst-nav-more-links">
Implementations
</button>
<ul id="pst-nav-more-links" class="dropdown-menu">
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../c_glib/index.html">
C/GLib
</a>
</li>
<li class="nav-item current active">
<a class="nav-link dropdown-item nav-internal" href="../index.html">
C++
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/csharp/README.md">
C#
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://pkg.go.dev/github.com/apache/arrow/go/v17">
Go
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../java/index.html">
Java
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../js/index.html">
JavaScript
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/julia/">
Julia
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/matlab/README.md">
MATLAB
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/nanoarrow/">
nanoarrow
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../python/index.html">
Python
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../r/index.html">
R
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/ruby/README.md">
Ruby
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://docs.rs/crate/arrow/">
Rust
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../status.html">
Implementation Status
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/cpp/">
C++ cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/java/">
Java cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/py/">
Python cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/r/">
R cookbook
</a>
</li>
</ul>
</li>
</ul>
</nav></div>
</div>
<div class="navbar-header-items__end">
<div class="navbar-item navbar-persistent--container">
<script>
document.write(`
<button class="btn navbar-btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script>
</div>
<div class="navbar-item">
<script>
document.write(`
<div class="version-switcher__container dropdown">
<button id="pst-version-switcher-button-2"
type="button"
class="version-switcher__button btn btn-sm navbar-btn dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-2"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-2"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-2">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div>
`);
</script></div>
<div class="navbar-item">
<script>
document.write(`
<button class="btn btn-sm navbar-btn theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="theme-switch nav-link" data-mode="light"><i class="fa-solid fa-sun fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="dark"><i class="fa-solid fa-moon fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="auto"><i class="fa-solid fa-circle-half-stroke fa-lg"></i></span>
</button>
`);
</script></div>
<div class="navbar-item"><ul class="navbar-icon-links navbar-nav"
aria-label="Icon Links">
<li class="nav-item">
<a href="https://github.com/apache/arrow" title="GitHub" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-github fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">GitHub</span></a>
</li>
<li class="nav-item">
<a href="https://twitter.com/ApacheArrow" title="X" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-x-twitter fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">X</span></a>
</li>
</ul></div>
</div>
</div>
<div class="navbar-persistent--mobile">
<script>
document.write(`
<button class="btn navbar-btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script>
</div>
<label class="sidebar-toggle secondary-toggle" for="__secondary" tabindex="0">
<span class="fa-solid fa-outdent"></span>
</label>
</div>
</header>
<div class="bd-container">
<div class="bd-container__inner bd-page-width">
<div class="bd-sidebar-primary bd-sidebar">
<div class="sidebar-header-items sidebar-primary__section">
<div class="sidebar-header-items__center">
<div class="navbar-item">
<nav class="navbar-nav">
<ul class="bd-navbar-elements navbar-nav">
<li class="nav-item">
<a class="nav-link nav-internal" href="../../format/index.html">
Specifications
</a>
</li>
<li class="nav-item">
<a class="nav-link nav-internal" href="../../developers/index.html">
Development
</a>
</li>
<li class="nav-item dropdown">
<button class="btn dropdown-toggle nav-item" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-controls="pst-nav-more-links-2">
Implementations
</button>
<ul id="pst-nav-more-links-2" class="dropdown-menu">
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../c_glib/index.html">
C/GLib
</a>
</li>
<li class="nav-item current active">
<a class="nav-link dropdown-item nav-internal" href="../index.html">
C++
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/csharp/README.md">
C#
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://pkg.go.dev/github.com/apache/arrow/go/v17">
Go
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../java/index.html">
Java
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../js/index.html">
JavaScript
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/julia/">
Julia
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/matlab/README.md">
MATLAB
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/nanoarrow/">
nanoarrow
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../python/index.html">
Python
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../r/index.html">
R
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://github.com/apache/arrow/blob/main/ruby/README.md">
Ruby
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://docs.rs/crate/arrow/">
Rust
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-internal" href="../../status.html">
Implementation Status
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/cpp/">
C++ cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/java/">
Java cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/py/">
Python cookbook
</a>
</li>
<li class="nav-item">
<a class="nav-link dropdown-item nav-external" href="https://arrow.apache.org/cookbook/r/">
R cookbook
</a>
</li>
</ul>
</li>
</ul>
</nav></div>
</div>
<div class="sidebar-header-items__end">
<div class="navbar-item">
<script>
document.write(`
<div class="version-switcher__container dropdown">
<button id="pst-version-switcher-button-3"
type="button"
class="version-switcher__button btn btn-sm navbar-btn dropdown-toggle"
data-bs-toggle="dropdown"
aria-haspopup="listbox"
aria-controls="pst-version-switcher-list-3"
aria-label="Version switcher list"
>
Choose version <!-- this text may get changed later by javascript -->
<span class="caret"></span>
</button>
<div id="pst-version-switcher-list-3"
class="version-switcher__menu dropdown-menu list-group-flush py-0"
role="listbox" aria-labelledby="pst-version-switcher-button-3">
<!-- dropdown will be populated by javascript on page load -->
</div>
</div>
`);
</script></div>
<div class="navbar-item">
<script>
document.write(`
<button class="btn btn-sm navbar-btn theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="theme-switch nav-link" data-mode="light"><i class="fa-solid fa-sun fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="dark"><i class="fa-solid fa-moon fa-lg"></i></span>
<span class="theme-switch nav-link" data-mode="auto"><i class="fa-solid fa-circle-half-stroke fa-lg"></i></span>
</button>
`);
</script></div>
<div class="navbar-item"><ul class="navbar-icon-links navbar-nav"
aria-label="Icon Links">
<li class="nav-item">
<a href="https://github.com/apache/arrow" title="GitHub" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-github fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">GitHub</span></a>
</li>
<li class="nav-item">
<a href="https://twitter.com/ApacheArrow" title="X" class="nav-link" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><span><i class="fa-brands fa-square-x-twitter fa-lg" aria-hidden="true"></i></span>
<span class="sr-only">X</span></a>
</li>
</ul></div>
</div>
</div>
<div class="sidebar-primary-items__start sidebar-primary__section">
<div class="sidebar-primary-item">
<nav class="bd-docs-nav bd-links"
aria-label="Section Navigation">
<p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
<div class="bd-toc-item navbar-nav"><ul class="current nav bd-sidenav">
<li class="toctree-l1 has-children"><a class="reference internal" href="../getting_started.html">Getting Started</a><input class="toctree-checkbox" id="toctree-checkbox-1" name="toctree-checkbox-1" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-1"><i class="fa-solid fa-chevron-down"></i></label><ul>
<li class="toctree-l2"><a class="reference internal" href="../build_system.html">Using Arrow C++ in your own project</a></li>
<li class="toctree-l2"><a class="reference internal" href="../conventions.html">Conventions</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/basic_arrow.html">Basic Arrow Data Structures</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/io_tutorial.html">Arrow File I/O</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/compute_tutorial.html">Arrow Compute</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tutorials/datasets_tutorial.html">Arrow Datasets</a></li>
</ul>
</li>
<li class="toctree-l1 has-children"><a class="reference internal" href="../user_guide.html">User Guide</a><input class="toctree-checkbox" id="toctree-checkbox-2" name="toctree-checkbox-2" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-2"><i class="fa-solid fa-chevron-down"></i></label><ul>
<li class="toctree-l2"><a class="reference internal" href="../overview.html">High-Level Overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="../memory.html">Memory Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arrays.html">Arrays</a></li>
<li class="toctree-l2"><a class="reference internal" href="../datatypes.html">Data Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="../tables.html">Tabular Data</a></li>
<li class="toctree-l2"><a class="reference internal" href="../compute.html">Compute Functions</a></li>
<li class="toctree-l2 has-children"><a class="reference internal" href="../gandiva.html">The Gandiva Expression Compiler</a><input class="toctree-checkbox" id="toctree-checkbox-3" name="toctree-checkbox-3" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-3"><i class="fa-solid fa-chevron-down"></i></label><ul>
<li class="toctree-l3"><a class="reference internal" href="../gandiva/expr_projector_filter.html">Gandiva Expression, Projector, and Filter</a></li>
<li class="toctree-l3"><a class="reference internal" href="../gandiva/external_func.html">Gandiva External Functions Development Guide</a></li>
</ul>
</li>
<li class="toctree-l2 has-children"><a class="reference internal" href="../streaming_execution.html">Acero: A C++ streaming execution engine</a><input class="toctree-checkbox" id="toctree-checkbox-4" name="toctree-checkbox-4" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-4"><i class="fa-solid fa-chevron-down"></i></label><ul>
<li class="toctree-l3"><a class="reference internal" href="../acero/overview.html">Acero Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../acero/user_guide.html">Acero User’s Guide</a></li>
<li class="toctree-l3"><a class="reference internal" href="../acero/substrait.html">Using Acero with Substrait</a></li>
<li class="toctree-l3"><a class="reference internal" href="../acero/developer_guide.html">Developer’s Guide</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../io.html">Input / output and filesystems</a></li>
<li class="toctree-l2"><a class="reference internal" href="../ipc.html">Reading and writing the Arrow IPC format</a></li>
<li class="toctree-l2"><a class="reference internal" href="../orc.html">Reading and Writing ORC files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../parquet.html">Reading and writing Parquet files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../csv.html">Reading and Writing CSV files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../json.html">Reading JSON files</a></li>
<li class="toctree-l2"><a class="reference internal" href="../dataset.html">Tabular Datasets</a></li>
<li class="toctree-l2"><a class="reference internal" href="../flight.html">Arrow Flight RPC</a></li>
<li class="toctree-l2"><a class="reference internal" href="../gdb.html">Debugging code using Arrow</a></li>
<li class="toctree-l2"><a class="reference internal" href="../threading.html">Thread Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="../opentelemetry.html">OpenTelemetry</a></li>
<li class="toctree-l2"><a class="reference internal" href="../env_vars.html">Environment Variables</a></li>
</ul>
</li>
<li class="toctree-l1 has-children"><a class="reference internal" href="../examples/index.html">Examples</a><input class="toctree-checkbox" id="toctree-checkbox-5" name="toctree-checkbox-5" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-5"><i class="fa-solid fa-chevron-down"></i></label><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples/cmake_minimal_build.html">Minimal build using CMake</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/compute_and_write_example.html">Compute and Write CSV Example</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/dataset_documentation_example.html">Arrow Datasets example</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/dataset_skyhook_scan_example.html">Arrow Skyhook example</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/row_columnar_conversion.html">Row to columnar conversion</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/tuple_range_conversion.html">std::tuple-like ranges to Arrow</a></li>
<li class="toctree-l2"><a class="reference internal" href="../examples/converting_recordbatch_to_tensor.html">Converting RecordBatch to Tensor</a></li>
</ul>
</li>
<li class="toctree-l1 current active has-children"><a class="reference internal" href="../api.html">API Reference</a><input checked="" class="toctree-checkbox" id="toctree-checkbox-6" name="toctree-checkbox-6" type="checkbox"/><label class="toctree-toggle" for="toctree-checkbox-6"><i class="fa-solid fa-chevron-down"></i></label><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="support.html">Programming Support</a></li>
<li class="toctree-l2"><a class="reference internal" href="memory.html">Memory (management)</a></li>
<li class="toctree-l2"><a class="reference internal" href="thread.html">Thread (management)</a></li>
<li class="toctree-l2"><a class="reference internal" href="datatype.html">Data Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="array.html">Arrays</a></li>
<li class="toctree-l2"><a class="reference internal" href="scalar.html">Scalars</a></li>
<li class="toctree-l2"><a class="reference internal" href="builder.html">Array Builders</a></li>
<li class="toctree-l2"><a class="reference internal" href="table.html">Two-dimensional Datasets</a></li>
<li class="toctree-l2"><a class="reference internal" href="c_abi.html">C Interfaces</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute.html">Compute Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="acero.html">Streaming Execution (Acero)</a></li>
<li class="toctree-l2"><a class="reference internal" href="gandiva.html">Gandiva Expression Compiler</a></li>
<li class="toctree-l2 current active"><a class="current reference internal" href="#">Tensors</a></li>
<li class="toctree-l2"><a class="reference internal" href="utilities.html">Utilities</a></li>
<li class="toctree-l2"><a class="reference internal" href="async.html">Asynchronous programming</a></li>
<li class="toctree-l2"><a class="reference internal" href="io.html">Input / output</a></li>
<li class="toctree-l2"><a class="reference internal" href="ipc.html">Arrow IPC</a></li>
<li class="toctree-l2"><a class="reference internal" href="formats.html">File Formats</a></li>
<li class="toctree-l2"><a class="reference internal" href="cuda.html">CUDA support</a></li>
<li class="toctree-l2"><a class="reference internal" href="flight.html">Arrow Flight RPC</a></li>
<li class="toctree-l2"><a class="reference internal" href="flightsql.html">Arrow Flight SQL</a></li>
<li class="toctree-l2"><a class="reference internal" href="filesystem.html">Filesystems</a></li>
<li class="toctree-l2"><a class="reference internal" href="dataset.html">Dataset</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/cookbook/cpp/">C++ cookbook</a></li>
</ul>
</div>
</nav></div>
</div>
<div class="sidebar-primary-items__end sidebar-primary__section">
</div>
<div id="rtd-footer-container"></div>
</div>
<main id="main-content" class="bd-main">
<div class="bd-content">
<div class="bd-article-container">
<div class="bd-header-article">
<div class="header-article-items header-article__inner">
<div class="header-article-items__start">
<div class="header-article-item">
<nav aria-label="Breadcrumb">
<ul class="bd-breadcrumbs">
<li class="breadcrumb-item breadcrumb-home">
<a href="../../index.html" class="nav-link" aria-label="Home">
<i class="fa-solid fa-home"></i>
</a>
</li>
<li class="breadcrumb-item"><a href="../index.html" class="nav-link">C++ Implementation</a></li>
<li class="breadcrumb-item"><a href="../api.html" class="nav-link">API Reference</a></li>
<li class="breadcrumb-item active" aria-current="page">Tensors</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="tensors">
<h1>Tensors<a class="headerlink" href="#tensors" title="Permalink to this heading">#</a></h1>
<section id="dense-tensors">
<h2>Dense Tensors<a class="headerlink" href="#dense-tensors" title="Permalink to this heading">#</a></h2>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6TensorE">
<span id="_CPPv3N5arrow6TensorE"></span><span id="_CPPv2N5arrow6TensorE"></span><span id="arrow::Tensor"></span><span class="target" id="classarrow_1_1_tensor"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><a class="headerlink" href="#_CPPv4N5arrow6TensorE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Subclassed by <a class="reference internal" href="#classarrow_1_1_numeric_tensor"><span class="std std-ref">arrow::NumericTensor&lt; TYPE &gt;</span></a></p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE">
<span id="_CPPv3N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE"></span><span id="arrow::Tensor::Tensor__std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR"></span><span class="target" id="classarrow_1_1_tensor_1a979c34866a43fe9f2dfe4239e95e2b64"></span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with no dimension names or strides, data assumed to be row-major. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE">
<span id="_CPPv3N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="arrow::Tensor::Tensor__std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR"></span><span class="target" id="classarrow_1_1_tensor_1a1b6cd46945a5b6406c8007e78e15fb66"></span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with non-negative strides. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::Tensor::Tensor__std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_tensor_1a6777ab3878c9aaabc8e6af8d2788e662"></span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow6Tensor6TensorERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with non-negative strides and dimension names. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor4sizeEv">
<span id="_CPPv3NK5arrow6Tensor4sizeEv"></span><span id="_CPPv2NK5arrow6Tensor4sizeEv"></span><span id="arrow::Tensor::sizeC"></span><span class="target" id="classarrow_1_1_tensor_1aca5e2f0d617530dd732d8cb7f10db1d3"></span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">size</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor4sizeEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Total number of value cells in the tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor10is_mutableEv">
<span id="_CPPv3NK5arrow6Tensor10is_mutableEv"></span><span id="_CPPv2NK5arrow6Tensor10is_mutableEv"></span><span id="arrow::Tensor::is_mutableC"></span><span class="target" id="classarrow_1_1_tensor_1a8620cbf7de60ce9a2cd8527e30a2e8ad"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_mutable</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor10is_mutableEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return true if the underlying data buffer is mutable. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor13is_contiguousEv">
<span id="_CPPv3NK5arrow6Tensor13is_contiguousEv"></span><span id="_CPPv2NK5arrow6Tensor13is_contiguousEv"></span><span id="arrow::Tensor::is_contiguousC"></span><span class="target" id="classarrow_1_1_tensor_1a907568a5bf3646ef440b0b6342b5ebfa"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_contiguous</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor13is_contiguousEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Either row major or column major. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor12is_row_majorEv">
<span id="_CPPv3NK5arrow6Tensor12is_row_majorEv"></span><span id="_CPPv2NK5arrow6Tensor12is_row_majorEv"></span><span id="arrow::Tensor::is_row_majorC"></span><span class="target" id="classarrow_1_1_tensor_1af76f12b10080b0a8e6302c7a1b17e294"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_row_major</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor12is_row_majorEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>AKA “C order”. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor15is_column_majorEv">
<span id="_CPPv3NK5arrow6Tensor15is_column_majorEv"></span><span id="_CPPv2NK5arrow6Tensor15is_column_majorEv"></span><span id="arrow::Tensor::is_column_majorC"></span><span class="target" id="classarrow_1_1_tensor_1a0008e372a7ebca8a386f7a37f4d01e31"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_column_major</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor15is_column_majorEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>AKA “Fortran order”. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow6Tensor12CountNonZeroEv">
<span id="_CPPv3NK5arrow6Tensor12CountNonZeroEv"></span><span id="_CPPv2NK5arrow6Tensor12CountNonZeroEv"></span><span id="arrow::Tensor::CountNonZeroC"></span><span class="target" id="classarrow_1_1_tensor_1a427b7ab82682515b0c00b8668e09713a"></span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">CountNonZero</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow6Tensor12CountNonZeroEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Compute the number of non-zero values in the tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4I0ENK5arrow6Tensor5ValueERKN9ValueType6c_typeERKNSt6vectorI7int64_tEE">
<span id="_CPPv3I0ENK5arrow6Tensor5ValueERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2I0ENK5arrow6Tensor5ValueERKNSt6vectorI7int64_tEE"></span><span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="k"><span class="pre">typename</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ValueType</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="classarrow_1_1_tensor_1ac1d387818d9e06c060555b7103120966"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0ENK5arrow6Tensor5ValueERKN9ValueType6c_typeERKNSt6vectorI7int64_tEE" title="arrow::Tensor::Value::ValueType"><span class="n"><span class="pre">ValueType</span></span></a><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">c_type</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">Value</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">index</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4I0ENK5arrow6Tensor5ValueERKN9ValueType6c_typeERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Returns the value at the given index without data-type and bounds checks. </p>
</dd></dl>
</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-static-functions">Public Static Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6Tensor4MakeERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow6Tensor4MakeERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow6Tensor4MakeERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::Tensor::Make__std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_tensor_1a85ca08ba70b81e474cef7d9eb73c2b34"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow6Tensor4MakeERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Create a <a class="reference internal" href="#classarrow_1_1_tensor"><span class="std std-ref">Tensor</span></a> with full parameters. </p>
<p>This factory function will return <a class="reference internal" href="support.html#classarrow_1_1_status_1aa388393c060f3b44316876a630190576"><span class="std std-ref">Status::Invalid</span></a> when the parameters are inconsistent</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>type</strong><strong>[in]</strong> The data type of the tensor values </p></li>
<li><p><strong>data</strong><strong>[in]</strong> The buffer of the tensor content </p></li>
<li><p><strong>shape</strong><strong>[in]</strong> The shape of the tensor </p></li>
<li><p><strong>strides</strong><strong>[in]</strong> The strides of the tensor (if this is empty, the data assumed to be row-major) </p></li>
<li><p><strong>dim_names</strong><strong>[in]</strong> The names of the tensor dimensions </p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow6Tensor20CalculateValueOffsetERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE">
<span id="_CPPv3N5arrow6Tensor20CalculateValueOffsetERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2N5arrow6Tensor20CalculateValueOffsetERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="arrow::Tensor::CalculateValueOffset__std::vector:int64_t:CR.std::vector:int64_t:CR"></span><span class="target" id="classarrow_1_1_tensor_1a78dae60d7cb7cc5a70b61f0cde2c585d"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">CalculateValueOffset</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">index</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow6Tensor20CalculateValueOffsetERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the offset of the given index on the given strides. </p>
</dd></dl>
</div>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4I0EN5arrow13NumericTensorE">
<span id="_CPPv3I0EN5arrow13NumericTensorE"></span><span id="_CPPv2I0EN5arrow13NumericTensorE"></span><span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="k"><span class="pre">typename</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">TYPE</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="classarrow_1_1_numeric_tensor"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">NumericTensor</span></span></span><span class="w"> </span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="k"><span class="pre">public</span></span><span class="w"> </span><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><a class="headerlink" href="#_CPPv4I0EN5arrow13NumericTensorE" title="Permalink to this definition">#</a><br /></dt>
<dd><div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::NumericTensor::NumericTensor__std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_numeric_tensor_1a4aeea1af541551baf382eda9497bd8a4"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">NumericTensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with non-negative strides and dimension names. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE">
<span id="_CPPv3N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE"></span><span id="arrow::NumericTensor::NumericTensor__std::shared_ptr:Buffer:CR.std::vector:int64_t:CR"></span><span class="target" id="classarrow_1_1_numeric_tensor_1afa3c1356beb206dd95464087cf919ef3"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">NumericTensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with no dimension names or strides, data assumed to be row-major. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE">
<span id="_CPPv3N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="_CPPv2N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE"></span><span id="arrow::NumericTensor::NumericTensor__std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR"></span><span class="target" id="classarrow_1_1_numeric_tensor_1a47aa4eda9e62bfe1d6a0c0d218a7526d"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">NumericTensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow13NumericTensor13NumericTensorERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Constructor with non-negative strides. </p>
</dd></dl>
</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-static-functions">Public Static Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow13NumericTensor4MakeERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow13NumericTensor4MakeERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow13NumericTensor4MakeERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::NumericTensor::Make__std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_numeric_tensor_1ae9a2a18ee78a3b0d025f79608b258321"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow13NumericTensorE" title="arrow::NumericTensor"><span class="n"><span class="pre">NumericTensor</span></span></a><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow13NumericTensorE" title="arrow::NumericTensor::TYPE"><span class="n"><span class="pre">TYPE</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">strides</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow13NumericTensor4MakeERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Create a <a class="reference internal" href="#classarrow_1_1_numeric_tensor"><span class="std std-ref">NumericTensor</span></a> with full parameters. </p>
<p>This factory function will return <a class="reference internal" href="support.html#classarrow_1_1_status_1aa388393c060f3b44316876a630190576"><span class="std std-ref">Status::Invalid</span></a> when the parameters are inconsistent</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong><strong>[in]</strong> The buffer of the tensor content </p></li>
<li><p><strong>shape</strong><strong>[in]</strong> The shape of the tensor </p></li>
<li><p><strong>strides</strong><strong>[in]</strong> The strides of the tensor (if this is empty, the data assumed to be row-major) </p></li>
<li><p><strong>dim_names</strong><strong>[in]</strong> The names of the tensor dimensions </p></li>
</ul>
</dd>
</dl>
</dd></dl>
</div>
</dd></dl>
</section>
<section id="sparse-tensors">
<h2>Sparse Tensors<a class="headerlink" href="#sparse-tensors" title="Permalink to this heading">#</a></h2>
<dl class="cpp enum">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow18SparseTensorFormat4typeE">
<span id="_CPPv3N5arrow18SparseTensorFormat4typeE"></span><span id="_CPPv2N5arrow18SparseTensorFormat4typeE"></span><span class="target" id="structarrow_1_1_sparse_tensor_format_1a0693b2fa5192ae86d525995fe6f64f3a"></span><span class="k"><span class="pre">enum</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">SparseTensorFormat</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">type</span></span></span><a class="headerlink" href="#_CPPv4N5arrow18SparseTensorFormat4typeE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: The index format type of <a class="reference internal" href="#classarrow_1_1_sparse_tensor"><span class="std std-ref">SparseTensor</span></a>. </p>
<p><em>Values:</em></p>
<dl class="cpp enumerator">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow18SparseTensorFormat4type3COOE">
<span id="_CPPv3N5arrow18SparseTensorFormat4type3COOE"></span><span id="_CPPv2N5arrow18SparseTensorFormat4type3COOE"></span><span class="target" id="structarrow_1_1_sparse_tensor_format_1a0693b2fa5192ae86d525995fe6f64f3aabaa7e5ab93ab151ead4102620d0a15ae"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">COO</span></span></span><a class="headerlink" href="#_CPPv4N5arrow18SparseTensorFormat4type3COOE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Coordinate list (COO) format. </p>
</dd></dl>
<dl class="cpp enumerator">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow18SparseTensorFormat4type3CSRE">
<span id="_CPPv3N5arrow18SparseTensorFormat4type3CSRE"></span><span id="_CPPv2N5arrow18SparseTensorFormat4type3CSRE"></span><span class="target" id="structarrow_1_1_sparse_tensor_format_1a0693b2fa5192ae86d525995fe6f64f3aa639bcac72fe3163e571a8d66738aa4b1"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">CSR</span></span></span><a class="headerlink" href="#_CPPv4N5arrow18SparseTensorFormat4type3CSRE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Compressed sparse row (CSR) format. </p>
</dd></dl>
<dl class="cpp enumerator">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow18SparseTensorFormat4type3CSCE">
<span id="_CPPv3N5arrow18SparseTensorFormat4type3CSCE"></span><span id="_CPPv2N5arrow18SparseTensorFormat4type3CSCE"></span><span class="target" id="structarrow_1_1_sparse_tensor_format_1a0693b2fa5192ae86d525995fe6f64f3aa8e53eed9093b40c94a65034a572c26c4"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">CSC</span></span></span><a class="headerlink" href="#_CPPv4N5arrow18SparseTensorFormat4type3CSCE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Compressed sparse column (CSC) format. </p>
</dd></dl>
<dl class="cpp enumerator">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow18SparseTensorFormat4type3CSFE">
<span id="_CPPv3N5arrow18SparseTensorFormat4type3CSFE"></span><span id="_CPPv2N5arrow18SparseTensorFormat4type3CSFE"></span><span class="target" id="structarrow_1_1_sparse_tensor_format_1a0693b2fa5192ae86d525995fe6f64f3aaeb7b593db5faea5772798b3ed0646ef3"></span><span class="k"><span class="pre">enumerator</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">CSF</span></span></span><a class="headerlink" href="#_CPPv4N5arrow18SparseTensorFormat4type3CSFE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Compressed sparse fiber (CSF) format. </p>
</dd></dl>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow11SparseIndexE">
<span id="_CPPv3N5arrow11SparseIndexE"></span><span id="_CPPv2N5arrow11SparseIndexE"></span><span id="arrow::SparseIndex"></span><span class="target" id="classarrow_1_1_sparse_index"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseIndex</span></span></span><a class="headerlink" href="#_CPPv4N5arrow11SparseIndexE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: The base class for the index of a sparse tensor. </p>
<p><a class="reference internal" href="#classarrow_1_1_sparse_index"><span class="std std-ref">SparseIndex</span></a> describes where the non-zero elements are within a <a class="reference internal" href="#classarrow_1_1_sparse_tensor"><span class="std std-ref">SparseTensor</span></a>.</p>
<p>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 <a class="reference internal" href="#classarrow_1_1_sparse_index"><span class="std std-ref">SparseIndex</span></a>. </p>
<p>Subclassed by arrow::internal::SparseIndexBase&lt; SparseCSFIndex &gt;, arrow::internal::SparseIndexBase&lt; SparseCOOIndex &gt;, arrow::internal::SparseIndexBase&lt; SparseIndexType &gt;</p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow11SparseIndex9format_idEv">
<span id="_CPPv3NK5arrow11SparseIndex9format_idEv"></span><span id="_CPPv2NK5arrow11SparseIndex9format_idEv"></span><span id="arrow::SparseIndex::format_idC"></span><span class="target" id="classarrow_1_1_sparse_index_1a1f44c6ddcec5d1f7e40e07bd0cdebe8a"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">SparseTensorFormat</span></span><span class="p"><span class="pre">::</span></span><a class="reference internal" href="#_CPPv4N5arrow18SparseTensorFormat4typeE" title="arrow::SparseTensorFormat::type"><span class="n"><span class="pre">type</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">format_id</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow11SparseIndex9format_idEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the identifier of the format type. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow11SparseIndex15non_zero_lengthEv">
<span id="_CPPv3NK5arrow11SparseIndex15non_zero_lengthEv"></span><span id="_CPPv2NK5arrow11SparseIndex15non_zero_lengthEv"></span><span id="arrow::SparseIndex::non_zero_lengthC"></span><span class="target" id="classarrow_1_1_sparse_index_1a3b16f444c066ea9416c6cb1a72fec694"></span><span class="k"><span class="pre">virtual</span></span><span class="w"> </span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">non_zero_length</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4NK5arrow11SparseIndex15non_zero_lengthEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the number of non zero values in the sparse tensor related to this sparse index. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow11SparseIndex8ToStringEv">
<span id="_CPPv3NK5arrow11SparseIndex8ToStringEv"></span><span id="_CPPv2NK5arrow11SparseIndex8ToStringEv"></span><span id="arrow::SparseIndex::ToStringC"></span><span class="target" id="classarrow_1_1_sparse_index_1a87f804e725e7ca43871862eb772f21ee"></span><span class="k"><span class="pre">virtual</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ToString</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><a class="headerlink" href="#_CPPv4NK5arrow11SparseIndex8ToStringEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the string representation of the sparse index. </p>
</dd></dl>
</div>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndexE">
<span id="_CPPv3N5arrow14SparseCOOIndexE"></span><span id="_CPPv2N5arrow14SparseCOOIndexE"></span><span id="arrow::SparseCOOIndex"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseCOOIndex</span></span></span><span class="w"> </span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="k"><span class="pre">public</span></span><span class="w"> </span><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">internal</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">SparseIndexBase</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndexE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: The index data for a COO sparse tensor. </p>
<p>A COO sparse index manages the location of its non-zero values by their coordinates. </p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex14SparseCOOIndexERKNSt10shared_ptrI6TensorEEb">
<span id="_CPPv3N5arrow14SparseCOOIndex14SparseCOOIndexERKNSt10shared_ptrI6TensorEEb"></span><span id="_CPPv2N5arrow14SparseCOOIndex14SparseCOOIndexERKNSt10shared_ptrI6TensorEEb"></span><span id="arrow::SparseCOOIndex::SparseCOOIndex__std::shared_ptr:Tensor:CR.b"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a9eb3451498f52ba27c8409683c031397"></span><span class="k"><span class="pre">explicit</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseCOOIndex</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">coords</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">is_canonical</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex14SparseCOOIndexERKNSt10shared_ptrI6TensorEEb" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Construct <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from column-major <a class="reference internal" href="#classarrow_1_1_numeric_tensor"><span class="std std-ref">NumericTensor</span></a>. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow14SparseCOOIndex7indicesEv">
<span id="_CPPv3NK5arrow14SparseCOOIndex7indicesEv"></span><span id="_CPPv2NK5arrow14SparseCOOIndex7indicesEv"></span><span id="arrow::SparseCOOIndex::indicesC"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a7c9d18c0c246d4429dcfbbbf292ec96c"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">indices</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow14SparseCOOIndex7indicesEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a tensor that has the coordinates of the non-zero values. </p>
<p>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 <code class="docutils literal notranslate"><span class="pre">i</span></code> is a D-tuple of coordinates indicating that the logical value at those coordinates should be found at physical index <code class="docutils literal notranslate"><span class="pre">i</span></code>. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow14SparseCOOIndex15non_zero_lengthEv">
<span id="_CPPv3NK5arrow14SparseCOOIndex15non_zero_lengthEv"></span><span id="_CPPv2NK5arrow14SparseCOOIndex15non_zero_lengthEv"></span><span id="arrow::SparseCOOIndex::non_zero_lengthC"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a7c65c1975b249bf91e571105a073abe3"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">virtual</span></span><span class="w"> </span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">non_zero_length</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="k"><span class="pre">override</span></span><a class="headerlink" href="#_CPPv4NK5arrow14SparseCOOIndex15non_zero_lengthEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the number of non zero values in the sparse tensor related to this sparse index. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow14SparseCOOIndex12is_canonicalEv">
<span id="_CPPv3NK5arrow14SparseCOOIndex12is_canonicalEv"></span><span id="_CPPv2NK5arrow14SparseCOOIndex12is_canonicalEv"></span><span id="arrow::SparseCOOIndex::is_canonicalC"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a691995367002b2356b3d75b570391f0f"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_canonical</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow14SparseCOOIndex12is_canonicalEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return whether a sparse tensor index is canonical, or not. </p>
<p>If a sparse tensor index is canonical, it is sorted in the lexicographical order, and the corresponding sparse tensor doesn’t have duplicated entries. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow14SparseCOOIndex8ToStringEv">
<span id="_CPPv3NK5arrow14SparseCOOIndex8ToStringEv"></span><span id="_CPPv2NK5arrow14SparseCOOIndex8ToStringEv"></span><span id="arrow::SparseCOOIndex::ToStringC"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a729e7fcdcdee32cc17f15d1a478c5a61"></span><span class="k"><span class="pre">virtual</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ToString</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="k"><span class="pre">override</span></span><a class="headerlink" href="#_CPPv4NK5arrow14SparseCOOIndex8ToStringEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a string representation of the sparse index. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow14SparseCOOIndex6EqualsERK14SparseCOOIndex">
<span id="_CPPv3NK5arrow14SparseCOOIndex6EqualsERK14SparseCOOIndex"></span><span id="_CPPv2NK5arrow14SparseCOOIndex6EqualsERK14SparseCOOIndex"></span><span id="arrow::SparseCOOIndex::Equals__SparseCOOIndexCRC"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a11a5a7c5802b17c42d5d6eacc3b4a2ef"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Equals</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">other</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow14SparseCOOIndex6EqualsERK14SparseCOOIndex" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return whether the COO indices are equal. </p>
</dd></dl>
</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-static-functions">Public Static Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEEb">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEEb"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEEb"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:Tensor:CR.b"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a4f0d254b7ffc97c1e01915f044b19c82"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">coords</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">is_canonical</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEEb" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from a coords tensor and canonicality. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEE">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEE"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEE"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:Tensor:CR"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a147c3912758c4a3dc34c57751993109c"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">coords</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI6TensorEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from a coords tensor with canonicality auto-detection. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEE">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEE"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEE"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:DataType:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::shared_ptr:Buffer:"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a004af159eeb0416605cc1b3714528a80"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_strides</span></span>, <span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">indices_data</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from raw properties with canonicality auto-detection. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEEb">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEEb"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEEb"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:DataType:CR.std::vector:int64_t:CR.std::vector:int64_t:CR.std::shared_ptr:Buffer:.b"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1adc1c8ed3d4ba21b6a05b4bad933300f1"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_strides</span></span>, <span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">indices_data</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">is_canonical</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorI7int64_tEENSt10shared_ptrI6BufferEEb" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from raw properties. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEE">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEE"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEE"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:DataType:CR.std::vector:int64_t:CR.int64_t.std::shared_ptr:Buffer:"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a4cc0bf66ee8635d52a92052ecaea3399"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">non_zero_length</span></span>, <span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">indices_data</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from sparse tensor’s shape properties and data with canonicality auto-detection. </p>
<p>The indices_data should be in row-major (C-like) order. If not, use the raw properties constructor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEEb">
<span id="_CPPv3N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEEb"></span><span id="_CPPv2N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEEb"></span><span id="arrow::SparseCOOIndex::Make__std::shared_ptr:DataType:CR.std::vector:int64_t:CR.int64_t.std::shared_ptr:Buffer:.b"></span><span class="target" id="classarrow_1_1_sparse_c_o_o_index_1a0bcf7cbb30ea459fc3656decc68f67de"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">indices_type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">non_zero_length</span></span>, <span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">indices_data</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">is_canonical</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow14SparseCOOIndex4MakeERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEE7int64_tNSt10shared_ptrI6BufferEEb" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Make <a class="reference internal" href="#classarrow_1_1_sparse_c_o_o_index"><span class="std std-ref">SparseCOOIndex</span></a> from sparse tensor’s shape properties and data. </p>
<p>The indices_data should be in row-major (C-like) order. If not, use the raw properties constructor. </p>
</dd></dl>
</div>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow14SparseCSRIndexE">
<span id="_CPPv3N5arrow14SparseCSRIndexE"></span><span id="_CPPv2N5arrow14SparseCSRIndexE"></span><span id="arrow::SparseCSRIndex"></span><span class="target" id="classarrow_1_1_sparse_c_s_r_index"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseCSRIndex</span></span></span><span class="w"> </span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="k"><span class="pre">public</span></span><span class="w"> </span><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">internal</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">SparseCSXIndex</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCSRIndexE" title="arrow::SparseCSRIndex"><span class="n"><span class="pre">SparseCSRIndex</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">internal</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">SparseMatrixCompressedAxis</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">ROW</span></span><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow14SparseCSRIndexE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: The index data for a CSR sparse matrix. </p>
<p>A CSR sparse index manages the location of its non-zero values by two vectors.</p>
<p>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.</p>
<p>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. </p>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow12SparseTensorE">
<span id="_CPPv3N5arrow12SparseTensorE"></span><span id="_CPPv2N5arrow12SparseTensorE"></span><span id="arrow::SparseTensor"></span><span class="target" id="classarrow_1_1_sparse_tensor"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseTensor</span></span></span><a class="headerlink" href="#_CPPv4N5arrow12SparseTensorE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: The base class of sparse tensor container. </p>
<p>Subclassed by <a class="reference internal" href="#classarrow_1_1_sparse_tensor_impl"><span class="std std-ref">arrow::SparseTensorImpl&lt; SparseIndexType &gt;</span></a></p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor4typeEv">
<span id="_CPPv3NK5arrow12SparseTensor4typeEv"></span><span id="_CPPv2NK5arrow12SparseTensor4typeEv"></span><span id="arrow::SparseTensor::typeC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a09025b42adfa15ff33aad026ae8f7dfb"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">type</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor4typeEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a value type of the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor4dataEv">
<span id="_CPPv3NK5arrow12SparseTensor4dataEv"></span><span id="_CPPv2NK5arrow12SparseTensor4dataEv"></span><span id="arrow::SparseTensor::dataC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a09c5fe678e12a8f9ac60a672e0cc686b"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">data</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor4dataEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a buffer that contains the value vector of the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor8raw_dataEv">
<span id="_CPPv3NK5arrow12SparseTensor8raw_dataEv"></span><span id="_CPPv2NK5arrow12SparseTensor8raw_dataEv"></span><span id="arrow::SparseTensor::raw_dataC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a1a1fce4423a761cb71e76cdf4c22fe4b"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">uint8_t</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">raw_data</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor8raw_dataEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return an immutable raw data pointer. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor16raw_mutable_dataEv">
<span id="_CPPv3NK5arrow12SparseTensor16raw_mutable_dataEv"></span><span id="_CPPv2NK5arrow12SparseTensor16raw_mutable_dataEv"></span><span id="arrow::SparseTensor::raw_mutable_dataC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a3bfaf3952ca78265b1b65f3adf9bad92"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">uint8_t</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="sig-name descname"><span class="n"><span class="pre">raw_mutable_data</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor16raw_mutable_dataEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a mutable raw data pointer. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor5shapeEv">
<span id="_CPPv3NK5arrow12SparseTensor5shapeEv"></span><span id="_CPPv2NK5arrow12SparseTensor5shapeEv"></span><span id="arrow::SparseTensor::shapeC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a326ccf3414aac22d0fd6a0b0b7aeb999"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">shape</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor5shapeEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a shape vector of the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor12sparse_indexEv">
<span id="_CPPv3NK5arrow12SparseTensor12sparse_indexEv"></span><span id="_CPPv2NK5arrow12SparseTensor12sparse_indexEv"></span><span id="arrow::SparseTensor::sparse_indexC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a06ea9b9c3ec29a62880433a6f52bf19b"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow11SparseIndexE" title="arrow::SparseIndex"><span class="n"><span class="pre">SparseIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">sparse_index</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor12sparse_indexEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a sparse index of the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor4ndimEv">
<span id="_CPPv3NK5arrow12SparseTensor4ndimEv"></span><span id="_CPPv2NK5arrow12SparseTensor4ndimEv"></span><span id="arrow::SparseTensor::ndimC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a517daac896ab6b6565016d3a74124d22"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ndim</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor4ndimEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a number of dimensions of the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor9dim_namesEv">
<span id="_CPPv3NK5arrow12SparseTensor9dim_namesEv"></span><span id="_CPPv2NK5arrow12SparseTensor9dim_namesEv"></span><span id="arrow::SparseTensor::dim_namesC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1ace353930e273b6df117757d77cf00bd9"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">dim_names</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor9dim_namesEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return a vector of dimension names. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor8dim_nameEi">
<span id="_CPPv3NK5arrow12SparseTensor8dim_nameEi"></span><span id="_CPPv2NK5arrow12SparseTensor8dim_nameEi"></span><span id="arrow::SparseTensor::dim_name__iC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a3643b42e620b15e048ad50c339f95ee6"></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="sig-name descname"><span class="n"><span class="pre">dim_name</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">i</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor8dim_nameEi" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return the name of the i-th dimension. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor4sizeEv">
<span id="_CPPv3NK5arrow12SparseTensor4sizeEv"></span><span id="_CPPv2NK5arrow12SparseTensor4sizeEv"></span><span id="arrow::SparseTensor::sizeC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a94ae1eb4239eddb4100c2358affa8440"></span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">size</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor4sizeEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Total number of value cells in the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor10is_mutableEv">
<span id="_CPPv3NK5arrow12SparseTensor10is_mutableEv"></span><span id="_CPPv2NK5arrow12SparseTensor10is_mutableEv"></span><span id="arrow::SparseTensor::is_mutableC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1ad36e1e26afb5c6c091ef0a877f1b70b4"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">is_mutable</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor10is_mutableEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return true if the underlying data buffer is mutable. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor15non_zero_lengthEv">
<span id="_CPPv3NK5arrow12SparseTensor15non_zero_lengthEv"></span><span id="_CPPv2NK5arrow12SparseTensor15non_zero_lengthEv"></span><span id="arrow::SparseTensor::non_zero_lengthC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a3728b0fe87415b007515b5747d57cdd1"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">int64_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">non_zero_length</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor15non_zero_lengthEv" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Total number of non-zero cells in the sparse tensor. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor6EqualsERK12SparseTensorRK12EqualOptions">
<span id="_CPPv3NK5arrow12SparseTensor6EqualsERK12SparseTensorRK12EqualOptions"></span><span id="_CPPv2NK5arrow12SparseTensor6EqualsERK12SparseTensorRK12EqualOptions"></span><span id="arrow::SparseTensor::Equals__SparseTensorCR.EqualOptionsCRC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1adaf0d6dc9e20bb1024e736c7155df725"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Equals</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5arrow12SparseTensorE" title="arrow::SparseTensor"><span class="n"><span class="pre">SparseTensor</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">other</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">EqualOptions</span></span><span class="p"><span class="pre">&amp;</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">EqualOptions</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">Defaults</span></span><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">)</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor6EqualsERK12SparseTensorRK12EqualOptions" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return whether sparse tensors are equal. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4NK5arrow12SparseTensor8ToTensorEP10MemoryPool">
<span id="_CPPv3NK5arrow12SparseTensor8ToTensorEP10MemoryPool"></span><span id="_CPPv2NK5arrow12SparseTensor8ToTensorEP10MemoryPool"></span><span id="arrow::SparseTensor::ToTensor__MemoryPoolPC"></span><span class="target" id="classarrow_1_1_sparse_tensor_1a693f5414bb991798fbce40f25f9deba6"></span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">ToTensor</span></span></span><span class="sig-paren">(</span><a class="reference internal" href="memory.html#_CPPv4N5arrow10MemoryPoolE" title="arrow::MemoryPool"><span class="n"><span class="pre">MemoryPool</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n sig-param"><span class="pre">pool</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5arrow12SparseTensor8ToTensorEP10MemoryPool" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Return dense representation of sparse tensor as tensor. </p>
<p>The returned <a class="reference internal" href="#classarrow_1_1_tensor"><span class="std std-ref">Tensor</span></a> has row-major order (C-like). </p>
</dd></dl>
</div>
</dd></dl>
<dl class="cpp class">
<dt class="sig sig-object cpp" id="_CPPv4I0EN5arrow16SparseTensorImplE">
<span id="_CPPv3I0EN5arrow16SparseTensorImplE"></span><span id="_CPPv2I0EN5arrow16SparseTensorImplE"></span><span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="k"><span class="pre">typename</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseIndexType</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="classarrow_1_1_sparse_tensor_impl"></span><span class="k"><span class="pre">class</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseTensorImpl</span></span></span><span class="w"> </span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="k"><span class="pre">public</span></span><span class="w"> </span><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span><a class="reference internal" href="#_CPPv4N5arrow12SparseTensorE" title="arrow::SparseTensor"><span class="n"><span class="pre">SparseTensor</span></span></a><a class="headerlink" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: Concrete sparse tensor implementation classes with sparse index type. </p>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::SparseTensorImpl::SparseTensorImpl__std::shared_ptr:SparseIndexType:CR.std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_sparse_tensor_impl_1a9b410d9e21452f9de4a299f68d57d891"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseTensorImpl</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl::SparseIndexType"><span class="n"><span class="pre">SparseIndexType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">sparse_index</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Construct a sparse tensor from physical data buffer and logical index. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::SparseTensorImpl::SparseTensorImpl__std::shared_ptr:DataType:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_sparse_tensor_impl_1a5e3846abcec2da92bc62149232b82bd7"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SparseTensorImpl</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow16SparseTensorImpl16SparseTensorImplERKNSt10shared_ptrI8DataTypeEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Construct an empty sparse tensor. </p>
</dd></dl>
</div>
<div class="breathe-sectiondef docutils container">
<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-static-functions">Public Static Functions</p>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow16SparseTensorImpl4MakeERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE">
<span id="_CPPv3N5arrow16SparseTensorImpl4MakeERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="_CPPv2N5arrow16SparseTensorImpl4MakeERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE"></span><span id="arrow::SparseTensorImpl::Make__std::shared_ptr:SparseIndexType:CR.std::shared_ptr:DataType:CR.std::shared_ptr:Buffer:CR.std::vector:int64_t:CR.std::vector:ss:CR"></span><span class="target" id="classarrow_1_1_sparse_tensor_impl_1aa3cfc7b57bc57464d59b67b37a99f2dd"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl::SparseIndexType"><span class="n"><span class="pre">SparseIndexType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl::SparseIndexType"><span class="n"><span class="pre">SparseIndexType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">sparse_index</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">type</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="memory.html#_CPPv4N5arrow6BufferE" title="arrow::Buffer"><span class="n"><span class="pre">Buffer</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">data</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">int64_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">shape</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dim_names</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow16SparseTensorImpl4MakeERKNSt10shared_ptrI15SparseIndexTypeEERKNSt10shared_ptrI8DataTypeEERKNSt10shared_ptrI6BufferEERKNSt6vectorI7int64_tEERKNSt6vectorINSt6stringEEE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Create a <a class="reference internal" href="#classarrow_1_1_sparse_tensor"><span class="std std-ref">SparseTensor</span></a> with full parameters. </p>
</dd></dl>
<dl class="cpp function">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow16SparseTensorImpl4MakeERK6TensorRKNSt10shared_ptrI8DataTypeEEP10MemoryPool">
<span id="_CPPv3N5arrow16SparseTensorImpl4MakeERK6TensorRKNSt10shared_ptrI8DataTypeEEP10MemoryPool"></span><span id="_CPPv2N5arrow16SparseTensorImpl4MakeERK6TensorRKNSt10shared_ptrI8DataTypeEEP10MemoryPool"></span><span id="arrow::SparseTensorImpl::Make__TensorCR.std::shared_ptr:DataType:CR.MemoryPoolP"></span><span class="target" id="classarrow_1_1_sparse_tensor_impl_1a1193d18e653218239a3c178038b84bc7"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><a class="reference internal" href="support.html#_CPPv4I0EN5arrow6ResultE" title="arrow::Result"><span class="n"><span class="pre">Result</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl::SparseIndexType"><span class="n"><span class="pre">SparseIndexType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Make</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5arrow6TensorE" title="arrow::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">tensor</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="datatype.html#_CPPv4N5arrow8DataTypeE" title="arrow::DataType"><span class="n"><span class="pre">DataType</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">index_value_type</span></span>, <a class="reference internal" href="memory.html#_CPPv4N5arrow10MemoryPoolE" title="arrow::MemoryPool"><span class="n"><span class="pre">MemoryPool</span></span></a><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n sig-param"><span class="pre">pool</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="memory.html#_CPPv4N5arrow19default_memory_poolEv" title="arrow::default_memory_pool"><span class="n"><span class="pre">default_memory_pool</span></span></a><span class="p"><span class="pre">(</span></span><span class="p"><span class="pre">)</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5arrow16SparseTensorImpl4MakeERK6TensorRKNSt10shared_ptrI8DataTypeEEP10MemoryPool" title="Permalink to this definition">#</a><br /></dt>
<dd><p>Create a sparse tensor from a dense tensor. </p>
<p>The dense tensor is re-encoded as a sparse index and a physical data buffer for the non-zero value. </p>
</dd></dl>
</div>
</dd></dl>
<dl class="cpp type">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow15SparseCOOTensorE">
<span id="_CPPv3N5arrow15SparseCOOTensorE"></span><span id="_CPPv2N5arrow15SparseCOOTensorE"></span><span class="target" id="namespacearrow_1ac9b05a1d2db4d6cce70e2adc6ae983f9"></span><span class="k"><span class="pre">using</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">SparseCOOTensor</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCOOIndexE" title="arrow::SparseCOOIndex"><span class="n"><span class="pre">SparseCOOIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow15SparseCOOTensorE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: Type alias for COO sparse tensor. </p>
</dd></dl>
<dl class="cpp type">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow15SparseCSCMatrixE">
<span id="_CPPv3N5arrow15SparseCSCMatrixE"></span><span id="_CPPv2N5arrow15SparseCSCMatrixE"></span><span class="target" id="namespacearrow_1a365a8eacbf769f8ce28bac334b84690c"></span><span class="k"><span class="pre">using</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">SparseCSCMatrix</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">SparseCSCIndex</span></span><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow15SparseCSCMatrixE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: Type alias for CSC sparse matrix. </p>
</dd></dl>
<dl class="cpp type">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow15SparseCSFTensorE">
<span id="_CPPv3N5arrow15SparseCSFTensorE"></span><span id="_CPPv2N5arrow15SparseCSFTensorE"></span><span class="target" id="namespacearrow_1a425323660be318b4ad32315190d83371"></span><span class="k"><span class="pre">using</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">SparseCSFTensor</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">SparseCSFIndex</span></span><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow15SparseCSFTensorE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: Type alias for CSF sparse matrix. </p>
</dd></dl>
<dl class="cpp type">
<dt class="sig sig-object cpp" id="_CPPv4N5arrow15SparseCSRMatrixE">
<span id="_CPPv3N5arrow15SparseCSRMatrixE"></span><span id="_CPPv2N5arrow15SparseCSRMatrixE"></span><span class="target" id="namespacearrow_1a30853e74abee092db4aa50440dab9ce8"></span><span class="k"><span class="pre">using</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">arrow</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">SparseCSRMatrix</span></span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0EN5arrow16SparseTensorImplE" title="arrow::SparseTensorImpl"><span class="n"><span class="pre">SparseTensorImpl</span></span></a><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5arrow14SparseCSRIndexE" title="arrow::SparseCSRIndex"><span class="n"><span class="pre">SparseCSRIndex</span></span></a><span class="p"><span class="pre">&gt;</span></span><a class="headerlink" href="#_CPPv4N5arrow15SparseCSRMatrixE" title="Permalink to this definition">#</a><br /></dt>
<dd><p>EXPERIMENTAL: Type alias for CSR sparse matrix. </p>
</dd></dl>
</section>
</section>
</article>
<footer class="prev-next-footer">
<div class="prev-next-area">
<a class="left-prev"
href="gandiva.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
<p class="prev-next-title">Gandiva Expression Compiler</p>
</div>
</a>
<a class="right-next"
href="utilities.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">Utilities</p>
</div>
<i class="fa-solid fa-angle-right"></i>
</a>
</div>
</footer>
</div>
<div class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
<div class="sidebar-secondary-item">
<div
id="pst-page-navigation-heading-2"
class="page-toc tocsection onthispage">
<i class="fa-solid fa-list"></i> On this page
</div>
<nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#dense-tensors">Dense Tensors</a></li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#sparse-tensors">Sparse Tensors</a></li>
</ul>
</nav></div>
<div class="sidebar-secondary-item">
<div class="tocsection editthispage">
<a href="https://github.com/apache/arrow/edit/main/docs/source/cpp/api/tensor.rst">
<i class="fa-solid fa-pencil"></i>
Edit on GitHub
</a>
</div>
</div>
</div></div>
</div>
<footer class="bd-footer-content">
</footer>
</main>
</div>
</div>
<!-- Scripts loaded after <body> so the DOM is not blocked -->
<script src="../../_static/scripts/bootstrap.js?digest=8d27b9dea8ad943066ae"></script>
<script src="../../_static/scripts/pydata-sphinx-theme.js?digest=8d27b9dea8ad943066ae"></script>
<footer class="bd-footer">
<div class="bd-footer__inner bd-page-width">
<div class="footer-items__start">
<div class="footer-item">
<p class="copyright">
© Copyright 2016-2024 Apache Software Foundation.
Apache Arrow, Arrow, Apache, the Apache feather logo, and the Apache Arrow project logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.
<br/>
</p>
</div>
<div class="footer-item">
<p class="sphinx-version">
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 6.2.0.
<br/>
</p>
</div>
</div>
<div class="footer-items__end">
<div class="footer-item">
<p class="theme-version">
Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.15.2.
</p></div>
</div>
</div>
</footer>
</body>
</html>