


<!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.LargeStringArray &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.LargeStringArray.html" />
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="pyarrow.Time32Array" href="pyarrow.Time32Array.html" />
    <link rel="prev" title="pyarrow.LargeBinaryArray" href="pyarrow.LargeBinaryArray.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.LargeStringArray</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="../../_sources/python/generated/pyarrow.LargeStringArray.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-largestringarray">
<h1>pyarrow.LargeStringArray<a class="headerlink" href="#pyarrow-largestringarray" title="Permalink to this headline">¶</a></h1>
<dl class="py class">
<dt id="pyarrow.LargeStringArray">
<em class="property">class </em><code class="sig-prename descclassname">pyarrow.</code><code class="sig-name descname">LargeStringArray</code><a class="headerlink" href="#pyarrow.LargeStringArray" 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 Arrow arrays of large string (or utf8) data type.</p>
<dl class="py method">
<dt id="pyarrow.LargeStringArray.__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.LargeStringArray.__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.LargeStringArray.__init__" title="pyarrow.LargeStringArray.__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.LargeStringArray.buffers" title="pyarrow.LargeStringArray.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.LargeStringArray.cast" title="pyarrow.LargeStringArray.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.LargeStringArray.dictionary_encode" title="pyarrow.LargeStringArray.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.LargeStringArray.diff" title="pyarrow.LargeStringArray.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.LargeStringArray.equals" title="pyarrow.LargeStringArray.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.LargeStringArray.fill_null" title="pyarrow.LargeStringArray.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.LargeStringArray.filter" title="pyarrow.LargeStringArray.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.LargeStringArray.format" title="pyarrow.LargeStringArray.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.LargeStringArray.from_buffers" title="pyarrow.LargeStringArray.from_buffers"><code class="xref py py-obj docutils literal notranslate"><span class="pre">from_buffers</span></code></a>(int length, …)</p></td>
<td><p>Construct a LargeStringArray from value_offsets and data buffers.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyarrow.LargeStringArray.from_pandas" title="pyarrow.LargeStringArray.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.LargeStringArray.is_null" title="pyarrow.LargeStringArray.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.LargeStringArray.is_valid" title="pyarrow.LargeStringArray.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.LargeStringArray.slice" title="pyarrow.LargeStringArray.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.LargeStringArray.sum" title="pyarrow.LargeStringArray.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.LargeStringArray.take" title="pyarrow.LargeStringArray.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.LargeStringArray.to_numpy" title="pyarrow.LargeStringArray.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.LargeStringArray.to_pandas" title="pyarrow.LargeStringArray.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.LargeStringArray.to_pylist" title="pyarrow.LargeStringArray.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.LargeStringArray.to_string" title="pyarrow.LargeStringArray.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.LargeStringArray.tolist" title="pyarrow.LargeStringArray.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.LargeStringArray.unique" title="pyarrow.LargeStringArray.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.LargeStringArray.validate" title="pyarrow.LargeStringArray.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.LargeStringArray.value_counts" title="pyarrow.LargeStringArray.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.LargeStringArray.view" title="pyarrow.LargeStringArray.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.LargeStringArray.nbytes" title="pyarrow.LargeStringArray.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.LargeStringArray.null_count" title="pyarrow.LargeStringArray.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.LargeStringArray.offset" title="pyarrow.LargeStringArray.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.LargeStringArray.type" title="pyarrow.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.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.LargeStringArray.equals" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

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

<dl class="py method">
<dt id="pyarrow.LargeStringArray.from_buffers">
<em class="property">static </em><code class="sig-name descname">from_buffers</code><span class="sig-paren">(</span><em class="sig-param">int length</em>, <em class="sig-param">Buffer value_offsets</em>, <em class="sig-param">Buffer data</em>, <em class="sig-param">Buffer null_bitmap=None</em>, <em class="sig-param">int null_count=-1</em>, <em class="sig-param">int offset=0</em><span class="sig-paren">)</span><a class="headerlink" href="#pyarrow.LargeStringArray.from_buffers" title="Permalink to this definition">¶</a></dt>
<dd><p>Construct a LargeStringArray from value_offsets and data buffers.
If there are nulls in the data, also a null_bitmap and the matching
null_count must be passed.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>length</strong> (<em>int</em>) – </p></li>
<li><p><strong>value_offsets</strong> (<a class="reference internal" href="pyarrow.Buffer.html#pyarrow.Buffer" title="pyarrow.Buffer"><em>Buffer</em></a>) – </p></li>
<li><p><strong>data</strong> (<a class="reference internal" href="pyarrow.Buffer.html#pyarrow.Buffer" title="pyarrow.Buffer"><em>Buffer</em></a>) – </p></li>
<li><p><strong>null_bitmap</strong> (<a class="reference internal" href="pyarrow.Buffer.html#pyarrow.Buffer" title="pyarrow.Buffer"><em>Buffer</em></a><em>, </em><em>optional</em>) – </p></li>
<li><p><strong>null_count</strong> (<em>int</em><em>, </em><em>default 0</em>) – </p></li>
<li><p><strong>offset</strong> (<em>int</em><em>, </em><em>default 0</em>) – </p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><strong>string_array</strong> (<em>StringArray</em>)</p>
</dd>
</dl>
</dd></dl>

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

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

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

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