
<!DOCTYPE html>

<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>pyarrow.compute.power_checked &#8212; Apache Arrow v7.0.0</title>
    
    <link href="../../_static/styles/theme.css?digest=1999514e3f237ded88cf" rel="stylesheet">
<link href="../../_static/styles/pydata-sphinx-theme.css?digest=1999514e3f237ded88cf" rel="stylesheet">
  
    
    <link rel="stylesheet"
      href="../../_static/vendor/fontawesome/5.13.0/css/all.min.css">
    <link rel="preload" as="font" type="font/woff2" crossorigin
      href="../../_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2">
    <link rel="preload" as="font" type="font/woff2" crossorigin
      href="../../_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2">
  
    
      
  
    
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/styles/pydata-sphinx-theme.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/tabs.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/theme_overrides.css" />
    
    <link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=1999514e3f237ded88cf">
  
    <script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script>
    <script src="../../_static/jquery.js"></script>
    <script src="../../_static/underscore.js"></script>
    <script src="../../_static/doctools.js"></script>
    <link rel="canonical" href="https://arrow.apache.org/docs/python/generated/pyarrow.compute.power_checked.html" />
    <link rel="shortcut 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="pyarrow.compute.sign" href="pyarrow.compute.sign.html" />
    <link rel="prev" title="pyarrow.compute.power" href="pyarrow.compute.power.html" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="docsearch:language" content="None">
    

    <!-- Google Analytics -->
    
  <!-- 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-spy="scroll" data-target="#bd-toc-nav" data-offset="80">
    
    <div class="container-fluid" id="banner"></div>

    


    <div class="container-xl">
      <div class="row">
          
            
            <!-- Only show if we have sidebars configured, else just a small margin  -->
            <div class="col-12 col-md-3 bd-sidebar">
              <div class="sidebar-start-items">
<a class="navbar-brand" href="../../index.html">
  <img src="../../_static/arrow.png" class="logo" alt="logo">
</a>

<div id="version-search-wrapper">

<div id="version-button" class="dropdown">
    <button type="button" class="btn btn-secondary btn-sm navbar-btn dropdown-toggle" id="version_switcher_button" data-toggle="dropdown">
        7.0.0
        <span class="caret"></span>
    </button>
    <div id="version_switcher" class="dropdown-menu list-group-flush py-0" aria-labelledby="version_switcher_button">
    <!-- dropdown will be populated by javascript on page load -->
    </div>
</div>

<script type="text/javascript">
// Function to construct the target URL from the JSON components
function buildURL(entry) {
    var template = "https://arrow.apache.org/docs/{version}";  // supplied by jinja
    template = template.replace("{version}", entry.version);
    return template;
}

// Function to check if corresponding page path exists in other version of docs
// and, if so, go there instead of the homepage of the other docs version
function checkPageExistsAndRedirect(event) {
    const currentFilePath = "python/generated/pyarrow.compute.power_checked.html",
          otherDocsHomepage = event.target.getAttribute("href");
    let tryUrl = `${otherDocsHomepage}${currentFilePath}`;
    $.ajax({
        type: 'HEAD',
        url: tryUrl,
        // if the page exists, go there
        success: function() {
            location.href = tryUrl;
        }
    }).fail(function() {
        location.href = otherDocsHomepage;
    });
    return false;
}

// Function to populate the version switcher
(function () {
    // get JSON config
    $.getJSON("/docs/_static/versions.json", function(data, textStatus, jqXHR) {
        // create the nodes first (before AJAX calls) to ensure the order is
        // correct (for now, links will go to doc version homepage)
        $.each(data, function(index, entry) {
            // if no custom name specified (e.g., "latest"), use version string
            if (!("name" in entry)) {
                entry.name = entry.version;
            }
            // construct the appropriate URL, and add it to the dropdown
            entry.url = buildURL(entry);
            const node = document.createElement("a");
            node.setAttribute("class", "list-group-item list-group-item-action py-1");
            node.setAttribute("href", `${entry.url}`);
            node.textContent = `${entry.name}`;
            node.onclick = checkPageExistsAndRedirect;
            $("#version_switcher").append(node);
        });
    });
})();
</script>

<form id="search-box" class="bd-search d-flex align-items-center" action="../../search.html" method="get">
  <i class="icon fas fa-search"></i>
  <input type="search" class="form-control" name="q" id="search-input" placeholder="Search the docs ..." aria-label="Search the docs ..." autocomplete="off" >
</form>

</div>

<nav class="bd-links" id="bd-docs-nav" aria-label="Main navigation">
  <div class="bd-toc-item active">
    
    <p aria-level="2" class="caption" role="heading">
 <span class="caption-text">
  Supported Environments
 </span>
</p>
<ul class="current nav bd-sidenav">
 <li class="toctree-l1">
  <a class="reference internal" href="../../c_glib/index.html">
   C/GLib
  </a>
 </li>
 <li class="toctree-l1 has-children">
  <a class="reference internal" href="../../cpp/index.html">
   C++
  </a>
  <input class="toctree-checkbox" id="toctree-checkbox-1" name="toctree-checkbox-1" type="checkbox"/>
  <label for="toctree-checkbox-1">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../../cpp/getting_started.html">
     User Guide
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-2" name="toctree-checkbox-2" type="checkbox"/>
    <label for="toctree-checkbox-2">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/overview.html">
       High-Level Overview
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/conventions.html">
       Conventions
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/build_system.html">
       Using Arrow C++ in your own project
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/memory.html">
       Memory Management
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/arrays.html">
       Arrays
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/datatypes.html">
       Data Types
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/tables.html">
       Tabular Data
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/compute.html">
       Compute Functions
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/streaming_execution.html">
       Streaming execution engine
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/io.html">
       Input / output and filesystems
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/ipc.html">
       Reading and writing the Arrow IPC format
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/parquet.html">
       Reading and writing Parquet files
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/csv.html">
       Reading and Writing CSV files
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/json.html">
       Reading JSON files
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/dataset.html">
       Tabular Datasets
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/flight.html">
       Arrow Flight RPC
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/gdb.html">
       Debugging code using Arrow
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../../cpp/examples/index.html">
     Examples
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-3" name="toctree-checkbox-3" type="checkbox"/>
    <label for="toctree-checkbox-3">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/examples/cmake_minimal_build.html">
       Minimal build using CMake
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/examples/compute_and_write_example.html">
       Compute and Write CSV Example
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/examples/dataset_documentation_example.html">
       Arrow Datasets example
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/examples/row_columnar_conversion.html">
       Row to columnar conversion
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/examples/tuple_range_conversion.html">
       std::tuple-like ranges to Arrow
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../../cpp/api.html">
     API Reference
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-4" name="toctree-checkbox-4" type="checkbox"/>
    <label for="toctree-checkbox-4">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/support.html">
       Programming Support
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/memory.html">
       Memory (management)
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/datatype.html">
       Data Types
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/array.html">
       Arrays
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/scalar.html">
       Scalars
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/builder.html">
       Array Builders
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/table.html">
       Two-dimensional Datasets
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/c_abi.html">
       C Interfaces
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/compute.html">
       Compute Functions
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/tensor.html">
       Tensors
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/utilities.html">
       Utilities
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/async.html">
       Asynchronous programming
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/io.html">
       Input / output
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/ipc.html">
       Arrow IPC
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/formats.html">
       File Formats
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/cuda.html">
       CUDA support
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/flight.html">
       Arrow Flight RPC
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/filesystem.html">
       Filesystems
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../cpp/api/dataset.html">
       Dataset
      </a>
     </li>
    </ul>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://github.com/apache/arrow/blob/master/csharp/README.md">
   C#
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://pkg.go.dev/github.com/apache/arrow/go">
   Go
  </a>
 </li>
 <li class="toctree-l1 has-children">
  <a class="reference internal" href="../../java/index.html">
   Java
  </a>
  <input class="toctree-checkbox" id="toctree-checkbox-5" name="toctree-checkbox-5" type="checkbox"/>
  <label for="toctree-checkbox-5">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/vector.html">
     ValueVector
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/vector_schema_root.html">
     VectorSchemaRoot
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/ipc.html">
     Reading/Writing IPC formats
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/algorithm.html">
     Java Algorithms
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/dataset.html">
     Dataset
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../java/reference/index.html">
     Reference (javadoc)
    </a>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../js/index.html">
   JavaScript
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://github.com/apache/arrow/blob/master/julia/Arrow/README.md">
   Julia
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://github.com/apache/arrow/blob/master/matlab/README.md">
   MATLAB
  </a>
 </li>
 <li class="toctree-l1 current active has-children">
  <a class="reference internal" href="../index.html">
   Python
  </a>
  <input checked="" class="toctree-checkbox" id="toctree-checkbox-6" name="toctree-checkbox-6" type="checkbox"/>
  <label for="toctree-checkbox-6">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul class="current">
   <li class="toctree-l2">
    <a class="reference internal" href="../install.html">
     Installing PyArrow
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../getstarted.html">
     Getting Started
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../data.html">
     Data Types and In-Memory Data Model
    </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="../memory.html">
     Memory and IO Interfaces
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../ipc.html">
     Streaming, Serialization, and IPC
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../filesystems.html">
     Filesystem Interface
    </a>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../filesystems_deprecated.html">
     Filesystem Interface (legacy)
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-7" name="toctree-checkbox-7" type="checkbox"/>
    <label for="toctree-checkbox-7">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.hdfs.connect.html">
       pyarrow.hdfs.connect
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.cat.html">
       pyarrow.HadoopFileSystem.cat
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.chmod.html">
       pyarrow.HadoopFileSystem.chmod
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.chown.html">
       pyarrow.HadoopFileSystem.chown
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.delete.html">
       pyarrow.HadoopFileSystem.delete
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.df.html">
       pyarrow.HadoopFileSystem.df
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.disk_usage.html">
       pyarrow.HadoopFileSystem.disk_usage
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.download.html">
       pyarrow.HadoopFileSystem.download
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.exists.html">
       pyarrow.HadoopFileSystem.exists
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.get_capacity.html">
       pyarrow.HadoopFileSystem.get_capacity
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.get_space_used.html">
       pyarrow.HadoopFileSystem.get_space_used
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.info.html">
       pyarrow.HadoopFileSystem.info
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.ls.html">
       pyarrow.HadoopFileSystem.ls
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.mkdir.html">
       pyarrow.HadoopFileSystem.mkdir
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.open.html">
       pyarrow.HadoopFileSystem.open
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.rename.html">
       pyarrow.HadoopFileSystem.rename
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.rm.html">
       pyarrow.HadoopFileSystem.rm
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HadoopFileSystem.upload.html">
       pyarrow.HadoopFileSystem.upload
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="pyarrow.HdfsFile.html">
       pyarrow.HdfsFile
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../plasma.html">
     The Plasma In-Memory Object Store
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../numpy.html">
     NumPy Integration
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../pandas.html">
     Pandas Integration
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../timestamps.html">
     Timestamps
    </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="../feather.html">
     Feather File Format
    </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="../parquet.html">
     Reading and Writing the Apache Parquet Format
    </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="../extending_types.html">
     Extending pyarrow
    </a>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../integration.html">
     PyArrow Integrations
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-8" name="toctree-checkbox-8" type="checkbox"/>
    <label for="toctree-checkbox-8">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../integration/python_r.html">
       Integrating PyArrow with R
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../integration/extending.html">
       Using pyarrow from C++ and Cython Code
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../integration/cuda.html">
       CUDA Integration
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2 current active has-children">
    <a class="reference internal" href="../api.html">
     API Reference
    </a>
    <input checked="" class="toctree-checkbox" id="toctree-checkbox-9" name="toctree-checkbox-9" type="checkbox"/>
    <label for="toctree-checkbox-9">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul class="current">
     <li class="toctree-l3">
      <a class="reference internal" href="../api/datatypes.html">
       Data Types and Schemas
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/arrays.html">
       Arrays and Scalars
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/memory.html">
       Buffers and Memory
      </a>
     </li>
     <li class="toctree-l3 current active">
      <a class="reference internal" href="../api/compute.html">
       Compute Functions
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/files.html">
       Streams and File Access
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/tables.html">
       Tables and Tensors
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/ipc.html">
       Serialization and IPC
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/flight.html">
       Arrow Flight
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/formats.html">
       Tabular File Formats
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/filesystems.html">
       Filesystems
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/dataset.html">
       Dataset
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/plasma.html">
       Plasma In-Memory Object Store
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/cuda.html">
       CUDA Integration
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../api/misc.html">
       Miscellaneous
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../getting_involved.html">
     Getting Involved
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../benchmarks.html">
     Benchmarks
    </a>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../r/index.html">
   R
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://github.com/apache/arrow/blob/master/ruby/README.md">
   Ruby
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://docs.rs/crate/arrow/">
   Rust
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../status.html">
   Implementation Status
  </a>
 </li>
</ul>
<p aria-level="2" class="caption" role="heading">
 <span class="caption-text">
  Cookbooks
 </span>
</p>
<ul class="nav bd-sidenav">
 <li class="toctree-l1">
  <a class="reference external" href="https://arrow.apache.org/cookbook/cpp/">
   C++
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://arrow.apache.org/cookbook/py/">
   Python
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference external" href="https://arrow.apache.org/cookbook/r/">
   R
  </a>
 </li>
</ul>
<p aria-level="2" class="caption" role="heading">
 <span class="caption-text">
  Specifications and Protocols
 </span>
</p>
<ul class="nav bd-sidenav">
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/Versioning.html">
   Format Versioning and Stability
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/Columnar.html">
   Arrow Columnar Format
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/Flight.html">
   Arrow Flight RPC
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/Integration.html">
   Integration Testing
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/CDataInterface.html">
   The Arrow C data interface
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/CStreamInterface.html">
   The Arrow C stream interface
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../format/Other.html">
   Other Data Structures
  </a>
 </li>
</ul>
<p aria-level="2" class="caption" role="heading">
 <span class="caption-text">
  Development
 </span>
</p>
<ul class="nav bd-sidenav">
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/contributing.html">
   Contributing to Apache Arrow
  </a>
 </li>
 <li class="toctree-l1 has-children">
  <a class="reference internal" href="../../developers/guide/index.html">
   New Contributor’s Guide
  </a>
  <input class="toctree-checkbox" id="toctree-checkbox-10" name="toctree-checkbox-10" type="checkbox"/>
  <label for="toctree-checkbox-10">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/guide/architectural_overview.html">
     Architectural Overview
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/guide/communication.html">
     Communication
    </a>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../../developers/guide/step_by_step/index.html">
     Steps in making your first PR
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-11" name="toctree-checkbox-11" type="checkbox"/>
    <label for="toctree-checkbox-11">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/set_up.html">
       Set up
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/building.html">
       Building the Arrow libraries 🏋🏿‍♀️
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/finding_issues.html">
       Finding good first issues 🔎
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/arrow_codebase.html">
       Working on the Arrow codebase 🧐
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/testing.html">
       Testing 🧪
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/step_by_step/pr_and_github.html">
       Lifecycle of a pull request
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/guide/documentation.html">
     Helping with documentation
    </a>
   </li>
   <li class="toctree-l2 has-children">
    <a class="reference internal" href="../../developers/guide/tutorials/index.html">
     Tutorials
    </a>
    <input class="toctree-checkbox" id="toctree-checkbox-12" name="toctree-checkbox-12" type="checkbox"/>
    <label for="toctree-checkbox-12">
     <i class="fas fa-chevron-down">
     </i>
    </label>
    <ul>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/tutorials/python_tutorial.html">
       Python tutorial
      </a>
     </li>
     <li class="toctree-l3">
      <a class="reference internal" href="../../developers/guide/tutorials/r_tutorial.html">
       R tutorial
      </a>
     </li>
    </ul>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/guide/resources.html">
     Additional information and resources
    </a>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/reviewing.html">
   Reviewing contributions
  </a>
 </li>
 <li class="toctree-l1 has-children">
  <a class="reference internal" href="../../developers/cpp/index.html">
   C++ Development
  </a>
  <input class="toctree-checkbox" id="toctree-checkbox-13" name="toctree-checkbox-13" type="checkbox"/>
  <label for="toctree-checkbox-13">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/cpp/building.html">
     Building Arrow C++
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/cpp/development.html">
     Development Guidelines
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/cpp/windows.html">
     Developing on Windows
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/cpp/conventions.html">
     Conventions
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/cpp/fuzzing.html">
     Fuzzing Arrow C++
    </a>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/python.html">
   Python Development
  </a>
 </li>
 <li class="toctree-l1 has-children">
  <a class="reference internal" href="../../developers/continuous_integration/index.html">
   Continuous Integration
  </a>
  <input class="toctree-checkbox" id="toctree-checkbox-14" name="toctree-checkbox-14" type="checkbox"/>
  <label for="toctree-checkbox-14">
   <i class="fas fa-chevron-down">
   </i>
  </label>
  <ul>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/continuous_integration/overview.html">
     Continuous Integration
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/continuous_integration/docker.html">
     Running Docker Builds
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/continuous_integration/archery.html">
     Daily Development using Archery
    </a>
   </li>
   <li class="toctree-l2">
    <a class="reference internal" href="../../developers/continuous_integration/crossbow.html">
     Packaging and Testing with Crossbow
    </a>
   </li>
  </ul>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/benchmarks.html">
   Benchmarks
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/documentation.html">
   Building the Documentation
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="../../developers/computeir.html">
   Arrow Compute IR (Intermediate Representation)
  </a>
 </li>
</ul>

    
  </div>
</nav>
              </div>
              <div class="sidebar-end-items">
              </div>
            </div>
            
          

          
          <div class="d-none d-xl-block col-xl-2 bd-toc">
            
              
              <div class="toc-item">
                

<nav id="bd-toc-nav">
    
</nav>
              </div>
              
              <div class="toc-item">
                

<div class="tocsection editthispage">
    <a href="https://github.com/apache/arrow/edit/master/docs/source/python/generated/pyarrow.compute.power_checked.rst">
        <i class="fas fa-pencil-alt"></i> Edit this page
    </a>
</div>

              </div>
              
            
          </div>
          

          
          
            
          
          <main class="col-12 col-md-9 col-xl-7 py-md-5 pl-md-5 pr-md-4 bd-content" role="main">
              
              <div>
                
  <div class="section" id="pyarrow-compute-power-checked">
<h1>pyarrow.compute.power_checked<a class="headerlink" href="#pyarrow-compute-power-checked" title="Permalink to this headline">¶</a></h1>
<dl class="py function">
<dt class="sig sig-object py" id="pyarrow.compute.power_checked">
<span class="sig-prename descclassname"><span class="pre">pyarrow.compute.</span></span><span class="sig-name descname"><span class="pre">power_checked</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">base</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exponent</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">/</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">memory_pool</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.compute.power_checked" title="Permalink to this definition">¶</a></dt>
<dd><p>Raise arguments to power element-wise.</p>
<p>An error is returned when integer to negative integer power is encountered,
or integer overflow is encountered.</p>
<dl class="field-list">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><dl>
<dt><strong>base</strong><span class="classifier">Array-like or scalar-like</span></dt><dd><p>Argument to compute function.</p>
</dd>
<dt><strong>exponent</strong><span class="classifier">Array-like or scalar-like</span></dt><dd><p>Argument to compute function.</p>
</dd>
<dt><strong>memory_pool</strong><span class="classifier"><a class="reference internal" href="pyarrow.MemoryPool.html#pyarrow.MemoryPool" title="pyarrow.MemoryPool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">pyarrow.MemoryPool</span></code></a>, optional</span></dt><dd><p>If not passed, will allocate memory from the default memory pool.</p>
</dd>
</dl>
</dd>
</dl>
</dd></dl>

</div>


              </div>
              
              
              <!-- Previous / next buttons -->
<div class='prev-next-area'>
    <a class='left-prev' id="prev-link" href="pyarrow.compute.power.html" title="previous page">
        <i class="fas fa-angle-left"></i>
        <div class="prev-next-info">
            <p class="prev-next-subtitle">previous</p>
            <p class="prev-next-title">pyarrow.compute.power</p>
        </div>
    </a>
    <a class='right-next' id="next-link" href="pyarrow.compute.sign.html" title="next page">
    <div class="prev-next-info">
        <p class="prev-next-subtitle">next</p>
        <p class="prev-next-title">pyarrow.compute.sign</p>
    </div>
    <i class="fas fa-angle-right"></i>
    </a>
</div>
              
          </main>
          

      </div>
    </div>
  
    <script src="../../_static/scripts/pydata-sphinx-theme.js?digest=1999514e3f237ded88cf"></script>
  <footer class="footer mt-5 mt-md-0">
  <div class="container">
    
    <div class="footer-item">
      <p class="copyright">
    &copy; Copyright 2016-2022 Apache Software Foundation.<br>
</p>
    </div>
    
    <div class="footer-item">
      <p class="sphinx-version">
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 4.4.0.<br>
</p>
    </div>
    
  </div>
</footer>
<script type="text/javascript" src="/docs/_static/versionwarning.js"></script>  </body>
</html>