Ë
    ¿š§j�d  ã                   óh  — d dl mZmZmZmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZP d dlQmRZR d dlSZSd dlTmUZU d dlVZVd dlWZXd dlWmYZY d dlZm[Z[ d„ Z\ eRdd	«      Z]d
„ Z^d„ Z_d„ Z`d„ Zad„ Zbd„ Zcd„ Zdd„ Ze ee«         ef«       d   xZgZhd!d„Zid"ddœd„Zjdddœd„Zkd„ Zl	 d"ddœd„Zm	 d"ddœd„Znddddœd„Zod„ Zpd „ Zqy)#é    )PÚFunctionÚFunctionOptionsÚFunctionRegistryÚHashAggregateFunctionÚHashAggregateKernelÚKernelÚScalarAggregateFunctionÚScalarAggregateKernelÚScalarFunctionÚScalarKernelÚVectorFunctionÚVectorKernelÚArraySortOptionsÚAssumeTimezoneOptionsÚCastOptionsÚCountOptionsÚCumulativeOptionsÚCumulativeSumOptionsÚDayOfWeekOptionsÚDictionaryEncodeOptionsÚRunEndEncodeOptionsÚElementWiseAggregateOptionsÚExtractRegexOptionsÚExtractRegexSpanOptionsÚFilterOptionsÚIndexOptionsÚInversePermutationOptionsÚJoinOptionsÚListSliceOptionsÚListFlattenOptionsÚMakeStructOptionsÚMapLookupOptionsÚMatchSubstringOptionsÚModeOptionsÚNullOptionsÚ
PadOptionsÚPairwiseOptionsÚPartitionNthOptionsÚPivotWiderOptionsÚQuantileOptionsÚRandomOptionsÚRankOptionsÚRankQuantileOptionsÚReplaceSliceOptionsÚReplaceSubstringOptionsÚRoundBinaryOptionsÚRoundOptionsÚRoundTemporalOptionsÚRoundToMultipleOptionsÚScalarAggregateOptionsÚScatterOptionsÚSelectKOptionsÚSetLookupOptionsÚSkewOptionsÚSliceOptionsÚSortOptionsÚSplitOptionsÚSplitPatternOptionsÚStrftimeOptionsÚStrptimeOptionsÚStructFieldOptionsÚTakeOptionsÚTDigestOptionsÚTrimOptionsÚUtf8NormalizeOptionsÚVarianceOptionsÚWeekOptionsÚWinsorizeOptionsÚZeroFillOptionsÚcall_functionÚfunction_registryÚget_functionÚlist_functionsÚcall_tabular_functionÚregister_scalar_functionÚregister_tabular_functionÚregister_aggregate_functionÚregister_vector_functionÚ
UdfContextÚ
Expression)Ú
namedtupleN)Údedent)Ú_compute_docstrings)Ú	docscrapec                 ó.   — | j                   j                  S )N)Ú_docÚ	arg_names)Úfuncs    úRC:\Users\Luka\AppData\Local\Temp\pip-target-o84fipzb\lib\python\pyarrow/compute.pyÚ_get_arg_namesr\   s   s   € Ø�9‰9×ÑÐó    Ú_OptionsClassDoc)Úparamsc                 óv   — | j                   sy t        j                  | j                   «      }t        |d   «      S )NÚ
Parameters)Ú__doc__rV   ÚNumpyDocStringr^   )Úoptions_classÚdocs     r[   Ú_scrape_options_class_docrf   z   s4   € Ø× Ò ØÜ
×
"Ñ
" =×#8Ñ#8Ó
9€CÜ˜C Ñ-Ó.Ð.r]   c                 óÜ  — |j                   }t        |j                  |j                  |j                  |j
                  ¬«      | _        || _        || _        g }|j                  }|s%|j                  dkD  rdnd}d|j                  ›d|› �}|j                  |› d�«       |j                  }|r|j                  |› d�«       t        j                  j                  |j                  «      }	|j                  t        d	«      «       t!        |«      }
|
D ]=  }|j"                  d
v rd}nd}|j                  |› d|› d�«       |j                  d«       Œ? |��6t%        |«      }|rc|j&                  D ]S  }|j                  |j                  › d|j(                  › d�«       |j*                  D ]  }|j                  d|› d�«       Œ ŒU nžt-        j.                  d|j                  › d�t0        «       t3        j4                  |«      }|j6                  j9                  «       D ]D  }|j                  t        d|j                  › d|j                  › d|j                  › d�«      «       ŒF |j                  t        d|j                  › d�«      «       |j                  t        d«      «       |	�/t        |	«      j;                  d«      }|j                  d|› d�«       dj=                  |«      | _        | S )N)ÚnameÚarityrd   Úoptions_requiredé   Ú	argumentsÚargumentzCall compute function z with the given z.

z

z.        Parameters
        ----------
        )ÚvectorÚscalar_aggregatez
Array-likezArray-like or scalar-likez : Ú
z"    Argument to compute function.
z    zOptions class z does not have a docstringz                z. : optional
                    Parameter for z7 constructor. Either `options`
                    or `z@` can be passed, but not both at the same time.
                z&            options : pyarrow.compute.zK, optional
                Alternative way of passing options.
            z‰        memory_pool : pyarrow.MemoryPool, optional
            If not passed, will allocate memory from the default memory pool.
        Ú ) rX   Údictrh   ri   rd   rj   Ú__arrow_compute_function__Ú__name__Ú__qualname__ÚsummaryÚappendÚdescriptionrU   Úfunction_doc_additionsÚgetrT   r\   Úkindrf   r_   ÚtypeÚdescÚwarningsÚwarnÚRuntimeWarningÚinspectÚ	signatureÚ
parametersÚvaluesÚstripÚjoinrb   )ÚwrapperÚexposed_namerZ   rd   Úcpp_docÚ
doc_piecesrv   Úarg_strrx   Údoc_additionrY   Úarg_nameÚarg_typeÚoptions_class_docÚpÚsÚoptions_sigÚstrippeds                     r[   Ú_decorate_compute_functionr”   �   sñ  € ð �i‰i€Gä)-Ø�Y‰YØ�j‰jØ×+Ñ+Ø ×1Ñ1ô	*3€GÔ&ð
 $€GÔØ'€GÔà€Jð �o‰o€GÙØ!%§¡¨a¢‘+°ZˆØ*¨4¯9©9¨-Ð7GÈÀyÐQˆà×Ñ˜˜	 Ð'Ô(ð ×%Ñ%€KÙØ×Ñ˜[˜M¨Ð.Ô/ä&×=Ñ=×AÑAÀ$Ç)Á)ÓL€Lð ×Ñ”fð ó ô ô ˜tÓ$€IÛˆØ�9‰9Ð6Ñ6Ø#‰Hà2ˆHØ×Ñ˜X˜J c¨(¨°2Ð6Ô7Ø×ÑÐ?Õ@ð ð Ñ Ü5°mÓDÐÙØ&×-Ô-�Ø×!Ñ! Q§V¡V H¨C°·±¨x°rÐ":Ô;ØŸœ�AØ×%Ñ%¨¨Q¨C¨r lÕ3ñ  ñ .ô
 �M‰M˜N¨=×+AÑ+AÐ*Bð C6ð 7Ü8FôHä!×+Ñ+¨MÓ:ˆKØ ×+Ñ+×2Ñ2Ö4�Ø×!Ñ!¤&ð .Ø—‘�ð #Ø#0×#9Ñ#9Ð":ð ;ØŸ™˜ð !ð*ó #õ ð 5ð 	×Ñœ&ð &'Ø'4×'=Ñ'=Ð&>ð ?ð"ó ô 	ð
 ×Ñ”fð ó ô ð ÐÜ˜,Ó'×-Ñ-¨dÓ3ˆØ×Ñ˜B˜x˜j¨Ð+Ô,à—g‘g˜jÓ)€G„OØ€Nr]   c                 óª   — | j                   j                  }|sy 	 t        «       |   S # t        $ r! t	        j
                  d|› d�t        «       Y y w xY w)NzPython binding for z not exposed)rX   rd   ÚglobalsÚKeyErrorr~   r   r€   )rZ   Ú
class_names     r[   Ú_get_options_classr™   Ô   sV   € Ø—‘×(Ñ(€JÙØðÜ‹y˜Ñ$Ð$øÜò Ü�‰Ð+¨J¨<°|ÐDÜ$ô	&áðús   ›( ¨'AÁAc           
      óÈ   — |s|r|�t        d| ›d�«      ‚ ||i |¤ŽS |�Ct        |t        «      r |di |¤ŽS t        ||«      r|S t        d| ›d|› dt        |«      › �«      ‚y )Nz	Function z@ called with both an 'options' argument and additional argumentsz expected a z parameter, got © )Ú	TypeErrorÚ
isinstancerr   r|   )rh   rd   ÚoptionsÚargsÚkwargss        r[   Ú_handle_optionsr¡   à   sœ   € Ù‰vØÐÜØ˜D˜8ð $+ð ,ó-ð -ñ ˜dÐ- fÑ-Ð-àÐÜ�gœtÔ$Ù Ñ+ 7Ñ+Ð+Ü˜ Ô/ØˆNÜØ˜�x˜|¨M¨?ð ;Ü˜“=�/ð#ó$ð 	$ð r]   c                 óB   ‡ ‡‡‡— ‰€d dœˆˆˆ fd„
}|S d d dœˆˆˆ ˆfd„
}|S )N©Úmemory_poolc           	      óø   •— ‰t         ur+t        |«      ‰k7  rt        ‰› d‰› dt        |«      › d�«      ‚|r2t        |d   t        «      rt	        j
                  ‰t        |«      «      S ‰j                  |d | «      S )Nú takes ú positional argument(s), but ú were givenr   )ÚEllipsisÚlenrœ   r�   rR   Ú_callÚlistÚcall)r¤   rŸ   ri   rZ   Ú	func_names     €€€r[   r‡   z&_make_generic_wrapper.<locals>.wrapperö   s   ø€ ØœHÑ$¬¨T«°eÒ);ÜØ �k ¨¨ð 0Ü˜t›9˜+ [ð2óð ñ œ
 4¨¡7¬JÔ7Ü!×'Ñ'¨	´4¸³:Ó>Ð>Ø—9‘9˜T 4¨Ó5Ð5r]   )r¤   rž   c           	      ó2  •— ‰t         ur6t        |«      ‰k  rt        ‰› d‰› dt        |«      › d�«      ‚|‰d  }|d ‰ }nd}t        ‰‰|||«      }|r3t	        |d   t
        «      r t        j                  ‰t        |«      |«      S ‰j                  ||| «      S )Nr¦   r§   r¨   r›   r   )	r©   rª   rœ   r¡   r�   rR   r«   r¬   r­   )	r¤   rž   rŸ   r    Úoption_argsri   rZ   r®   rd   s	        €€€€r[   r‡   z&_make_generic_wrapper.<locals>.wrapper   s²   ø€ ØœHÑ$Ü�t“9˜uÒ$Ü#Ø$˜+ W¨U¨Gð 4Ü" 4›y˜k¨ð6óð ð # 5 6˜l�Ø˜F˜U�|‘à �Ü% i°ÀØ&1°6ó;ˆGáœ
 4¨¡7¬JÔ7Ü!×'Ñ'¨	´4¸³:¸wÓGÐGØ—9‘9˜T 7¨KÓ8Ð8r]   r›   )r®   rZ   rd   ri   r‡   s   ```` r[   Ú_make_generic_wrapperr±   ô   s5   û€ ØÐØ'+÷ 	6ð 	6ð4 €Nð! (,°T÷ 	9ñ 	9ð  €Nr]   c                 ó†  — ddl m} g }| D ]$  }|j                   |||j                  «      «       Œ& |D ]$  }|j                   |||j                  «      «       Œ& |�­t        j
                  |«      }|j                  j                  «       D ]W  }|j                  |j                  |j                  fv sJ ‚|r|j                  |j                  ¬«      }|j                  |«       ŒY |j                   |d|j                  d ¬«      «       |j                   |d|j                  d ¬«      «       t        j                  |«      S )Nr   )Ú	Parameter)r{   rž   )Údefaultr¤   )r�   r³   rw   ÚPOSITIONAL_ONLYÚVAR_POSITIONALr‚   rƒ   r„   r{   ÚPOSITIONAL_OR_KEYWORDÚKEYWORD_ONLYÚreplaceÚ	Signature)rY   Úvar_arg_namesrd   r³   r_   rh   r’   r�   s           r[   Ú_make_signaturer¼     s#  € Ý!Ø€FÛˆØ�‰‘i  i×&?Ñ&?Ó@ÕAð ãˆØ�‰‘i  i×&>Ñ&>Ó?Õ@ð àÐ Ü×'Ñ'¨Ó6ˆØ×'Ñ'×.Ñ.Ö0ˆAØ—6‘6˜i×=Ñ=Ø'×4Ñ4ð6ñ 6ð 6ð 6áà—I‘I 9×#9Ñ#9�IÓ:�Ø�M‰M˜!Õð 1ð 	�‰‘i 	¨9×+AÑ+AØ(,ô.ô 	/à
‡M�M‘)˜M¨9×+AÑ+AØ$(ô*ô +ä×Ñ˜VÓ$Ð$r]   c                 ó  — t        |«      }t        |«      }|xr |d   j                  d«      }|r!|j                  «       j	                  d«      g}ng }t        | |||j                  ¬«      }t        |||«      |_        t        || ||«      S )NéÿÿÿÿÚ*)ri   )
r™   r\   Ú
startswithÚpopÚlstripr±   ri   r¼   Ú__signature__r”   )rh   rZ   rd   rY   Ú
has_varargr»   r‡   s          r[   Ú_wrap_functionrÅ   *  sŒ   € Ü& tÓ,€MÜ˜tÓ$€IØÒ<˜y¨™}×7Ñ7¸Ó<€JÙØ"Ÿ™›×/Ñ/°Ó4Ð5‰àˆä#Øˆd�M¨¯©ô5€Gä+¨I°}Ø,9ó;€GÔä% g¨t°T¸=ÓIÐIr]   c                  óB  — t        «       } t        «       }dddœ}|j                  «       D ]s  }|j                  ||«      }|j	                  |«      }|j
                  dk(  rŒ6|j
                  dk(  r|j                  dk(  rŒU|| vsJ |«       ‚t        ||«      x| |<   | |<   Œu y)z«
    Make global functions wrapping each compute function.

    Note that some of the automatically-generated wrappers may be overridden
    by custom versions below.
    Úand_Úor_)ÚandÚorÚhash_aggregatero   r   N)r–   rI   rK   rz   rJ   r{   ri   rÅ   )ÚgÚregÚrewritesÚcpp_namerh   rZ   s         r[   Ú_make_global_functionsrÐ   :  s¯   € ô 	‹	€AÜ
Ó
€Cð Øñ€Hð ×&Ñ&Ö(ˆØ�|‰|˜H hÓ/ˆØ×Ñ Ó)ˆØ�9‰9Ð(Ò(ð Ø�9‰9Ð*Ò*¨t¯z©z¸Qªð Ø˜1‰}Ð"˜dÓ"ˆ}Ü .¨t°TÓ :Ð:ˆˆ(‰�a˜’gñ )r]   Úutf8_zero_fillc                 ó  — |duxs |du}|r|�t        d«      ‚|€Xt        j                  j                  j	                  |«      }|du rt        j                  |«      }nt        j                  |«      }t        d| g||«      S )a†  
    Cast array values to another data type. Can also be invoked as an array
    instance method.

    Parameters
    ----------
    arr : Array-like
    target_type : DataType or str
        Type to cast to
    safe : bool, default True
        Check for overflows or other unsafe conversions
    options : CastOptions, default None
        Additional checks pass by CastOptions
    memory_pool : MemoryPool, optional
        memory pool to use for allocations during function execution.

    Examples
    --------
    >>> from datetime import datetime
    >>> import pyarrow as pa
    >>> arr = pa.array([datetime(2010, 1, 1), datetime(2015, 1, 1)])
    >>> arr.type
    TimestampType(timestamp[us])

    You can use ``pyarrow.DataType`` objects to specify the target type:

    >>> cast(arr, pa.timestamp('ms'))
    <pyarrow.lib.TimestampArray object at ...>
    [
      2010-01-01 00:00:00.000,
      2015-01-01 00:00:00.000
    ]

    >>> cast(arr, pa.timestamp('ms')).type
    TimestampType(timestamp[ms])

    Alternatively, it is also supported to use the string aliases for these
    types:

    >>> arr.cast('timestamp[ms]')
    <pyarrow.lib.TimestampArray object at ...>
    [
      2010-01-01 00:00:00.000,
      2015-01-01 00:00:00.000
    ]
    >>> arr.cast('timestamp[ms]').type
    TimestampType(timestamp[ms])

    Returns
    -------
    casted : Array
        The cast result as a new Array
    NzRMust either pass values for 'target_type' and 'safe' or pass a value for 'options'FÚcast)	Ú
ValueErrorÚpaÚtypesÚlibÚensure_typer   ÚunsafeÚsaferH   )ÚarrÚtarget_typerÚ   rž   r¤   Úsafe_vars_passeds         r[   rÓ   rÓ   \  s�   € ðl  DÐ(ÒF¨kÀÐ.EÐá˜WÐ0Üð :ó ;ð 	;ð €Ü—h‘h—l‘l×.Ñ.¨{Ó;ˆØ�5‰=Ü!×(Ñ(¨Ó5‰Gä!×&Ñ& {Ó3ˆGÜ˜ # ¨°Ó=Ð=r]   r£   c                ób  — |�*|�| j                  |||z
  «      } n&| j                  |«      } n|�| j                  d|«      } t        |t        j                  «      s"t        j                  || j
                  ¬«      }nH| j
                  |j
                  k7  r/t        j                  |j                  «       | j
                  ¬«      }t        |¬«      }t        d| g||«      }|�M|j                  «       dk\  r:t        j                  |j                  «       |z   t        j                  «       ¬«      }|S )a  
    Find the index of the first occurrence of a given value.

    Parameters
    ----------
    data : Array-like
    value : Scalar-like object
        The value to search for.
    start : int, optional
    end : int, optional
    memory_pool : MemoryPool, optional
        If not passed, will allocate memory from the default memory pool.

    Returns
    -------
    index : int
        the index, or -1 if not found

    Examples
    --------
    >>> import pyarrow as pa
    >>> import pyarrow.compute as pc
    >>> arr = pa.array(["Lorem", "ipsum", "dolor", "sit", "Lorem", "ipsum"])
    >>> pc.index(arr, "ipsum")
    <pyarrow.Int64Scalar: 1>
    >>> pc.index(arr, "ipsum", start=2)
    <pyarrow.Int64Scalar: 5>
    >>> pc.index(arr, "amet")
    <pyarrow.Int64Scalar: -1>
    r   ©r|   ©ÚvalueÚindex)
Úslicer�   rÕ   ÚScalarÚscalarr|   Úas_pyr   rH   Úint64)Údatará   ÚstartÚendr¤   rž   Úresults          r[   râ   râ   ¡  sç   € ð> ÐØˆ?Ø—:‘:˜e S¨5¡[Ó1‰Dà—:‘:˜eÓ$‰DØ	ˆØ�z‰z˜!˜SÓ!ˆä�eœRŸY™YÔ'Ü—	‘	˜% d§i¡iÔ0‰Ø	�‰�e—j‘jÒ	 Ü—	‘	˜%Ÿ+™+›-¨d¯i©iÔ8ˆÜ Ô'€GÜ˜7 T F¨G°[ÓA€FØÐ˜VŸ\™\›^¨qÒ0Ü—‘˜6Ÿ<™<›>¨EÑ1¼¿¹»
ÔCˆØ€Mr]   T)Úboundscheckr¤   c                ó:   — t        |¬«      }t        d| |g||«      S )a–  
    Select values (or records) from array- or table-like data given integer
    selection indices.

    The result will be of the same type(s) as the input, with elements taken
    from the input array (or record batch / table fields) at the given
    indices. If an index is null then the corresponding value in the output
    will be null.

    Parameters
    ----------
    data : Array, ChunkedArray, RecordBatch, or Table
    indices : Array, ChunkedArray
        Must be of integer type
    boundscheck : boolean, default True
        Whether to boundscheck the indices. If False and there is an out of
        bounds index, will likely cause the process to crash.
    memory_pool : MemoryPool, optional
        If not passed, will allocate memory from the default memory pool.

    Returns
    -------
    result : depends on inputs
        Selected values for the given indices

    Examples
    --------
    >>> import pyarrow as pa
    >>> arr = pa.array(["a", "b", "c", None, "e", "f"])
    >>> indices = pa.array([0, None, 4, 3])
    >>> arr.take(indices)
    <pyarrow.lib.StringArray object at ...>
    [
      "a",
      null,
      "e",
      null
    ]
    )rì   Útake)r@   rH   )rè   Úindicesrì   r¤   rž   s        r[   rî   rî   Ó  s$   € ôP  kÔ2€GÜ˜ $¨ °'¸;ÓGÐGr]   c                 ód  — t        |t        j                  t        j                  t        j                  f«      s"t        j
                  || j                  ¬«      }nH| j                  |j                  k7  r/t        j
                  |j                  «       | j                  ¬«      }t        d| |g«      S )ae  Replace each null element in values with a corresponding
    element from fill_value.

    If fill_value is scalar-like, then every null element in values
    will be replaced with fill_value. If fill_value is array-like,
    then the i-th element in values will be replaced with the i-th
    element in fill_value.

    The fill_value's type must be the same as that of values, or it
    must be able to be implicitly casted to the array's type.

    This is an alias for :func:`coalesce`.

    Parameters
    ----------
    values : Array, ChunkedArray, or Scalar-like object
        Each null element is replaced with the corresponding value
        from fill_value.
    fill_value : Array, ChunkedArray, or Scalar-like object
        If not same type as values, will attempt to cast.

    Returns
    -------
    result : depends on inputs
        Values with all null elements replaced

    Examples
    --------
    >>> import pyarrow as pa
    >>> arr = pa.array([1, 2, None, 3], type=pa.int8())
    >>> fill_value = pa.scalar(5, type=pa.int8())
    >>> arr.fill_null(fill_value)
    <pyarrow.lib.Int8Array object at ...>
    [
      1,
      2,
      5,
      3
    ]
    >>> arr = pa.array([1, 2, None, 4, None])
    >>> arr.fill_null(pa.array([10, 20, 30, 40, 50]))
    <pyarrow.lib.Int64Array object at ...>
    [
      1,
      2,
      30,
      4,
      50
    ]
    rß   Úcoalesce)	r�   rÕ   ÚArrayÚChunkedArrayrä   rå   r|   ræ   rH   )r„   Ú
fill_values     r[   Ú	fill_nullrõ   ÿ  su   € ôf �j¤2§8¡8¬R¯_©_¼b¿i¹iÐ"HÔIÜ—Y‘Y˜z°·±Ô<‰
Ø	�‰˜
Ÿ™Ò	'Ü—Y‘Y˜z×/Ñ/Ó1¸¿¹ÔDˆ
ä˜ f¨jÐ%9Ó:Ð:r]   c                ó  — |€g }t        | t        j                  t        j                  f«      r|j	                  d«       n!t        ||«      D ��cg c]
  \  }}|d|f‘Œ }}}t        ||«      }t        d| g||«      S c c}}w )ag  
    Select the indices of the top-k ordered elements from array- or table-like
    data.

    This is a specialization for :func:`select_k_unstable`. Output is not
    guaranteed to be stable.

    Parameters
    ----------
    values : Array, ChunkedArray, RecordBatch, or Table
        Data to sort and get top indices from.
    k : int
        The number of `k` elements to keep.
    sort_keys : List-like
        Column key names to order by when input is table-like data.
    null_placements : A list of "at_start" or "at_end"
        Whether nulls and NaNs are placed at the start or at the end.
        Accepted values are "at_end", "at_start".
    memory_pool : MemoryPool, optional
        If not passed, will allocate memory from the default memory pool.

    Returns
    -------
    result : Array
        Indices of the top-k ordered elements

    Examples
    --------
    >>> import pyarrow as pa
    >>> import pyarrow.compute as pc
    >>> arr = pa.array(["a", "b", "c", None, "e", "f"])
    >>> pc.top_k_unstable(arr, k=3)
    <pyarrow.lib.UInt64Array object at ...>
    [
      5,
      4,
      2
    ]
    )ÚdummyÚ
descendingÚat_endrø   Úselect_k_unstable©r�   rÕ   rò   ró   rw   Úzipr6   rH   ©r„   ÚkÚ	sort_keysÚnull_placementsr¤   Úsort_keyÚnull_placementrž   s           r[   Útop_k_unstabler  :  s“   € ðR ÐØˆ	Ü�&œ2Ÿ8™8¤R§_¡_Ð5Ô6Ø×ÑÐ:Õ;ô 69¸ÀOÔ5TôVÙ5TÑ1˜ >ð  ¨nÒ=Ø5Tð 	ñ Vä˜Q 	Ó*€GÜÐ,¨v¨h¸ÀÓMÐMùóVó   ÁA=c                ó  — |€g }t        | t        j                  t        j                  f«      r|j	                  d«       n!t        ||«      D ��cg c]
  \  }}|d|f‘Œ }}}t        ||«      }t        d| g||«      S c c}}w )a~  
    Select the indices of the bottom-k ordered elements from
    array- or table-like data.

    This is a specialization for :func:`select_k_unstable`. Output is not
    guaranteed to be stable.

    Parameters
    ----------
    values : Array, ChunkedArray, RecordBatch, or Table
        Data to sort and get bottom indices from.
    k : int
        The number of `k` elements to keep.
    sort_keys : List-like
        Column key names to order by when input is table-like data.
    null_placements : A list of "at_start" or "at_end"
        Whether nulls and NaNs are placed at the start or at the end.
        Accepted values are "at_end", "at_start".
    memory_pool : MemoryPool, optional
        If not passed, will allocate memory from the default memory pool.

    Returns
    -------
    result : Array of indices
        Indices of the bottom-k ordered elements

    Examples
    --------
    >>> import pyarrow as pa
    >>> import pyarrow.compute as pc
    >>> arr = pa.array(["a", "b", "c", None, "e", "f"])
    >>> pc.bottom_k_unstable(arr, k=3)
    <pyarrow.lib.UInt64Array object at ...>
    [
      0,
      1,
      2
    ]
    )r÷   Ú	ascendingrù   r  rú   rû   rý   s           r[   Úbottom_k_unstabler  n  s•   € ðR ÐØˆ	Ü�&œ2Ÿ8™8¤R§_¡_Ð5Ô6Ø×ÑÐ9Õ:ô 69¸ÀOÔ5TôVÙ5TÑ1˜ >ð  ¨^Ò<Ø5Tð 	ñ Vô ˜Q 	Ó*€GÜÐ,¨v¨h¸ÀÓMÐMùó	Vr  Úsystem)Úinitializerrž   r¤   c                ó:   — t        |¬«      }t        dg ||| ¬«      S )aB  
    Generate numbers in the range [0, 1).

    Generated values are uniformly-distributed, double-precision
    in range [0, 1). Algorithm and seed can be changed via RandomOptions.

    Parameters
    ----------
    n : int
        Number of values to generate, must be greater than or equal to 0
    initializer : int or str
        How to initialize the underlying random generator.
        If an integer is given, it is used as a seed.
        If "system" is given, the random generator is initialized with
        a system-specific source of (hopefully true) randomness.
        Other values are invalid.
    options : pyarrow.compute.RandomOptions, optional
        Alternative way of passing options.
    memory_pool : pyarrow.MemoryPool, optional
        If not passed, will allocate memory from the default memory pool.
    )r	  Úrandom)Úlength)r+   rH   )Únr	  rž   r¤   s       r[   r  r  £  s!   € ô, ¨Ô4€GÜ˜ 2 w°ÀAÔFÐFr]   c                  ó8  — t        | «      }|dk(  rvt        | d   t        t        f«      rt	        j
                  | d   «      S t        | d   t        «      rt	        j                  | d   «      S t        dt        | d   «      › �«      ‚t	        j                  | «      S )a  Reference a column of the dataset.

    Stores only the field's name. Type and other information is known only when
    the expression is bound to a dataset having an explicit scheme.

    Nested references are allowed by passing multiple names or a tuple of
    names. For example ``('foo', 'bar')`` references the field named "bar"
    inside the field named "foo".

    Parameters
    ----------
    *name_or_index : string, multiple strings, tuple or int
        The name or index of the (possibly nested) field the expression
        references to.

    Returns
    -------
    field_expr : Expression
        Reference to the given field

    Examples
    --------
    >>> import pyarrow.compute as pc
    >>> pc.field("a")
    <pyarrow.compute.Expression a>
    >>> pc.field(1)
    <pyarrow.compute.Expression FieldPath(1)>
    >>> pc.field(("a", "b"))
    <pyarrow.compute.Expression FieldRef.Nested(FieldRef.Name(a) ...
    >>> pc.field("a", "b")
    <pyarrow.compute.Expression FieldRef.Nested(FieldRef.Name(a) ...
    rk   r   zCfield reference should be str, multiple str, tuple or integer, got )
rª   r�   ÚstrÚintrR   Ú_fieldÚtupleÚ_nested_fieldrœ   r|   )Úname_or_indexr  s     r[   Úfieldr  ½  sž   € ôB 	ˆMÓ€AØˆA‚vÜ�m AÑ&¬¬c¨
Ô3Ü×$Ñ$ ]°1Ñ%5Ó6Ð6Ü˜ aÑ(¬%Ô0Ü×+Ñ+¨M¸!Ñ,<Ó=Ð=äð Ü $ ]°1Ñ%5Ó 6Ð7ð9óð ô ×'Ñ'¨Ó6Ð6r]   c                 ó,   — t        j                  | «      S )a‡  Expression representing a scalar value.

    Creates an Expression object representing a scalar value that can be used
    in compute expressions and predicates.

    Parameters
    ----------
    value : bool, int, float or string
        Python value of the scalar. This function accepts any value that can be
        converted to a ``pyarrow.Scalar`` using ``pa.scalar()``.

    Notes
    -----
    This function differs from ``pyarrow.scalar()`` in the following way:

    * ``pyarrow.scalar()`` creates a ``pyarrow.Scalar`` object that represents
      a single value in Arrow's memory model.
    * ``pyarrow.compute.scalar()`` creates an ``Expression`` object representing
      a scalar value that can be used in compute expressions, predicates, and
      dataset filtering operations.

    Returns
    -------
    scalar_expr : Expression
        An Expression representing the scalar value
    )rR   Ú_scalarrà   s    r[   rå   rå   î  s   € ô6 ×Ñ˜eÓ$Ð$r]   )NNNN)NN)rÚpyarrow._computer   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   ÚcollectionsrS   r�   ÚtextwraprT   r~   ÚpyarrowrÕ   rU   Úpyarrow.vendoredrV   r\   r^   rf   r”   r™   r¡   r±   r¼   rÅ   rÐ   r–   Ú
utf8_zfillrÑ   rÓ   râ   rî   rõ   r  r  r  r  rå   r›   r]   r[   Ú<module>r     sa  ð÷$U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ Uó Uõn #Û Ý Û ã Ý 'Ý &òñ Ð0°+Ó>Ð ò/òPòf	òò(ò>%ò.Jò ;ñ: Ô á%›iÐ(8Ñ9Ð 9€
ˆ^óB>ðJ/¸Dô /ðd (,¸ô )HòX8;ðx 48ð1NØHLô1Nðj 48ð2NØHLô2Nðj &¨tÀô Gò4.7ób%r]   