


<!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.DictionaryArray &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.DictionaryArray.html" />
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="pyarrow.ListArray" href="pyarrow.ListArray.html" />
    <link rel="prev" title="pyarrow.Decimal128Array" href="pyarrow.Decimal128Array.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.DictionaryArray</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="../../_sources/python/generated/pyarrow.DictionaryArray.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-dictionaryarray">
<h1>pyarrow.DictionaryArray<a class="headerlink" href="#pyarrow-dictionaryarray" title="Permalink to this headline">¶</a></h1>
<dl class="py class">
<dt id="pyarrow.DictionaryArray">
<em class="property">class </em><code class="sig-prename descclassname">pyarrow.</code><code class="sig-name descname">DictionaryArray</code><a class="headerlink" href="#pyarrow.DictionaryArray" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">pyarrow.lib.Array</span></code></p>
<p>Concrete class for dictionary-encoded Arrow arrays.</p>
<dl class="py method">
<dt id="pyarrow.DictionaryArray.__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.DictionaryArray.__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.DictionaryArray.__init__" title="pyarrow.DictionaryArray.__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.DictionaryArray.buffers" title="pyarrow.DictionaryArray.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.DictionaryArray.cast" title="pyarrow.DictionaryArray.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.DictionaryArray.dictionary_encode" title="pyarrow.DictionaryArray.dictionary_encode"><code class="xref py py-obj docutils literal notranslate"><span class="pre">dictionary_encode</span></code></a>(self)</p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.diff" title="pyarrow.DictionaryArray.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.DictionaryArray.equals" title="pyarrow.DictionaryArray.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.DictionaryArray.fill_null" title="pyarrow.DictionaryArray.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.DictionaryArray.filter" title="pyarrow.DictionaryArray.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.DictionaryArray.format" title="pyarrow.DictionaryArray.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.DictionaryArray.from_arrays" title="pyarrow.DictionaryArray.from_arrays"><code class="xref py py-obj docutils literal notranslate"><span class="pre">from_arrays</span></code></a>(indices, dictionary[, mask])</p></td>
<td><p>Construct a DictionaryArray from indices and values.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.from_buffers" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.from_pandas" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.is_null" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.is_valid" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.slice" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.sum" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.take" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.to_numpy" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.to_pandas" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.to_pylist" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.to_string" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.tolist" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.unique" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.validate" title="pyarrow.DictionaryArray.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-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.value_counts" title="pyarrow.DictionaryArray.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-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.view" title="pyarrow.DictionaryArray.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.DictionaryArray.dictionary" title="pyarrow.DictionaryArray.dictionary"><code class="xref py py-obj docutils literal notranslate"><span class="pre">dictionary</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.indices" title="pyarrow.DictionaryArray.indices"><code class="xref py py-obj docutils literal notranslate"><span class="pre">indices</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.DictionaryArray.nbytes" title="pyarrow.DictionaryArray.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.DictionaryArray.null_count" title="pyarrow.DictionaryArray.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.DictionaryArray.offset" title="pyarrow.DictionaryArray.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.DictionaryArray.type" title="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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 attribute">
<dt id="pyarrow.DictionaryArray.dictionary">
<code class="sig-name descname">dictionary</code><a class="headerlink" href="#pyarrow.DictionaryArray.dictionary" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.dictionary_encode" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.equals" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.format" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.from_arrays">
<em class="property">static </em><code class="sig-name descname">from_arrays</code><span class="sig-paren">(</span><em class="sig-param">indices</em>, <em class="sig-param">dictionary</em>, <em class="sig-param">mask=None</em>, <em class="sig-param">bool ordered=False</em>, <em class="sig-param">bool from_pandas=False</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.DictionaryArray.from_arrays" title="Permalink to this definition">¶</a></dt>
<dd><p>Construct a DictionaryArray from indices and values.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>indices</strong> (<a class="reference internal" href="pyarrow.Array.html#pyarrow.Array" title="pyarrow.Array"><em>pyarrow.Array</em></a><em>, </em><em>numpy.ndarray</em><em> or </em><em>pandas.Series</em><em>, </em><em>int type</em>) – Non-negative integers referencing the dictionary values by zero
based index.</p></li>
<li><p><strong>dictionary</strong> (<a class="reference internal" href="pyarrow.Array.html#pyarrow.Array" title="pyarrow.Array"><em>pyarrow.Array</em></a><em>, </em><em>ndarray</em><em> or </em><em>pandas.Series</em>) – The array of values referenced by the indices.</p></li>
<li><p><strong>mask</strong> (<em>ndarray</em><em> or </em><em>pandas.Series</em><em>, </em><em>bool type</em>) – True values indicate that indices are actually null.</p></li>
<li><p><strong>from_pandas</strong> (<em>bool</em><em>, </em><em>default False</em>) – If True, the indices should be treated as though they originated in
a pandas.Categorical (null encoded as -1).</p></li>
<li><p><strong>ordered</strong> (<em>bool</em><em>, </em><em>default False</em>) – Set to True if the category values are ordered.</p></li>
<li><p><strong>safe</strong> (<em>bool</em><em>, </em><em>default True</em>) – If True, check that the dictionary indices are in range.</p></li>
<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>) – For memory allocations, if required, otherwise uses default pool.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>dict_array</strong> (<em>DictionaryArray</em>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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 attribute">
<dt id="pyarrow.DictionaryArray.indices">
<code class="sig-name descname">indices</code><a class="headerlink" href="#pyarrow.DictionaryArray.indices" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.nbytes">
<code class="sig-name descname">nbytes</code><a class="headerlink" href="#pyarrow.DictionaryArray.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.DictionaryArray.null_count">
<code class="sig-name descname">null_count</code><a class="headerlink" href="#pyarrow.DictionaryArray.null_count" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py attribute">
<dt id="pyarrow.DictionaryArray.offset">
<code class="sig-name descname">offset</code><a class="headerlink" href="#pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.to_string" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.type">
<code class="sig-name descname">type</code><a class="headerlink" href="#pyarrow.DictionaryArray.type" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="py method">
<dt id="pyarrow.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.DictionaryArray.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.ListArray.html" class="btn btn-neutral float-right" title="pyarrow.ListArray" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="pyarrow.Decimal128Array.html" class="btn btn-neutral float-left" title="pyarrow.Decimal128Array" 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>