


<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>pyarrow.Int32Array &mdash; Apache Arrow v2.0.0</title>
  

  
  <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
  <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />

  
  
  
  

  
  <!--[if lt IE 9]>
    <script src="../../_static/js/html5shiv.min.js"></script>
  <![endif]-->
  
    
      <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
        <script src="../../_static/jquery.js"></script>
        <script src="../../_static/underscore.js"></script>
        <script src="../../_static/doctools.js"></script>
        <script src="../../_static/language_data.js"></script>
    
    <script type="text/javascript" src="../../_static/js/theme.js"></script>

    
    <link rel="canonical" href="https://arrow.apache.org/docs/python/generated/pyarrow.Int32Array.html" />
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="pyarrow.Int64Array" href="pyarrow.Int64Array.html" />
    <link rel="prev" title="pyarrow.Int16Array" href="pyarrow.Int16Array.html" /> 


    <!-- Matomo -->
    <script>
      var _paq = window._paq = window._paq || [];
      /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
      _paq.push(["setDoNotTrack", true]);
      _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 class="wy-body-for-nav">

   
  <div class="wy-grid-for-nav">
    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >
          

          
            <a href="../../index.html" class="icon icon-home" alt="Documentation Home"> Apache Arrow
          

          
          </a>

          
            
            
              <div class="version">
                2.0.0
              </div>
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        
        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <p class="caption"><span class="caption-text">Specifications and Protocols</span></p>
<ul>
<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 class="caption"><span class="caption-text">Libraries</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../status.html">Implementation Status</a></li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/docs/c_glib/">C/GLib</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../cpp/index.html">C++</a></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://godoc.org/github.com/apache/arrow/go/arrow">Go</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../java/index.html">Java</a></li>
<li class="toctree-l1"><a class="reference external" href="https://arrow.apache.org/docs/js/">JavaScript</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"><a class="reference internal" href="../index.html">Python</a><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="../memory.html">Memory and IO Interfaces</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="../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"><a class="reference internal" href="../filesystems_deprecated.html">Filesystem Interface (legacy)</a></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 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="../cuda.html">CUDA Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../extending_types.html">Extending pyarrow</a></li>
<li class="toctree-l2"><a class="reference internal" href="../extending.html">Using pyarrow from C++ and Cython Code</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../api.html">API Reference</a><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 current"><a class="reference internal" href="../api/arrays.html">Arrays and Scalars</a><ul class="current">
<li class="toctree-l4"><a class="reference internal" href="../api/arrays.html#factory-functions">Factory Functions</a></li>
<li class="toctree-l4 current"><a class="reference internal" href="../api/arrays.html#array-types">Array Types</a></li>
<li class="toctree-l4"><a class="reference internal" href="../api/arrays.html#scalars">Scalars</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../api/memory.html">Buffers and Memory</a></li>
<li class="toctree-l3"><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 external" href="https://arrow.apache.org/docs/r/">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>
</ul>
<p class="caption"><span class="caption-text">Development</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../developers/contributing.html">Contributing to Apache Arrow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/cpp/index.html">C++ Development</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/python.html">Python Development</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/archery.html">Daily Development using Archery</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/crossbow.html">Packaging and Testing with Crossbow</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../developers/docker.html">Running Docker Builds</a></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>
</ul>

            
          
        </div>
        
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="../../index.html">Apache Arrow</a>
        
      </nav>


      <div class="wy-nav-content">
        
        <div class="rst-content">
        
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="../../index.html" class="icon icon-home"></a> &raquo;</li>
        
          <li><a href="../index.html">Python bindings</a> &raquo;</li>
        
          <li><a href="../api.html">API Reference</a> &raquo;</li>
        
          <li><a href="../api/arrays.html">Arrays and Scalars</a> &raquo;</li>
        
      <li>pyarrow.Int32Array</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="../../_sources/python/generated/pyarrow.Int32Array.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="pyarrow-int32array">
<h1>pyarrow.Int32Array<a class="headerlink" href="#pyarrow-int32array" title="Permalink to this headline">¶</a></h1>
<dl class="py class">
<dt id="pyarrow.Int32Array">
<em class="property">class </em><code class="sig-prename descclassname">pyarrow.</code><code class="sig-name descname">Int32Array</code><a class="headerlink" href="#pyarrow.Int32Array" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">pyarrow.lib.IntegerArray</span></code></p>
<p>Concrete class for Arrow arrays of int32 data type.</p>
<dl class="py method">
<dt id="pyarrow.Int32Array.__init__">
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.__init__" title="Permalink to this definition">¶</a></dt>
<dd><p>Initialize self.  See help(type(self)) for accurate signature.</p>
</dd></dl>

<p class="rubric">Methods</p>
<table class="longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.__init__" title="pyarrow.Int32Array.__init__"><code class="xref py py-obj docutils literal notranslate"><span class="pre">__init__</span></code></a>(*args, **kwargs)</p></td>
<td><p>Initialize self.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.buffers" title="pyarrow.Int32Array.buffers"><code class="xref py py-obj docutils literal notranslate"><span class="pre">buffers</span></code></a>(self)</p></td>
<td><p>Return a list of Buffer objects pointing to this array’s physical storage.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.cast" title="pyarrow.Int32Array.cast"><code class="xref py py-obj docutils literal notranslate"><span class="pre">cast</span></code></a>(self, target_type[, safe])</p></td>
<td><p>Cast array values to another data type</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.dictionary_encode" title="pyarrow.Int32Array.dictionary_encode"><code class="xref py py-obj docutils literal notranslate"><span class="pre">dictionary_encode</span></code></a>(self)</p></td>
<td><p>Compute dictionary-encoded representation of array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.diff" title="pyarrow.Int32Array.diff"><code class="xref py py-obj docutils literal notranslate"><span class="pre">diff</span></code></a>(self, Array other)</p></td>
<td><p>Compare contents of this array against another one.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.equals" title="pyarrow.Int32Array.equals"><code class="xref py py-obj docutils literal notranslate"><span class="pre">equals</span></code></a>(self, Array other)</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.fill_null" title="pyarrow.Int32Array.fill_null"><code class="xref py py-obj docutils literal notranslate"><span class="pre">fill_null</span></code></a>(self, fill_value)</p></td>
<td><p>See pyarrow.compute.fill_null for usage.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.filter" title="pyarrow.Int32Array.filter"><code class="xref py py-obj docutils literal notranslate"><span class="pre">filter</span></code></a>(self, Array mask[, …])</p></td>
<td><p>Select values from an array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.format" title="pyarrow.Int32Array.format"><code class="xref py py-obj docutils literal notranslate"><span class="pre">format</span></code></a>(self, **kwargs)</p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.from_buffers" title="pyarrow.Int32Array.from_buffers"><code class="xref py py-obj docutils literal notranslate"><span class="pre">from_buffers</span></code></a>(DataType type, length, buffers)</p></td>
<td><p>Construct an Array from a sequence of buffers.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.from_pandas" title="pyarrow.Int32Array.from_pandas"><code class="xref py py-obj docutils literal notranslate"><span class="pre">from_pandas</span></code></a>(obj[, mask, type])</p></td>
<td><p>Convert pandas.Series to an Arrow Array.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.is_null" title="pyarrow.Int32Array.is_null"><code class="xref py py-obj docutils literal notranslate"><span class="pre">is_null</span></code></a>(self)</p></td>
<td><p>Return BooleanArray indicating the null values.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.is_valid" title="pyarrow.Int32Array.is_valid"><code class="xref py py-obj docutils literal notranslate"><span class="pre">is_valid</span></code></a>(self)</p></td>
<td><p>Return BooleanArray indicating the non-null values.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.slice" title="pyarrow.Int32Array.slice"><code class="xref py py-obj docutils literal notranslate"><span class="pre">slice</span></code></a>(self[, offset, length])</p></td>
<td><p>Compute zero-copy slice of this array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.sum" title="pyarrow.Int32Array.sum"><code class="xref py py-obj docutils literal notranslate"><span class="pre">sum</span></code></a>(self)</p></td>
<td><p>Sum the values in a numerical array.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.take" title="pyarrow.Int32Array.take"><code class="xref py py-obj docutils literal notranslate"><span class="pre">take</span></code></a>(self, indices)</p></td>
<td><p>Select values from an array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.to_numpy" title="pyarrow.Int32Array.to_numpy"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_numpy</span></code></a>(self[, zero_copy_only, writable])</p></td>
<td><p>Return a NumPy view or copy of this array (experimental).</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.to_pandas" title="pyarrow.Int32Array.to_pandas"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_pandas</span></code></a>(self[, memory_pool, categories, …])</p></td>
<td><p>Convert to a pandas-compatible NumPy array or DataFrame, as appropriate</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.to_pylist" title="pyarrow.Int32Array.to_pylist"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_pylist</span></code></a>(self)</p></td>
<td><p>Convert to a list of native Python objects.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.to_string" title="pyarrow.Int32Array.to_string"><code class="xref py py-obj docutils literal notranslate"><span class="pre">to_string</span></code></a>(self, int indent=0, int window=10)</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.tolist" title="pyarrow.Int32Array.tolist"><code class="xref py py-obj docutils literal notranslate"><span class="pre">tolist</span></code></a>(self)</p></td>
<td><p>Alias of to_pylist for compatibility with NumPy.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.unique" title="pyarrow.Int32Array.unique"><code class="xref py py-obj docutils literal notranslate"><span class="pre">unique</span></code></a>(self)</p></td>
<td><p>Compute distinct elements in array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.validate" title="pyarrow.Int32Array.validate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">validate</span></code></a>(self, *[, full])</p></td>
<td><p>Perform validation checks.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.value_counts" title="pyarrow.Int32Array.value_counts"><code class="xref py py-obj docutils literal notranslate"><span class="pre">value_counts</span></code></a>(self)</p></td>
<td><p>Compute counts of unique elements in array.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.view" title="pyarrow.Int32Array.view"><code class="xref py py-obj docutils literal notranslate"><span class="pre">view</span></code></a>(self, target_type)</p></td>
<td><p>Return zero-copy “view” of array as another data type.</p></td>
</tr>
</tbody>
</table>
<p class="rubric">Attributes</p>
<table class="longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.nbytes" title="pyarrow.Int32Array.nbytes"><code class="xref py py-obj docutils literal notranslate"><span class="pre">nbytes</span></code></a></p></td>
<td><p>Total number of bytes consumed by the elements of the array.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.null_count" title="pyarrow.Int32Array.null_count"><code class="xref py py-obj docutils literal notranslate"><span class="pre">null_count</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.Int32Array.offset" title="pyarrow.Int32Array.offset"><code class="xref py py-obj docutils literal notranslate"><span class="pre">offset</span></code></a></p></td>
<td><p>A relative position into another array’s data.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.Int32Array.type" title="pyarrow.Int32Array.type"><code class="xref py py-obj docutils literal notranslate"><span class="pre">type</span></code></a></p></td>
<td><p></p></td>
</tr>
</tbody>
</table>
<dl class="py method">
<dt id="pyarrow.Int32Array.buffers">
<code class="sig-name descname">buffers</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.buffers" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a list of Buffer objects pointing to this array’s physical
storage.</p>
<p>To correctly interpret these buffers, you need to also apply the offset
multiplied with the size of the stored data type.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.cast">
<code class="sig-name descname">cast</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">target_type</span></em>, <em class="sig-param"><span class="n">safe</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.cast" title="Permalink to this definition">¶</a></dt>
<dd><p>Cast array values to another data type</p>
<p>See pyarrow.compute.cast for usage</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.dictionary_encode">
<code class="sig-name descname">dictionary_encode</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.dictionary_encode" title="Permalink to this definition">¶</a></dt>
<dd><p>Compute dictionary-encoded representation of array.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.diff">
<code class="sig-name descname">diff</code><span class="sig-paren">(</span><em class="sig-param">self</em>, <em class="sig-param">Array other</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.diff" title="Permalink to this definition">¶</a></dt>
<dd><p>Compare contents of this array against another one.</p>
<p>Return string containing the result of arrow::Diff comparing contents
of this array against the other array.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.equals">
<code class="sig-name descname">equals</code><span class="sig-paren">(</span><em class="sig-param">self</em>, <em class="sig-param">Array other</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.equals" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.fill_null">
<code class="sig-name descname">fill_null</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">fill_value</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.fill_null" title="Permalink to this definition">¶</a></dt>
<dd><p>See pyarrow.compute.fill_null for usage.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.filter">
<code class="sig-name descname">filter</code><span class="sig-paren">(</span><em class="sig-param">self</em>, <em class="sig-param">Array mask</em>, <em class="sig-param">null_selection_behavior=u'drop'</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.filter" title="Permalink to this definition">¶</a></dt>
<dd><p>Select values from an array. See pyarrow.compute.filter for full usage.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.format">
<code class="sig-name descname">format</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.format" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.from_buffers">
<em class="property">static </em><code class="sig-name descname">from_buffers</code><span class="sig-paren">(</span><em class="sig-param">DataType type</em>, <em class="sig-param">length</em>, <em class="sig-param">buffers</em>, <em class="sig-param">null_count=-1</em>, <em class="sig-param">offset=0</em>, <em class="sig-param">children=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.from_buffers" title="Permalink to this definition">¶</a></dt>
<dd><p>Construct an Array from a sequence of buffers.</p>
<p>The concrete type returned depends on the datatype.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>type</strong> (<a class="reference internal" href="pyarrow.DataType.html#pyarrow.DataType" title="pyarrow.DataType"><em>DataType</em></a>) – The value type of the array.</p></li>
<li><p><strong>length</strong> (<em>int</em>) – The number of values in the array.</p></li>
<li><p><strong>buffers</strong> (<em>List</em><em>[</em><a class="reference internal" href="pyarrow.Buffer.html#pyarrow.Buffer" title="pyarrow.Buffer"><em>Buffer</em></a><em>]</em>) – The buffers backing this array.</p></li>
<li><p><strong>null_count</strong> (<em>int</em><em>, </em><em>default -1</em>) – The number of null entries in the array. Negative value means that
the null count is not known.</p></li>
<li><p><strong>offset</strong> (<em>int</em><em>, </em><em>default 0</em>) – The array’s logical offset (in values, not in bytes) from the
start of each buffer.</p></li>
<li><p><strong>children</strong> (<em>List</em><em>[</em><a class="reference internal" href="pyarrow.Array.html#pyarrow.Array" title="pyarrow.Array"><em>Array</em></a><em>]</em><em>, </em><em>default None</em>) – Nested type children with length matching type.num_fields.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>array</strong> (<em>Array</em>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.from_pandas">
<em class="property">static </em><code class="sig-name descname">from_pandas</code><span class="sig-paren">(</span><em class="sig-param">obj</em>, <em class="sig-param">mask=None</em>, <em class="sig-param">type=None</em>, <em class="sig-param">bool safe=True</em>, <em class="sig-param">MemoryPool memory_pool=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.from_pandas" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert pandas.Series to an Arrow Array.</p>
<p>This method uses Pandas semantics about what values indicate
nulls. See pyarrow.array for more general conversion from arrays or
sequences to Arrow arrays.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>sequence</strong> (<em>ndarray</em><em>, </em><em>pandas.Series</em><em>, </em><em>array-like</em>) – </p></li>
<li><p><strong>mask</strong> (<em>array</em><em> (</em><em>boolean</em><em>)</em><em>, </em><em>optional</em>) – Indicate which values are null (True) or not null (False).</p></li>
<li><p><strong>type</strong> (<a class="reference internal" href="pyarrow.DataType.html#pyarrow.DataType" title="pyarrow.DataType"><em>pyarrow.DataType</em></a>) – Explicit type to attempt to coerce to, otherwise will be inferred
from the data.</p></li>
<li><p><strong>safe</strong> (<em>bool</em><em>, </em><em>default True</em>) – Check for overflows or other unsafe conversions.</p></li>
<li><p><strong>memory_pool</strong> (<a class="reference internal" href="pyarrow.MemoryPool.html#pyarrow.MemoryPool" title="pyarrow.MemoryPool"><em>pyarrow.MemoryPool</em></a><em>, </em><em>optional</em>) – If not passed, will allocate memory from the currently-set default
memory pool.</p></li>
</ul>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>Localized timestamps will currently be returned as UTC (pandas’s native
representation). Timezone-naive data will be implicitly interpreted as
UTC.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><strong>array</strong> (<em>pyarrow.Array or pyarrow.ChunkedArray</em>) – ChunkedArray is returned if object data overflows binary buffer.</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.is_null">
<code class="sig-name descname">is_null</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.is_null" title="Permalink to this definition">¶</a></dt>
<dd><p>Return BooleanArray indicating the null values.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.is_valid">
<code class="sig-name descname">is_valid</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.is_valid" title="Permalink to this definition">¶</a></dt>
<dd><p>Return BooleanArray indicating the non-null values.</p>
</dd></dl>

<dl class="py attribute">
<dt id="pyarrow.Int32Array.nbytes">
<code class="sig-name descname">nbytes</code><a class="headerlink" href="#pyarrow.Int32Array.nbytes" title="Permalink to this definition">¶</a></dt>
<dd><p>Total number of bytes consumed by the elements of the array.</p>
</dd></dl>

<dl class="py attribute">
<dt id="pyarrow.Int32Array.null_count">
<code class="sig-name descname">null_count</code><a class="headerlink" href="#pyarrow.Int32Array.null_count" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py attribute">
<dt id="pyarrow.Int32Array.offset">
<code class="sig-name descname">offset</code><a class="headerlink" href="#pyarrow.Int32Array.offset" title="Permalink to this definition">¶</a></dt>
<dd><p>A relative position into another array’s data.</p>
<p>The purpose is to enable zero-copy slicing. This value defaults to zero
but must be applied on all operations with the physical storage
buffers.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.slice">
<code class="sig-name descname">slice</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">offset</span><span class="o">=</span><span class="default_value">0</span></em>, <em class="sig-param"><span class="n">length</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.slice" title="Permalink to this definition">¶</a></dt>
<dd><p>Compute zero-copy slice of this array.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>offset</strong> (<em>int</em><em>, </em><em>default 0</em>) – Offset from start of array to slice.</p></li>
<li><p><strong>length</strong> (<em>int</em><em>, </em><em>default None</em>) – Length of slice (default is until end of Array starting from
offset).</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>sliced</strong> (<em>RecordBatch</em>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.sum">
<code class="sig-name descname">sum</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.sum" title="Permalink to this definition">¶</a></dt>
<dd><p>Sum the values in a numerical array.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.take">
<code class="sig-name descname">take</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">indices</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.take" title="Permalink to this definition">¶</a></dt>
<dd><p>Select values from an array. See pyarrow.compute.take for full usage.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.to_numpy">
<code class="sig-name descname">to_numpy</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">zero_copy_only</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">writable</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.to_numpy" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a NumPy view or copy of this array (experimental).</p>
<p>By default, tries to return a view of this array. This is only
supported for primitive arrays with the same memory layout as NumPy
(i.e. integers, floating point, ..) and without any nulls.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>zero_copy_only</strong> (<em>bool</em><em>, </em><em>default True</em>) – If True, an exception will be raised if the conversion to a numpy
array would require copying the underlying data (e.g. in presence
of nulls, or for non-primitive types).</p></li>
<li><p><strong>writable</strong> (<em>bool</em><em>, </em><em>default False</em>) – For numpy arrays created with zero copy (view on the Arrow data),
the resulting array is not writable (Arrow data is immutable).
By setting this to True, a copy of the array is made to ensure
it is writable.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>array</strong> (<em>numpy.ndarray</em>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.to_pandas">
<code class="sig-name descname">to_pandas</code><span class="sig-paren">(</span><em class="sig-param">self</em>, <em class="sig-param">memory_pool=None</em>, <em class="sig-param">categories=None</em>, <em class="sig-param">bool strings_to_categorical=False</em>, <em class="sig-param">bool zero_copy_only=False</em>, <em class="sig-param">bool integer_object_nulls=False</em>, <em class="sig-param">bool date_as_object=True</em>, <em class="sig-param">bool timestamp_as_object=False</em>, <em class="sig-param">bool use_threads=True</em>, <em class="sig-param">bool deduplicate_objects=True</em>, <em class="sig-param">bool ignore_metadata=False</em>, <em class="sig-param">bool safe=True</em>, <em class="sig-param">bool split_blocks=False</em>, <em class="sig-param">bool self_destruct=False</em>, <em class="sig-param">types_mapper=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.to_pandas" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert to a pandas-compatible NumPy array or DataFrame, as appropriate</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>memory_pool</strong> (<a class="reference internal" href="pyarrow.MemoryPool.html#pyarrow.MemoryPool" title="pyarrow.MemoryPool"><em>MemoryPool</em></a><em>, </em><em>default None</em>) – Arrow MemoryPool to use for allocations. Uses the default memory
pool is not passed.</p></li>
<li><p><strong>strings_to_categorical</strong> (<em>bool</em><em>, </em><em>default False</em>) – Encode string (UTF8) and binary types to pandas.Categorical.</p></li>
<li><p><strong>categories</strong> (<em>list</em><em>, </em><em>default empty</em>) – List of fields that should be returned as pandas.Categorical. Only
applies to table-like data structures.</p></li>
<li><p><strong>zero_copy_only</strong> (<em>bool</em><em>, </em><em>default False</em>) – Raise an ArrowException if this function call would require copying
the underlying data.</p></li>
<li><p><strong>integer_object_nulls</strong> (<em>bool</em><em>, </em><em>default False</em>) – Cast integers with nulls to objects</p></li>
<li><p><strong>date_as_object</strong> (<em>bool</em><em>, </em><em>default True</em>) – Cast dates to objects. If False, convert to datetime64[ns] dtype.</p></li>
<li><p><strong>timestamp_as_object</strong> (<em>bool</em><em>, </em><em>default False</em>) – Cast non-nanosecond timestamps (np.datetime64) to objects. This is
useful if you have timestamps that don’t fit in the normal date
range of nanosecond timestamps (1678 CE-2262 CE).
If False, all timestamps are converted to datetime64[ns] dtype.</p></li>
<li><p><strong>use_threads</strong> (<em>bool</em><em>, </em><em>default True</em>) – Whether to parallelize the conversion using multiple threads.</p></li>
<li><p><strong>deduplicate_objects</strong> (<em>bool</em><em>, </em><em>default False</em>) – Do not create multiple copies Python objects when created, to save
on memory use. Conversion will be slower.</p></li>
<li><p><strong>ignore_metadata</strong> (<em>bool</em><em>, </em><em>default False</em>) – If True, do not use the ‘pandas’ metadata to reconstruct the
DataFrame index, if present</p></li>
<li><p><strong>safe</strong> (<em>bool</em><em>, </em><em>default True</em>) – For certain data types, a cast is needed in order to store the
data in a pandas DataFrame or Series (e.g. timestamps are always
stored as nanoseconds in pandas). This option controls whether it
is a safe cast or not.</p></li>
<li><p><strong>split_blocks</strong> (<em>bool</em><em>, </em><em>default False</em>) – If True, generate one internal “block” for each column when
creating a pandas.DataFrame from a RecordBatch or Table. While this
can temporarily reduce memory note that various pandas operations
can trigger “consolidation” which may balloon memory use.</p></li>
<li><p><strong>self_destruct</strong> (<em>bool</em><em>, </em><em>default False</em>) – EXPERIMENTAL: If True, attempt to deallocate the originating Arrow
memory while converting the Arrow object to pandas. If you use the
object after calling to_pandas with this option it will crash your
program.</p></li>
<li><p><strong>types_mapper</strong> (<em>function</em><em>, </em><em>default None</em>) – A function mapping a pyarrow DataType to a pandas ExtensionDtype.
This can be used to override the default pandas type for conversion
of built-in pyarrow types or in absence of pandas_metadata in the
Table schema. The function receives a pyarrow DataType and is
expected to return a pandas ExtensionDtype or <code class="docutils literal notranslate"><span class="pre">None</span></code> if the
default conversion should be used for that type. If you have
a dictionary mapping, you can pass <code class="docutils literal notranslate"><span class="pre">dict.get</span></code> as function.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>pandas.Series or pandas.DataFrame depending on type of object</em></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.to_pylist">
<code class="sig-name descname">to_pylist</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.to_pylist" title="Permalink to this definition">¶</a></dt>
<dd><p>Convert to a list of native Python objects.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><strong>lst</strong> (<em>list</em>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.to_string">
<code class="sig-name descname">to_string</code><span class="sig-paren">(</span><em class="sig-param">self</em>, <em class="sig-param">int indent=0</em>, <em class="sig-param">int window=10</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.to_string" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.tolist">
<code class="sig-name descname">tolist</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.tolist" title="Permalink to this definition">¶</a></dt>
<dd><p>Alias of to_pylist for compatibility with NumPy.</p>
</dd></dl>

<dl class="py attribute">
<dt id="pyarrow.Int32Array.type">
<code class="sig-name descname">type</code><a class="headerlink" href="#pyarrow.Int32Array.type" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.unique">
<code class="sig-name descname">unique</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.unique" title="Permalink to this definition">¶</a></dt>
<dd><p>Compute distinct elements in array.</p>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.validate">
<code class="sig-name descname">validate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="o">*</span></em>, <em class="sig-param"><span class="n">full</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.validate" title="Permalink to this definition">¶</a></dt>
<dd><p>Perform validation checks.  An exception is raised if validation fails.</p>
<p>By default only cheap validation checks are run.  Pass <cite>full=True</cite>
for thorough validation checks (potentially O(n)).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>full</strong> (<em>bool</em><em>, </em><em>default False</em>) – If True, run expensive checks, otherwise cheap checks only.</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><strong>ArrowInvalid</strong> – </p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.value_counts">
<code class="sig-name descname">value_counts</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.value_counts" title="Permalink to this definition">¶</a></dt>
<dd><p>Compute counts of unique elements in array.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><em>An array of  &lt;input type “Values”, int64_t “Counts”&gt; structs</em></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.Int32Array.view">
<code class="sig-name descname">view</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">self</span></em>, <em class="sig-param"><span class="n">target_type</span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.Int32Array.view" title="Permalink to this definition">¶</a></dt>
<dd><p>Return zero-copy “view” of array as another data type.</p>
<p>The data types must have compatible columnar buffer layouts</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>target_type</strong> (<a class="reference internal" href="pyarrow.DataType.html#pyarrow.DataType" title="pyarrow.DataType"><em>DataType</em></a>) – Type to construct view as.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>view</strong> (<em>Array</em>)</p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</div>


           </div>
           
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="pyarrow.Int64Array.html" class="btn btn-neutral float-right" title="pyarrow.Int64Array" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="pyarrow.Int16Array.html" class="btn btn-neutral float-left" title="pyarrow.Int16Array" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        
        &copy; Copyright 2016-2019 Apache Software Foundation

    </p>
  </div>
    
    
    
    Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a
    
    <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a>
    
    provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  

  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script>

  
  
    
  


<script type="text/javascript" src="/docs/_static/versionwarning.js"></script></body>
</html>