§
    {ØjÜ~  ã                  óP  — U d dl mZ d dlmZmZmZmZ d dlmZm	Z	m
Z
mZmZmZ d dlZd dlmZ d dlmZ d dlmZmZmZmZmZmZmZmZ d dlmZ d dl m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( d d	l)m*Z* d d
l+m,Z, er›d dlm-Z- d dl.m/Z/ d dl0m1Z1 d dl2m3Z3 d dlm4Z4 d dl5Z6d dl7Z8d dl9m:Z:m;Z; d dl<m=Z= d dl>m?Z? d dl@mAZA d dlBmCZCmDZDmEZE d dlFmGZGmHZH d dlImJZJ d dlKmLZL d dlMmNZNmOZO d dl mPZPmQZQ d dlRmSZS d dlTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_ ed         Z`dead<   dZbd ead!<    G d"„ d#ed$         ¦  «        ZcdS )%é    )Úannotations)Ú
CollectionÚIteratorÚMappingÚSequence)ÚTYPE_CHECKINGÚAnyÚFinalÚLiteralÚcastÚoverloadN)ÚArrowSeries)ÚarangeÚchunked_arrayÚconcat_tablesÚnarwhals_to_native_dtypeÚnative_to_narwhals_dtypeÚrepeatÚsort_indicesÚsortable_table)ÚEagerDataFrame)ÚImplementationÚcheck_column_names_are_uniqueÚconvert_str_slice_to_int_sliceÚgenerate_temporary_column_nameÚnot_implementedÚparse_columns_to_dropÚscale_bytesÚsupports_arrow_c_stream)Úis_numpy_array_1d)Ú
ShapeError)ÚIterable)ÚBytesIO)ÚPath)Ú
ModuleType)Ú	TypeAlias)ÚSelfÚTypeIs)Ú	ArrowExpr©ÚArrowGroupBy©ÚArrowNamespace)ÚChunkedArrayAnyÚNullPlacementÚOrder)ÚCompliantDataFrameAnyÚCompliantLazyFrameAny)ÚSparkSession)ÚIntoArrowTable)Ú_EagerAllowedImplÚ_LazyAllowedImpl)ÚVersionÚ_LimitedContext)ÚDType)Ú	IntoDTypeÚ
IntoSchemaÚJoinStrategyÚSizedMultiIndexSelectorÚSizedMultiNameSelectorÚSizeUnitÚUniqueKeepStrategyÚ_1DArrayÚ_2DArrayÚ_SliceIndexÚ
_SliceName)ú	left semiz
right semiú	left antiz
right antiÚinnerú
left outerzright outerú
full outerr&   ÚJoinTypeFr
   ÚMYPYc                  ó¼  — e Zd Zej        ZddœdÇd„ZedÈd„¦   «         ZedÉd„¦   «         Z	edÊd„¦   «         Z
edËd„¦   «         ZedÌd„¦   «         ZedÍd „¦   «         ZdÎd"„ZdÏd$„ZdÐd%„ZdÐd&„ZdÑd'„Zd(d)œdÒd+„ZedÓd-„¦   «         ZdÔd/„ZdÕd2„ZedÖd6„¦   «         Zed×d9„¦   «         ZedØd;„¦   «         ZdØd<„ZdÙd>„ZeZdÚdA„ZdÛdE„ZdÜdJ„ZdÝdM„Z dÞdO„Z!dßdR„Z"dàdS„Z#dádT„Z$dâdV„Z%edãdX„¦   «         Z&dãdY„Z'däd]„Z( e)¦   «         Z*edåd_„¦   «         Z+dæda„Z,dçdd„Z-dèdg„Z.dçdh„Z/dédm„Z0dêdt„Z1 e)¦   «         Z2dëdw„Z3dìdy„Z4díd~„Z5dîd‚„Z6dïd„„Z7dðd†„Z8dñd‡dˆœdÜd‰„Z9edòdŒ„¦   «         Z:edódŽ„¦   «         Z:dôd�„Z:dõd’„Z;död”„Z<d÷d–„Z=d÷d—„Z>	 dñd‡d˜œdødž„Z?dùd¢„Z@dÐd£„ZAdúd¨„ZBdûd«„ZCdüd®„ZDdýd±„ZEedþd²„¦   «         ZFedýd³„¦   «         ZFdÿd¶„ZF�d d·„ZGd‡d¸œ�dd¼„ZH�dd¾„ZI�dd¿„ZJ�ddÂ„ZK�ddÆ„ZL e)¦   «         ZMd‡S (  ÚArrowDataFrameF)Úvalidate_backend_versionÚnative_dataframeúpa.TableÚversionr7   Úvalidate_column_namesÚboolrN   ÚreturnÚNonec               óz   — |rt          |j        ¦  «         |r|                      ¦   «          || _        || _        d S ©N)r   Úcolumn_namesÚ_validate_backend_versionÚ_native_frameÚ_version)ÚselfrO   rQ   rR   rN   s        úŽ/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/narwhals/_arrow/dataframe.pyÚ__init__zArrowDataFrame.__init__X   sL   € ð !ð 	IÝ)Ð*:Ô*GÑHÔHÐHØ#ð 	-Ø×*Ò*Ñ,Ô,Ð,Ø-ˆÔØˆŒˆˆó    Údatar4   Úcontextr8   r'   c              ó¬  — |j                              ¦   «         }|                      |¦  «        r|}n�|dk    st          |t          ¦  «        rt          j        |¦  «        }n]t          |¦  «        r'dt          |¦  «        j	        ›d�}t          |¦  «        ‚dt          |¦  «        j	        ›d�}t          |¦  «        ‚|                      ||¬¦  «        S )N©é   zB'pyarrow>=14.0.0' is required for `from_arrow` for object of type ú.z1`from_arrow` is not supported for object of type ©ra   )Ú_implementationÚ_backend_versionÚ
_is_nativeÚ
isinstancer   ÚpaÚtabler   ÚtypeÚ__name__ÚModuleNotFoundErrorÚ	TypeErrorÚfrom_native)Úclsr`   ra   Úbackend_versionÚnativeÚmsgs         r]   Ú
from_arrowzArrowDataFrame.from_arrowg   sÐ   € à!Ô1×BÒBÑDÔDˆØ�>Š>˜$ÑÔð 		!ØˆFˆFØ Ò%Ð%­°D½*Ñ)EÔ)EÐ%Ý”X˜d‘^”^ˆFˆFÝ$ TÑ*Ô*ð 	!ØoÕW[Ð\`ÑWaÔWaÔWjÐoÐoÐoˆCÝ% cÑ*Ô*Ð*à^ÅdÈ4ÁjÄjÔFYÐ^Ð^Ð^ˆCÝ˜C‘.”.Ð Ø�Š˜v¨wˆÑ7Ô7Ð7r_   úMapping[str, Any]Úschemaú%Mapping[str, IntoDType | None] | Nonec              ó  ‡‡	— |s+‰s)|                       t          j        i ¦  «        |¬¦  «        S |s)|                       t          j        ‰¦  «        |¬¦  «        S t          d„ |                     ¦   «         D ¦   «         ¦  «        s‚ddlm}  |t          d|¦  «        ¦  «                             ¦   «         }|r‰s| 	                    ¦   «         }n!t          j
                             ‰|¬¦  «        }|                       ||¬¦  «        S |j                             ¦   «         dk     rd}t          |¦  «        ‚|j        Š	ˆˆ	fd	„|                     ¦   «         D ¦   «         }|                       t          j        |¦  «        |¬¦  «        S )
Nrf   c              3  ó   K  — | ]}|d u V — Œ	d S rW   © ©Ú.0Údtypes     r]   ú	<genexpr>z+ArrowDataFrame.from_dict.<locals>.<genexpr>ƒ   s&   è è € Ð>Ð> U�5˜D�=Ð>Ð>Ð>Ð>Ð>Ð>r_   r   ©ÚSchemar;   ©rx   rc   z8Passing `None` dtype in `from_dict` requires PyArrow>=14c           
     ót   •— i | ]4\  }}|t          ‰r‰|         ng g|�t          |‰¬¦  «        nd ¦  «        “Œ5S )N©rQ   )r   r   )r~   ÚnameÚnw_dtyper`   rQ   s      €€r]   ú
<dictcomp>z,ArrowDataFrame.from_dict.<locals>.<dictcomp>‘   sl   ø€ ð %
ð %
ð %
ñ ��hð •-Ø#Ð+��d”�¨Ð,àÐ'õ )¨¸7ÐCÑCÔCÐCàñ	ô ð%
ð %
ð %
r_   )rq   rk   rl   ÚanyÚvaluesÚnarwhals.schemar‚   r   Úto_arrowÚempty_tableÚTableÚfrom_pydictrg   rh   ÚNotImplementedErrorr[   Úitems)
rr   r`   ra   rx   r‚   Ú	pa_schemart   ru   ÚarraysrQ   s
    `       @r]   Ú	from_dictzArrowDataFrame.from_dictv   sœ  øø€ ð ð 	B˜dð 	BØ—?’?¥2¤8¨B¡<¤<¸�?ÑAÔAÐAØð 	DØ—?’?¥2¤8¨D¡>¤>¸7�?ÑCÔCÐCÝÐ>Ð>¨f¯mªm©o¬oÐ>Ñ>Ô>Ñ>Ô>ð 	<Ø.Ð.Ð.Ð.Ð.Ð.à˜�t L°&Ñ9Ô9Ñ:Ô:×CÒCÑEÔEˆIØð F ð FØ"×.Ò.Ñ0Ô0��åœ×-Ò-¨d¸9Ð-ÑEÔE�Ø—?’? 6°7�?Ñ;Ô;Ð;ØÔ"×3Ò3Ñ5Ô5¸Ò=Ð=ØLˆCÝ% cÑ*Ô*Ð*ØÔ"ˆð%
ð %
ð %
ð %
ð %
ð #)§,¢,¡.¤.ð%
ñ %
ô %
ˆð �Š�rœx¨Ñ/Ô/¸ˆÑAÔAÐAr_   úSequence[Mapping[str, Any]]c              óŠ  — ddl m} |r<t          d„ |                     ¦   «         D ¦   «         ¦  «        rd}t	          |¦  «        ‚|�+ |t          d|¦  «        ¦  «                             ¦   «         n|}|r|s|                     ¦   «         }n!t          j	         
                    ||¬¦  «        }|                      ||¬¦  «        S )Nr   r�   c              3  ó   K  — | ]}|d u V — Œ	d S rW   r|   r}   s     r]   r€   z,ArrowDataFrame.from_dicts.<locals>.<genexpr>§   s&   è è € ÐEÐE¨E˜% 4˜-ÐEÐEÐEÐEÐEÐEr_   zR`from_dicts` with `schema` where any dtype is `None` is not supported for PyArrow.r;   rƒ   rf   )r‹   r‚   r‰   rŠ   r�   r   rŒ   r�   rk   rŽ   Úfrom_pylistrq   )rr   r`   ra   rx   r‚   ru   r’   rt   s           r]   Ú
from_dictszArrowDataFrame.from_dictsœ   så   € ð 	+Ð*Ð*Ð*Ð*Ð*àð 	+•cÐEÐE°V·]²]±_´_ÐEÑEÔEÑEÔEð 	+ØfˆCÝ% cÑ*Ô*Ð*ð Ð!ð ˆF•4˜ fÑ-Ô-Ñ.Ô.×7Ò7Ñ9Ô9Ð9àð 	ð
 ð 	B˜Tð 	BØ×*Ò*Ñ,Ô,ˆFˆFå”X×)Ò)¨$°yÐ)ÑAÔAˆFØ�Š˜v¨wˆÑ7Ô7Ð7r_   Úobjúpa.Table | AnyúTypeIs[pa.Table]c                ó6   — t          | t          j        ¦  «        S rW   )rj   rk   rŽ   )rš   s    r]   ri   zArrowDataFrame._is_nativeµ   s   € å˜#�rœxÑ(Ô(Ð(r_   c              ó(   —  | ||j         d¬¦  «        S )NT©rQ   rR   )r[   )rr   r`   ra   s      r]   rq   zArrowDataFrame.from_native¹   s   € àˆs�4 Ô!1ÈÐNÑNÔNÐNr_   rB   ú.Mapping[str, IntoDType] | Sequence[str] | Nonec              ón  — ddl m} d„ |j        D ¦   «         }t          |t          |f¦  «        r=t
          j                             | ||¦  «                             ¦   «         ¬¦  «        }n4t
          j                             ||  	                    ||¦  «        ¦  «        }|  
                    ||¬¦  «        S )Nr   r�   c                ó6   — g | ]}t          j        |¦  «        ‘ŒS r|   )rk   Úarray)r~   Úvals     r]   ú
<listcomp>z-ArrowDataFrame.from_numpy.<locals>.<listcomp>È   s    € Ð2Ð2Ð2 C•"”(˜3‘-”-Ð2Ð2Ð2r_   rƒ   rf   )r‹   r‚   ÚTrj   r   rk   rŽ   Úfrom_arraysrŒ   Ú_numpy_column_namesrq   )rr   r`   ra   rx   r‚   r“   rt   s          r]   Ú
from_numpyzArrowDataFrame.from_numpy½   s±   € ð 	+Ð*Ð*Ð*Ð*Ð*à2Ð2¨4¬6Ð2Ñ2Ô2ˆÝ�f�w¨Ð/Ñ0Ô0ð 	YÝ”X×)Ò)¨&¸¸À¹¼×9PÒ9PÑ9RÔ9RÐ)ÑSÔSˆFˆFå”X×)Ò)¨&°#×2IÒ2IÈ$ÐPVÑ2WÔ2WÑXÔXˆFØ�Š˜v¨wˆÑ7Ô7Ð7r_   r-   c                ó0   — ddl m}  || j        ¬¦  «        S )Nr   r,   r…   )Únarwhals._arrow.namespacer-   r[   )r\   r-   s     r]   Ú__narwhals_namespace__z%ArrowDataFrame.__narwhals_namespace__Ï   s)   € Ø<Ð<Ð<Ð<Ð<Ð<àˆ~ d¤mÐ4Ñ4Ô4Ð4r_   r%   c                ó¦   — | j         t          j        u r| j                              ¦   «         S dt	          | j         ¦  «        › �}t          |¦  «        ‚)NzExpected pyarrow, got: )rg   r   ÚPYARROWÚto_native_namespacerm   ÚAssertionError)r\   ru   s     r]   Ú__native_namespace__z#ArrowDataFrame.__native_namespace__Ô   sN   € ØÔ¥>Ô#9Ð9Ð9ØÔ'×;Ò;Ñ=Ô=Ð=àD­¨TÔ-AÑ(BÔ(BÐDÐDˆÝ˜SÑ!Ô!Ð!r_   c                ó   — | S rW   r|   ©r\   s    r]   Ú__narwhals_dataframe__z%ArrowDataFrame.__narwhals_dataframe__Û   ó   € Øˆr_   c                ó   — | S rW   r|   r³   s    r]   Ú__narwhals_lazyframe__z%ArrowDataFrame.__narwhals_lazyframe__Þ   rµ   r_   c                ó<   — |                       | j        |d¬¦  «        S )NFrŸ   )Ú	__class__rt   )r\   rQ   s     r]   Ú_with_versionzArrowDataFrame._with_versioná   s   € Ø�~Š~˜dœk°7ÐRWˆ~ÑXÔXÐXr_   T©rR   Údfc               ó<   — |                       || j        |¬¦  «        S )NrŸ   )r¹   r[   )r\   r¼   rR   s      r]   Ú_with_nativezArrowDataFrame._with_nativeä   s'   € Ø�~Š~Ø˜œÐ=Rð ñ 
ô 
ð 	
r_   útuple[int, int]c                ó   — | j         j        S rW   )rt   Úshaper³   s    r]   rÁ   zArrowDataFrame.shapeé   s   € àŒ{Ô Ð r_   Úintc                ó*   — t          | j        ¦  «        S rW   )Úlenrt   r³   s    r]   Ú__len__zArrowDataFrame.__len__í   s   € Ý�4”;ÑÔÐr_   Úindexútuple[Any, ...]c                ó¦   — t          | j                             |g¦  «                             ¦   «         d                              ¦   «         ¦  «        S ©Nr   )Útuplert   ÚtakeÚ	to_pylistrŠ   )r\   rÆ   s     r]   ÚrowzArrowDataFrame.rowð   s?   € Ý�T”[×%Ò% u gÑ.Ô.×8Ò8Ñ:Ô:¸1Ô=×DÒDÑFÔFÑGÔGÐGr_   ÚnamedúLiteral[True]úlist[dict[str, Any]]c               ó   — d S rW   r|   ©r\   rÎ   s     r]   ÚrowszArrowDataFrame.rowsó   s   € ØEHÀSr_   úLiteral[False]úlist[tuple[Any, ...]]c               ó   — d S rW   r|   rÒ   s     r]   rÓ   zArrowDataFrame.rowsö   s   € ØGJÀsr_   ú,list[tuple[Any, ...]] | list[dict[str, Any]]c               ó   — d S rW   r|   rÒ   s     r]   rÓ   zArrowDataFrame.rowsù   s   € ØTWÐTWr_   c               ó€   — |s$t          |                      dd¬¦  «        ¦  «        S | j                             ¦   «         S )NFi   )rÎ   Úbuffer_size)ÚlistÚ	iter_rowsrt   rÌ   rÒ   s     r]   rÓ   zArrowDataFrame.rowsü   s=   € Øð 	FÝ˜Ÿš¨UÀ˜ÑDÔDÑEÔEÐEØŒ{×$Ò$Ñ&Ô&Ð&r_   úIterator[ArrowSeries]c              #  ó¤   K  — t          | j        | j                             ¦   «         d¬¦  «        D ]\  }}t	          j        || |¬¦  «        V — Œd S )NT©Ústrict©ra   r†   )ÚzipÚcolumnsrt   Úitercolumnsr   rq   )r\   r†   Úseriess      r]   Úiter_columnszArrowDataFrame.iter_columns  sh   è è € Ý ¤¨d¬k×.EÒ.EÑ.GÔ.GÐPTÐUÑUÔUð 	Kð 	K‰LˆD�&ÝÔ)¨&¸$ÀTÐJÑJÔJÐJÐJÐJÐJð	Kð 	Kr_   rÚ   ú4Iterator[tuple[Any, ...]] | Iterator[dict[str, Any]]c             #  óN  K  — | j         }|j        }|sYt          d||¦  «        D ]E}||||z   …                              ¦   «                              ¦   «         }t          |ddiŽE d {V —† ŒFd S t          d||¦  «        D ]'}||||z   …                              ¦   «         E d {V —† Œ(d S )Nr   rà   T)rt   Únum_rowsÚrangeÚ	to_pydictrŠ   râ   rÌ   )r\   rÎ   rÚ   r¼   ré   ÚirÓ   s          r]   rÜ   zArrowDataFrame.iter_rows  sò   è è € ð Œ[ˆØ”;ˆàð 	?Ý˜1˜h¨Ñ4Ô4ð 3ð 3�Ø˜!˜a +™oÐ-Ô.×8Ò8Ñ:Ô:×AÒAÑCÔC�Ý Ð2¨TÐ2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2ð3ð 3õ ˜1˜h¨Ñ4Ô4ð ?ð ?�Ø˜a ! k¡/Ð1Ô2×<Ò<Ñ>Ô>Ð>Ð>Ð>Ð>Ð>Ð>Ð>Ð>ð?ð ?r_   r†   Ústrr   c                ó²   — t          |t          ¦  «        s!dt          |¦  «        › �}t          |¦  «        ‚t	          j        | j        |         | |¬¦  «        S )NzExpected str, got: rá   )rj   rí   rm   rp   r   rq   rt   )r\   r†   ru   s      r]   Ú
get_columnzArrowDataFrame.get_column  sR   € Ý˜$¥Ñ$Ô$ð 	!Ø4­¨T©
¬
Ð4Ð4ˆCÝ˜C‘.”.Ð ÝÔ& t¤{°4Ô'8À$ÈTÐRÑRÔRÐRr_   r   r	   Úcopyúbool | Nonec               ó:   — | j                              ||¬¦  «        S )N©rð   )rt   Ú	__array__)r\   r   rð   s      r]   rô   zArrowDataFrame.__array__  s   € ØŒ{×$Ò$ U°Ð$Ñ6Ô6Ð6r_   rÓ   ú(SizedMultiIndexSelector[ChunkedArrayAny]c                ó<  — t          |¦  «        dk    r.|                      | j                             dd¦  «        ¦  «        S | j        dk     r$t          |t          ¦  «        rt          |¦  «        }|                      | j                             |¦  «        ¦  «        S )Nr   )é   )	rÄ   r¾   rt   Úslicerh   rj   rÊ   rÛ   rË   )r\   rÓ   s     r]   Ú_gatherzArrowDataFrame._gather  sƒ   € Ýˆt‰9Œ9˜Š>ˆ>Ø×$Ò$ T¤[×%6Ò%6°q¸!Ñ%<Ô%<Ñ=Ô=Ð=ØÔ  5Ò(Ð(­Z¸½eÑ-DÔ-DÐ(Ý˜‘:”:ˆDØ× Ò  ¤×!1Ò!1°$Ñ!7Ô!7Ñ8Ô8Ð8r_   ú_SliceIndex | rangec                ót  — |j         pd}|j        �|j        nt          | j        ¦  «        }|dk     rt          | j        ¦  «        |z   }|dk     rt          | j        ¦  «        |z   }|j        �|j        dk    rd}t          |¦  «        ‚|                      | j                             |||z
  ¦  «        ¦  «        S )Nr   é   z4Slicing with step is not supported on PyArrow tables)ÚstartÚstoprÄ   rt   Ústepr�   r¾   rø   )r\   rÓ   rý   rþ   ru   s        r]   Ú_gather_slicezArrowDataFrame._gather_slice%  s²   € Ø”
�˜aˆØ œIÐ1ˆtŒyˆyµs¸4¼;Ñ7GÔ7GˆØ�1Š9ˆ9Ý˜œÑ$Ô$ uÑ,ˆEØ�!Š8ˆ8Ý�t”{Ñ#Ô# dÑ*ˆDØŒ9Ð  T¤Y°!¢^ ^ØHˆCÝ% cÑ*Ô*Ð*Ø× Ò  ¤×!2Ò!2°5¸$À¹,Ñ!GÔ!GÑHÔHÐHr_   rã   rD   c                óª   — t          || j        ¦  «        \  }}}|                      | j                             | j        |||…         ¦  «        ¦  «        S rW   )r   rã   r¾   rt   Úselect)r\   rã   rý   rþ   rÿ   s        r]   Ú_select_slice_namez!ArrowDataFrame._select_slice_name1  sK   € Ý:¸7ÀDÄLÑQÔQÑˆˆt�TØ× Ò  ¤×!3Ò!3°D´LÀÀtÈDÀÔ4QÑ!RÔ!RÑSÔSÐSr_   c                ó–   — |                       | j                             | j        |j        |j        |j        …         ¦  «        ¦  «        S rW   )r¾   rt   r  rã   rý   rþ   rÿ   )r\   rã   s     r]   Ú_select_slice_indexz"ArrowDataFrame._select_slice_index5  sA   € Ø× Ò ØŒK×Ò˜tœ|¨G¬M¸G¼LÈ7Ì<Ð,WÔXÑYÔYñ
ô 
ð 	
r_   c                ó6  — t          |t          j        ¦  «        r#t          d|                     ¦   «         ¦  «        }n0t          |¦  «        r|                     ¦   «         }nt          r|}n|}|                      | j	         
                    |¦  «        ¦  «        S )NzSequence[int])rj   rk   ÚChunkedArrayr   rÌ   r    ÚtolistrK   r¾   rt   r  ©r\   rã   Úselectors      r]   Ú_select_multi_indexz"ArrowDataFrame._select_multi_index:  s�   € õ �g�rœÑ/Ô/ð 
	å˜O¨W×->Ò->Ñ-@Ô-@ÑAÔAˆHˆHõ ˜wÑ'Ô'ð 	Ø—~’~Ñ'Ô'ˆHˆHÝð 	ØˆHˆHàˆHØ× Ò  ¤×!3Ò!3°HÑ!=Ô!=Ñ>Ô>Ð>r_   ú'SizedMultiNameSelector[ChunkedArrayAny]c                óÚ   — t          |t          j        ¦  «        r#t          d|                     ¦   «         ¦  «        }n|}|                      | j                             |¦  «        ¦  «        S )NúSequence[str])rj   rk   r  r   rÌ   r¾   rt   r  r	  s      r]   Ú_select_multi_namez!ArrowDataFrame._select_multi_nameK  s^   € õ �g�rœÑ/Ô/ð 	å˜O¨W×->Ò->Ñ-@Ô-@ÑAÔAˆHˆHàˆHà× Ò  ¤×!3Ò!3°HÑ!=Ô!=Ñ>Ô>Ð>r_   údict[str, DType]c                ó4   ‡ — ˆ fd„‰ j         j        D ¦   «         S )Nc                óP   •— i | ]"}|j         t          |j        ‰j        ¦  «        “Œ#S r|   )r†   r   rm   r[   )r~   Úfieldr\   s     €r]   rˆ   z)ArrowDataFrame.schema.<locals>.<dictcomp>Y  s<   ø€ ð 
ð 
ð 
àð ŒJÕ0°´¸T¼]ÑKÔKð
ð 
ð 
r_   )rt   rx   r³   s   `r]   rx   zArrowDataFrame.schemaW  s3   ø€ ð
ð 
ð 
ð 
àœÔ+ð
ñ 
ô 
ð 	
r_   c                ó   — | j         S rW   rƒ   r³   s    r]   Úcollect_schemazArrowDataFrame.collect_schema^  ó
   € ØŒ{Ðr_   Úunitr?   úint | floatc                ó:   — | j         j        }t          ||¦  «        S rW   )rt   Únbytesr   )r\   r  Úszs      r]   Úestimated_sizezArrowDataFrame.estimated_sizea  s   € ØŒ[ÔˆÝ˜2˜tÑ$Ô$Ð$r_   ú	list[str]c                ó   — | j         j        S rW   )rt   rX   r³   s    r]   rã   zArrowDataFrame.columnsg  s   € àŒ{Ô'Ð'r_   rX   c                óz   — |                       | j                             t          |¦  «        ¦  «        d¬¦  «        S ©NFr»   )r¾   rt   r  rÛ   )r\   rX   s     r]   Úsimple_selectzArrowDataFrame.simple_selectk  s<   € Ø× Ò ØŒK×Ò�t LÑ1Ô1Ñ2Ô2È%ð !ñ 
ô 
ð 	
r_   Úexprsr)   c                óB  —  | j         |Ž }|s4|                      | j        j                             g ¦  «        d¬¦  «        S d„ |D ¦   «         }|d         j        } ||Ž }t          j                             d„ |D ¦   «         |¬¦  «        }|                      |d¬¦  «        S )NFr»   c                ó   — g | ]	}|j         ‘Œ
S r|   ©r†   ©r~   Úss     r]   r¥   z)ArrowDataFrame.select.<locals>.<listcomp>w  s   € Ð,Ð,Ð,˜A�”Ð,Ð,Ð,r_   r   c                ó   — g | ]	}|j         ‘Œ
S r|   ©rt   r&  s     r]   r¥   z)ArrowDataFrame.select.<locals>.<listcomp>z  s   € Ð">Ð">Ð">° 1¤8Ð">Ð">Ð">r_   )ÚnamesT)Ú_evaluate_exprsr¾   rt   r¹   r§   Ú_align_full_broadcastrk   rŽ   )r\   r"  Ú
new_seriesr*  ÚalignÚreshapedr¼   s          r]   r  zArrowDataFrame.selectp  s½   € Ø)�TÔ)¨5Ð1ˆ
Øð 	à×$Ò$Ø”Ô%×1Ò1°"Ñ5Ô5ÈUð %ñ ô ð ð -Ð, Ð,Ñ,Ô,ˆØ˜1”Ô3ˆØ�5˜*Ð%ˆÝŒX×!Ò!Ð">Ð">°XÐ">Ñ">Ô">ÀeÐ!ÑLÔLˆØ× Ò  ¸4Ð Ñ@Ô@Ð@r_   Úotherr.   c                ó   — t          | ¦  «        }|j        s4t          |¦  «        x}|k    rd|› d|› d�}t          |¦  «        ‚|j        S |j        d         }t	          j        t	          j        ||¦  «        g¦  «        S )NzExpected object of length z, got: re   r   )rÄ   Ú
_broadcastr!   rt   rk   r   r   )r\   r0  ÚlengthÚ	len_otherru   Úvalues         r]   Ú_extract_comparandz!ArrowDataFrame._extract_comparand}  s…   € Ý�T‘”ˆØÔð 	 Ý  ™ZœZÐ'�	¨FÒ2Ð2ØN°6ÐNÐNÀ)ÐNÐNÐN�Ý  ‘o”oÐ%Ø”<Ðà”˜Q”ˆÝÔ¥¤¨5°&Ñ!9Ô!9Ð :Ñ;Ô;Ð;r_   c                ó.  — | j         } | j        |Ž }| j        }|D ]d}|j        }|                      |¦  «        }||v r+|                     |                     |¦  «        ||¬¦  «        n|                     ||¬¦  «        }Œe|                      |d¬¦  «        S )N)ÚcolumnFr»   )	rt   r+  rã   r†   r6  Ú
set_columnrÆ   Úappend_columnr¾   )r\   r"  Únative_frameÚnew_columnsrã   Ú	col_valueÚcol_namer8  s           r]   Úwith_columnszArrowDataFrame.with_columnsˆ  s¹   € ð ”{ˆØ*�dÔ*¨EÐ2ˆØ”,ˆà$ð 	ð 	ˆIØ ”~ˆHØ×,Ò,¨YÑ7Ô7ˆFð ˜wÐ&Ð&ð ×'Ò'¨¯ª°hÑ(?Ô(?ÀÐRXÐ'ÑYÔYÐYà!×/Ò/°ÀÐ/ÑHÔHð ˆLð × Ò  ÀUÐ ÑKÔKÐKr_   Úkeysú#Sequence[str] | Sequence[ArrowExpr]Údrop_null_keysr+   c               ó*   — ddl m}  || ||¬¦  «        S )Nr   r*   )rB  )Únarwhals._arrow.group_byr+   )r\   r@  rB  r+   s       r]   Úgroup_byzArrowDataFrame.group_byš  s-   € ð 	:Ð9Ð9Ð9Ð9Ð9àˆ|˜D $°~ÐFÑFÔFÐFr_   Úhowr<   Úleft_onúSequence[str] | NoneÚright_onÚsuffixc          
     óØ  — ddddddœ}|dk    �r|                       ¦   «         }t          dg | j        ¢|j        ¢¬	¦  «        }|                      |                      |                     d
d ¦  «                             |¦  «                             ¦   «         ¦  «        j         	                    |                     |                     d
d ¦  «                             |¦  «                             ¦   «         ¦  «        j        ||d|¬¦  «         
                    |g¦  «        ¦  «        S |dk    }	|                      | j         	                    |j        |pg |||         ||	¬¦  «        ¦  «        S )NrF   rE   rG   rH   rI   )ÚantiÚsemirG   ÚleftÚfullÚcrossé   ©Ún_bytesrã   r   )r@  Ú
right_keysÚ	join_typeÚright_suffixrO  )r@  rT  rU  rV  Úcoalesce_keys)r¬   r   rã   r¾   r?  ÚlitÚaliasÚ	broadcastrt   ÚjoinÚdrop)
r\   r0  rF  rG  rI  rJ  Úhow_to_join_mapÚplxÚ	key_tokenrW  s
             r]   r[  zArrowDataFrame.join¡  s„  € ð  ØØØ Ø ð0
ð 0
ˆð �'Š>‰>Ø×-Ò-Ñ/Ô/ˆCÝ6ØÐ#B T¤\Ð#B°E´MÐ#Bðñ ô ˆIð ×$Ò$Ø×!Ò! #§'¢'¨!¨TÑ"2Ô"2×"8Ò"8¸Ñ"CÔ"C×"MÒ"MÑ"OÔ"OÑPÔPÜŸšØ×&Ò&ØŸš  4Ñ(Ô(×.Ò.¨yÑ9Ô9×CÒCÑEÔEñô äØ"Ø(Ø%Ø!'ð ñ ô ÷ ’�y�kÑ"Ô"ñô ð ð ˜všˆØ× Ò ØŒK×ÒØ”Ø�] Ø#Ø)¨#Ô.Ø#Ø+ð ñ ô ñ	
ô 	
ð 		
r_   r  rà   c               ó„   — t          | ||¬¦  «        }|                      | j                             |¦  «        d¬¦  «        S )Nrß   Fr»   )r   r¾   rt   r\  )r\   rã   rà   Úto_drops       r]   r\  zArrowDataFrame.dropÔ  s@   € Ý'¨¨g¸fÐEÑEÔEˆØ× Ò  ¤×!1Ò!1°'Ñ!:Ô!:ÐRWÐ ÑXÔXÐXr_   Úsubsetc                ó  — |€.|                       | j                             ¦   «         d¬¦  «        S |                      ¦   «         }|                      |j        |Ž                      ¦   «         d¬¦  «         }|                      |¦  «        S )NFr»   T)Úignore_nulls)r¾   rt   Ú	drop_nullr¬   Úany_horizontalÚcolÚis_nullÚfilter)r\   rb  r^  Úmasks       r]   Ú
drop_nullszArrowDataFrame.drop_nullsØ  s‚   € Øˆ>Ø×$Ò$ T¤[×%:Ò%:Ñ%<Ô%<ÐTYÐ$ÑZÔZÐZØ×)Ò)Ñ+Ô+ˆØ×"Ò" 7 3¤7¨FÐ#3×#;Ò#;Ñ#=Ô#=ÈDÐ"ÑQÔQÐQˆØ�{Š{˜4Ñ Ô Ð r_   ÚbyÚ
descendingúbool | Sequence[bool]Ú
nulls_lastc               óB  ‡— t          |t          ¦  «        r|rdndŠˆfd„|D ¦   «         }nd„ t          ||d¬¦  «        D ¦   «         }|rdnd}t          t	          | j        |¦  «        ||¦  «        }|                      | j                             |¦  «        d	¬
¦  «        S )Nrm  Ú	ascendingc                ó   •— g | ]}|‰f‘ŒS r|   r|   ©r~   ÚkeyÚorders     €r]   r¥   z'ArrowDataFrame.sort.<locals>.<listcomp>â  ó   ø€ Ð/KÐ/KÐ/KÀ°°e°Ð/KÐ/KÐ/Kr_   c                ó$   — g | ]\  }}||rd ndf‘ŒS )rm  rq  r|   )r~   rt  Úis_descendings      r]   r¥   z'ArrowDataFrame.sort.<locals>.<listcomp>ä  s:   € ð ð ð á&�C˜ð  mÐD�l�l¸ÐEðð ð r_   Trß   Úat_endÚat_startFr»   )rj   rS   râ   r   r   rt   r¾   rË   )r\   rm  ro  rl  ÚsortingÚnull_placementÚindicesru  s          @r]   ÚsortzArrowDataFrame.sortß  sÄ   ø€ Ý�j¥$Ñ'Ô'ð 	Ø+5ÐF˜<˜<¸;ˆEØ/KÐ/KÐ/KÐ/KÈÐ/KÑ/KÔ/KˆGˆGðð å*-¨b°*ÀTÐ*JÑ*JÔ*Jðñ ô ˆGð
 5?Ð(N¨¨ÀJˆõ �~¨d¬k¸2Ñ>Ô>ÀÈÑXÔXˆØ× Ò  ¤×!1Ò!1°'Ñ!:Ô!:ÐRWÐ ÑXÔXÐXr_   ÚkúIterable[str]Úreversec               ó\  ‡— t          |t          ¦  «        r|rdndŠˆfd„|D ¦   «         }nd„ t          ||d¬¦  «        D ¦   «         }d„ |D ¦   «         }t          | j        |¦  «        }t          j        |||¦  «        }|                      | j                             |¦  «        d¬	¦  «        S )
Nrq  rm  c                ó   •— g | ]}|‰f‘ŒS r|   r|   rs  s     €r]   r¥   z(ArrowDataFrame.top_k.<locals>.<listcomp>ò  rv  r_   c                ó$   — g | ]\  }}||rd ndf‘ŒS )rq  rm  r|   )r~   rt  Úis_ascendings      r]   r¥   z(ArrowDataFrame.top_k.<locals>.<listcomp>ô  s:   € ð ð ð á%�C˜ð  \ÐC�k�k°|ÐDðð ð r_   Trß   c                ó   — g | ]\  }}|‘ŒS r|   r|   )r~   r†   Ú_s      r]   r¥   z(ArrowDataFrame.top_k.<locals>.<listcomp>ø  s   € Ð,Ð,Ð,™˜˜q�Ð,Ð,Ð,r_   Fr»   )	rj   rS   râ   r   rt   ÚpcÚselect_k_unstabler¾   rË   )	r\   r  rl  r�  r{  r@  rl   r}  ru  s	           @r]   Útop_kzArrowDataFrame.top_kï  sÏ   ø€ Ý�g�tÑ$Ô$ð 	Ø*1ÐC˜;˜;°|ˆEØ/KÐ/KÐ/KÐ/KÈÐ/KÑ/KÔ/KˆGˆGðð å),¨R°ÀÐ)FÑ)FÔ)Fðñ ô ˆGð -Ð, GÐ,Ñ,Ô,ˆÝ˜tœ{¨DÑ1Ô1ˆÝÔ& u¨a°Ñ9Ô9ˆØ× Ò  ¤×!1Ò!1°'Ñ!:Ô!:ÐRWÐ ÑXÔXÐXr_   úpd.DataFramec                ó4   — | j                              ¦   «         S rW   )rt   Ú	to_pandasr³   s    r]   r�  zArrowDataFrame.to_pandasý  s   € ØŒ{×$Ò$Ñ&Ô&Ð&r_   úpl.DataFramec                ó4   — dd l } |j        | j        ¦  «        S rÉ   )Úpolarsrv   rt   )r\   Úpls     r]   Ú	to_polarszArrowDataFrame.to_polars   s"   € ØÐÐÐàˆrŒ}˜Tœ[Ñ)Ô)Ð)r_   Nró   c               ó`   — dd l }|                     d„ | j        j        D ¦   «         ¦  «        }|S )Nr   c                ó6   — g | ]}|                      ¦   «         ‘ŒS r|   )Úto_numpy)r~   rg  s     r]   r¥   z+ArrowDataFrame.to_numpy.<locals>.<listcomp>  s    € Ð#RÐ#RÐ#R°s C§L¢L¡N¤NÐ#RÐ#RÐ#Rr_   )ÚnumpyÚcolumn_stackrt   rã   )r\   r   rð   ÚnpÚarrs        r]   r•  zArrowDataFrame.to_numpy  s8   € ØÐÐÐà—?’?Ð#RÐ#R¸d¼kÔ>QÐ#RÑ#RÔ#RÑSÔSˆØˆ
r_   Ú	as_seriesúdict[str, ArrowSeries]c               ó   — d S rW   r|   ©r\   rš  s     r]   Úto_dictzArrowDataFrame.to_dict  s   € ØNQÈcr_   údict[str, list[Any]]c               ó   — d S rW   r|   r�  s     r]   rž  zArrowDataFrame.to_dict  s   € ØMPÈSr_   ú-dict[str, ArrowSeries] | dict[str, list[Any]]c               ó^   — |                       ¦   «         }|rd„ |D ¦   «         S d„ |D ¦   «         S )Nc                ó   — i | ]
}|j         |“ŒS r|   r%  ©r~   Úsers     r]   rˆ   z*ArrowDataFrame.to_dict.<locals>.<dictcomp>  s   € Ð0Ð0Ð0 c�C”H˜cÐ0Ð0Ð0r_   c                óB   — i | ]}|j         |                     ¦   «         “ŒS r|   )r†   Úto_listr¤  s     r]   rˆ   z*ArrowDataFrame.to_dict.<locals>.<dictcomp>  s$   € Ð6Ð6Ð6¨C�”˜#Ÿ+š+™-œ-Ð6Ð6Ð6r_   )ræ   )r\   rš  Úits      r]   rž  zArrowDataFrame.to_dict  sE   € ð ×ÒÑ Ô ˆØð 	1Ø0Ð0¨RÐ0Ñ0Ô0Ð0Ø6Ð6°2Ð6Ñ6Ô6Ð6r_   Úorder_byc                óº  — |                       ¦   «         }t          dt          | ¦  «        d¦  «        }|€]|j                             |j                             || |¬¦  «        ¦  «        }|                      ||                     ¦   «         ¦  «        S d„ |D ¦   «         }t          t          | j        |¦  «        |d¦  «        }| j        dk     r(|                     t          j	        |¦  «        ¦  «        }n9t          j        ||                     t#          j        ¦   «         ¦  «        ¦  «        }|                      | j                             d||¦  «        ¦  «        S )Nr   rü   rá   c                ó   — g | ]}|d f‘ŒS )rq  r|   )r~   r†   s     r]   r¥   z1ArrowDataFrame.with_row_index.<locals>.<listcomp>!  s   € Ð+UÐ+UÐ+UÀD¨T°;Ð,?Ð+UÐ+UÐ+Ur_   rz  )é   )r¬   r   rÄ   Ú_exprÚ_from_seriesÚ_seriesÚfrom_iterabler  Úallr   r   rt   rh   rË   rˆ  Úscatterr   rk   Úint64r¾   Ú
add_column)	r\   r†   r©  r^  r`   Ú	row_indexr{  r}  Únew_cols	            r]   Úwith_row_indexzArrowDataFrame.with_row_index  s%  € Ø×)Ò)Ñ+Ô+ˆÝ�a�˜T™œ AÑ&Ô&ˆØÐØœ	×.Ò.Ø”×)Ò)¨$¸À4Ð)ÑHÔHñô ˆIð —;’;˜y¨#¯'ª'©)¬)Ñ4Ô4Ð4Ø+UÐ+UÈHÐ+UÑ+UÔ+UˆÝ�~¨d¬k¸8ÑDÔDÀgÈzÑZÔZˆØÔ  5Ò(Ð(Ø—i’i¥¤°Ñ 8Ô 8Ñ9Ô9ˆGˆGå”j  w§|¢|µB´H±J´JÑ'?Ô'?Ñ@Ô@ˆGØ× Ò  ¤×!7Ò!7¸¸4ÀÑ!IÔ!IÑJÔJÐJr_   Ú	predicatec                ó”   — |                       |¦  «        j        }|                      | j                             |¦  «        d¬¦  «        S r   )Ú_evaluate_single_output_exprrt   r¾   ri  )r\   r¸  Úmask_natives      r]   ri  zArrowDataFrame.filter)  sJ   € Ø×7Ò7¸	ÑBÔBÔIˆØ× Ò ØŒK×Ò˜{Ñ+Ô+À5ð !ñ 
ô 
ð 	
r_   Únc           
     óø   — | j         }|dk    r+|                      |                     d|¦  «        d¬¦  «        S |j        }|                      |                     dt	          d||z   ¦  «        ¦  «        d¬¦  «        S ©Nr   Fr»   )rt   r¾   rø   ré   Úmax©r\   r¼  r¼   ré   s       r]   ÚheadzArrowDataFrame.head/  s|   € ØŒ[ˆØ�Š6ˆ6Ø×$Ò$ R§X¢X¨a°¡^¤^È5Ð$ÑQÔQÐQØ”;ˆØ× Ò Ø�HŠH�Q�˜A˜x¨!™|Ñ,Ô,Ñ-Ô-ÀUð !ñ 
ô 
ð 	
r_   c           	     ó  — | j         }|dk    rB|j        }|                      |                     t	          d||z
  ¦  «        ¦  «        d¬¦  «        S |                      |                     t          |¦  «        ¦  «        d¬¦  «        S r¾  )rt   ré   r¾   rø   r¿  ÚabsrÀ  s       r]   ÚtailzArrowDataFrame.tail8  s‚   € ØŒ[ˆØ�Š6ˆ6Ø”{ˆHØ×$Ò$Ø—’�˜Q ¨1¡Ñ-Ô-Ñ.Ô.Àeð %ñ ô ð ð × Ò  §¢­#¨a©&¬&Ñ!1Ô!1ÈÐ ÑOÔOÐOr_   )ÚsessionÚbackendú_LazyAllowedImpl | NonerÅ  úSparkSession | Noner2   c               ó6  — |€| S |t           j        u r7dd l}ddlm} | j        } ||                     d¦  «        d| j        ¬¦  «        S |t           j        u rPdd l	}ddl
m}  |t          d |j        | j        ¦  «        ¦  «                             ¦   «         d| j        ¬¦  «        S |t           j        u rIdd lm} ddlm}	  |	|                     | j                             ¦   «         ¦  «        d| j        ¬¦  «        S |t           j        u r<dd l}
dd	lm}  ||
                     | j        | j        ¬
¦  «        d| j        ¬¦  «        S |                     ¦   «         r7ddlm} |€d}t?          |¦  «        ‚|                      | ||| j        ¬¦  «        S tB          ‚)Nr   )ÚDuckDBLazyFrameÚ_dfT©rN   rQ   )ÚPolarsLazyFramerŽ  )ÚDaskLazyFrame)ÚIbisLazyFrame)rã   )ÚSparkLikeLazyFramez5Spark like backends require `session` to be not None.)rÅ  ÚimplementationrQ   )"r   ÚDUCKDBÚduckdbÚnarwhals._duckdb.dataframerÊ  rt   rl   r[   ÚPOLARSr�  Únarwhals._polars.dataframerÍ  r   rv   ÚlazyÚDASKÚdask.dataframeÚ	dataframeÚnarwhals._dask.dataframerÎ  Úfrom_pandasr�  ÚIBISÚibisÚnarwhals._ibis.dataframerÏ  Úmemtablerã   Úis_spark_likeÚnarwhals._spark_like.dataframerÐ  Ú
ValueErrorÚ_from_compliant_dataframer°   )r\   rÆ  rÅ  rÓ  rÊ  rË  r‘  rÍ  ÚddrÎ  rÞ  rÏ  rÐ  ru   s                 r]   r×  zArrowDataFrame.lazyA  s&  € ð ˆ?ØˆKØ•nÔ+Ð+Ð+ØˆMˆMˆMàBÐBÐBÐBÐBÐBà”+ˆCØ"�?Ø—’˜UÑ#Ô#¸dÈDÌMðñ ô ð ð •nÔ+Ð+Ð+ØÐÐÐàBÐBÐBÐBÐBÐBà"�?Ý�^ ] R¤]°4´;Ñ%?Ô%?Ñ@Ô@×EÒEÑGÔGØ)-Øœðñ ô ð ð
 •nÔ)Ð)Ð)Ø'Ð'Ð'Ð'Ð'Ð'à>Ð>Ð>Ð>Ð>Ð>à �=Ø—’˜tœ{×4Ò4Ñ6Ô6Ñ7Ô7Ø)-Øœðñ ô ð ð
 •nÔ)Ð)Ð)ØˆKˆKˆKà>Ð>Ð>Ð>Ð>Ð>à �=Ø—’˜dœk°4´<�Ñ@Ô@Ø)-Øœðñ ô ð ð × Ò Ñ"Ô"ð 		ØIÐIÐIÐIÐIÐIàˆØM�Ý  ‘o”oÐ%à%×?Ò?Ø˜g°gÀtÄ}ð @ñ ô ð õ Ðr_   ú_EagerAllowedImpl | NoneÚkwargsr1   c                ó®  — |t           j        u s|€t          | j        | j        d¬¦  «        S |t           j        u r<ddlm}  || j                             ¦   «         t           j        d| j        d¬¦  «        S |t           j	        u r>dd l
}ddlm}  |t          d |j        | j        ¦  «        ¦  «        d| j        ¬	¦  «        S d
|› �}t          |¦  «        ‚)NFrŸ   r   )ÚPandasLikeDataFrameT)rÑ  rN   rQ   rR   )ÚPolarsDataFramerŽ  rÌ  zUnsupported `backend` value: )r   r®   rM   rt   r[   ÚPANDASÚnarwhals._pandas_like.dataframeré  r�  rÕ  r�  rÖ  rê  r   rv   r°   )r\   rÆ  rç  ré  r‘  rê  ru   s          r]   ÚcollectzArrowDataFrame.collect~  s  € ð •nÔ,Ð,Ð,°°Ý!Ø” T¤]È%ðñ ô ð ð •nÔ+Ð+Ð+ØKÐKÐKÐKÐKÐKà&Ð&Ø”×%Ò%Ñ'Ô'Ý-Ô4Ø)-ØœØ&+ðñ ô ð ð •nÔ+Ð+Ð+ØÐÐÐàBÐBÐBÐBÐBÐBà"�?Ý�^ ] R¤]°4´;Ñ%?Ô%?Ñ@Ô@Ø)-Øœðñ ô ð ð 8¨gÐ7Ð7ˆÝ˜SÑ!Ô!Ð!r_   c                ó:   — |                       | j        d¬¦  «        S r   ©r¾   rt   r³   s    r]   ÚclonezArrowDataFrame.cloneŸ  s   € Ø× Ò  ¤ÀEÐ ÑJÔJÐJr_   rÍ   ú
int | Noner8  úint | str | Nonec                ó\  — ddl m} |€A|€?| j        x}dk    rd|›�}t          |¦  «        ‚ || j        d         d         d¬¦  «        S |�|€d}t          |¦  «        ‚t          |t          ¦  «        r| j                             |¦  «        n|} || j        |         |         d¬¦  «        S )Nr   )Úmaybe_extract_py_scalar)rü   rü   zfcan only call `.item()` without "row" or "column" values if the DataFrame has a single element; shape=T)Úreturn_py_scalarz8cannot call `.item()` with only one of `row` or `column`)	Únarwhals._arrow.seriesrô  rÁ   rã  rt   rj   rí   rã   rÆ   )r\   rÍ   r8  rô  rÁ   ru   Ú_cols          r]   ÚitemzArrowDataFrame.item¢  sÞ   € ØBÐBÐBÐBÐBÐBàˆ;˜6˜>ØœÐ#�¨Ò.Ð.ðGØ=BðGð Gð õ ! ‘o”oÐ%Ø*Ð*¨4¬;°q¬>¸!Ô+<ÈtÐTÑTÔTÐTàˆ;˜&˜.ØLˆCÝ˜S‘/”/Ð!å-7¸ÅÑ-DÔ-DÐPˆtŒ|×!Ò! &Ñ)Ô)Ð)È&ˆØ&Ð& t¤{°4Ô'8¸Ô'=ÐPTÐUÑUÔUÐUr_   ÚmappingúMapping[str, str]c                ó¼   ‡— | j         dk    rt          d‰¦  «        }nˆfd„| j        D ¦   «         }|                      | j                             |¦  «        ¦  «        S )N)é   zdict[str, str]c                ó<   •— g | ]}‰                      ||¦  «        ‘ŒS r|   )Úget)r~   Úcrù  s     €r]   r¥   z)ArrowDataFrame.rename.<locals>.<listcomp>º  s'   ø€ Ð=Ð=Ð=¨1�W—[’[  AÑ&Ô&Ð=Ð=Ð=r_   )rh   r   rã   r¾   rt   Úrename_columns)r\   rù  r*  s    ` r]   ÚrenamezArrowDataFrame.renameµ  sb   ø€ àÔ  EÒ)Ð)ÝÐ)¨7Ñ3Ô3ˆEˆEà=Ð=Ð=Ð=°´Ð=Ñ=Ô=ˆEØ× Ò  ¤×!;Ò!;¸EÑ!BÔ!BÑCÔCÐCr_   ÚdtypesúMapping[str, IntoDType]c                ó6  — | j         }|j        }t          |¦  «        t          |j        ¦  «        }}|                     ¦   «         D ]r\  }}|                     |¦  «        }t          || j        ¦  «        }	t          j	        ||	||         j
        ¬¦  «        ||<   t          j        ||         |	¦  «        ||<   Œst          j                             |t          j        |¦  «        ¬¦  «        }
|                      |
                     |j        ¦  «        d¬¦  «        S )N)Únullablerƒ   Fr»   )rt   rx   rÛ   rã   r‘   Úget_field_indexr   r[   rk   r  r  rˆ  r   rŽ   r§   r¾   Úreplace_schema_metadataÚmetadata)r\   r  rt   rx   Úfieldsrã   r†   r   rÆ   Útarget_dtypeÚresults              r]   r   zArrowDataFrame.cast½  sÿ   € ð
 ”ˆØ”ˆÝ˜v™,œ,­¨V¬^Ñ(<Ô(<�ˆØ!Ÿ<š<™>œ>ð 	Cð 	C‰KˆD�%Ø×*Ò*¨4Ñ0Ô0ˆEÝ3°E¸4¼=ÑIÔIˆLÝœH T¨<À&ÈÄ-ÔBXÐYÑYÔYˆF�5‰MÝœW W¨U¤^°\ÑBÔBˆG�E‰NˆNÝ”×%Ò% gµb´iÀÑ6GÔ6GÐ%ÑHÔHˆØ× Ò Ø×*Ò*¨6¬?Ñ;Ô;ÐSXð !ñ 
ô 
ð 	
r_   Úfileústr | Path | BytesIOc                óH   — dd l m} |                     | j        |¦  «         d S rÉ   )Úpyarrow.parquetÚparquetÚwrite_tablert   )r\   r  Úpps      r]   Úwrite_parquetzArrowDataFrame.write_parquetÏ  s0   € Ø$Ð$Ð$Ð$Ð$Ð$à
�Š�t”{ DÑ)Ô)Ð)Ð)Ð)r_   c                ó   — d S rW   r|   ©r\   r  s     r]   Ú	write_csvzArrowDataFrame.write_csvÔ  s   € Ø,/¨Cr_   c                ó   — d S rW   r|   r  s     r]   r  zArrowDataFrame.write_csv×  s   € Ø=@¸Sr_   ústr | Path | BytesIO | Noneú
str | Nonec                ó  — dd l m} |€ft          j        ¦   «         }|                     | j        |¦  «         |                     ¦   «                              ¦   «                              ¦   «         S |                     | j        |¦  «         d S rÉ   )	Úpyarrow.csvÚcsvrk   ÚBufferOutputStreamr  rt   ÚgetvalueÚ
to_pybytesÚdecode)r\   r  Úpa_csvÚ
csv_buffers       r]   r  zArrowDataFrame.write_csvÚ  s†   € Ø$Ð$Ð$Ð$Ð$Ð$àˆ<ÝÔ.Ñ0Ô0ˆJØ×Ò˜Tœ[¨*Ñ5Ô5Ð5Ø×&Ò&Ñ(Ô(×3Ò3Ñ5Ô5×<Ò<Ñ>Ô>Ð>Ø×Ò˜œ dÑ+Ô+Ð+Øˆtr_   c                ó"  — dd l }t          d| j        ¬¦  «        }t          j        |                     t          | ¦  «        ¦  «        ¦  «        }| j                             ||¦  «         	                    | j        ¦  «         
                    |df|dfg¦  «        }t          j        t          j        t          j        |||› d�         ¦  «        t          j        |||› d�         ¦  «        ¦  «        g¦  «        }t          j        || ¬¦  «        S )	Nr   rQ  rR  Úminr¿  Ú_minÚ_maxrf   )r–  r   rã   rk   r£   r   rÄ   rt   r:  rE  Ú	aggregater   rˆ  Úand_Úis_inr   rq   )r\   r˜  Ú	col_tokenrµ  Úkeep_idxrt   s         r]   Ú	is_uniquezArrowDataFrame.is_uniqueä  s  € ØÐÐÐå2¸1ÀdÄlÐSÑSÔSˆ	Ý”H˜RŸYšY¥s¨4¡y¤yÑ1Ô1Ñ2Ô2ˆ	àŒK×%Ò% i°Ñ;Ô;ßŠX�d”lÑ#Ô#ßŠY˜ EÐ*¨Y¸Ð,>Ð?Ñ@Ô@ð 	õ
 Ô!å”Ý”H˜Y¨°IÐ1CÐ1CÐ1CÔ(DÑEÔEÝ”H˜Y¨°IÐ1CÐ1CÐ1CÔ(DÑEÔEñô ðñ
ô 
ˆõ Ô& v°tÐ<Ñ<Ô<Ð<r_   )Úmaintain_orderÚkeepr@   r-  c          
     ó.  — dd l }|r|                      |¦  «        x}r|‚t          |p| j        ¦  «        }|dv �rddlm} |j        |         }t          d| j        ¬¦  «        }	|r„|r‚t          dg | j        ¢|	‘¬¦  «        }
 |                      |
d ¬¦  «        j	        |dddœŽ 
                    ||dd ¬	¦  «        }| 	                    |
dd¬
¦  «                             |
gd¬¦  «        S |r | j	        |dddœŽj        }n| j        }|                     |	t          j        |                     t#          | ¦  «        ¦  «        ¦  «        ¦  «                             |¦  «                             |	|fg¦  «                             |	› d|› �¦  «        }|                      |                     |¦  «        d¬¦  «        S  | j        |Ž                      ¦   «         }|                      ¦   «         }|                      |j                             |¦  «        ¦  «        S )Nr   >   r‰   ÚlastÚfirstr*   rQ  rR  )r©  F)ro  rm  )rb  r.  r-  r©  )rm  ro  rß   r‡  r»   )r–  Ú_check_columns_existrÛ   rã   rD  r+   Ú_REMAP_UNIQUEr   r·  r~  Úuniquer\  rt   r:  rk   r£   r   rÄ   rE  r'  r8  r¾   rË   r!  r,  r¬   ri  r­  r®  )r\   rb  r.  r-  r©  r˜  Úerrorr+   Úagg_funcr*  Ú	idx_tokenr¼   rt   Úkeep_idx_nativer+  r^  s                   r]   r4  zArrowDataFrame.uniqueø  sg  € ð 	ÐÐÐàð 	 × 9Ò 9¸&Ñ AÔ AÐA�uð 	ØˆKÝ�fÐ, ¤Ñ-Ô-ˆàÐ+Ð+Ñ+Ø=Ð=Ð=Ð=Ð=Ð=à#Ô1°$Ô7ˆHÝ6¸qÈ$Ì,ÐWÑWÔWˆIØð ˜Nð Ý:ØÐ'A¨¬Ð'A°yÐ'Aðñ ô �	ð�D×'Ò'¨	¸DÐ'ÑAÔAÜ˜8°À%ðIð Ið Iç’V 6°ÀUÐUY�VÑZÔZð ð
 —w’w˜y°UÀu�wÑMÔM×RÒRØ�K¨ð Sñ ô ð ð ð %Ø"˜œ H¸È5ÐQÐQÐQÔX��àœ�à×$Ò$ Yµ´¸¿ºÅ3ÀtÁ9Ä9Ñ9MÔ9MÑ0NÔ0NÑOÔOß’˜&Ñ!Ô!ß’˜Y¨Ð1Ð2Ñ3Ô3ß’˜9Ð1Ð1 xÐ1Ð1Ñ2Ô2ð	 ð ×$Ò$Ø—’˜OÑ,Ô,ÀEð %ñ ô ð ð &�4Ô% vÐ.×8Ò8Ñ:Ô:ˆØ×)Ò)Ñ+Ô+ˆØ�{Š{˜3œ9×1Ò1°(Ñ;Ô;Ñ<Ô<Ð<r_   Úoffsetc                óL   — |                       | j        |d |…         d¬¦  «        S r   rï  )r\   r¼  r9  s      r]   Úgather_everyzArrowDataFrame.gather_every+  s(   € Ø× Ò  ¤¨V¨Y°Q¨YÔ!7ÈuÐ ÑUÔUÐUr_   c                ó   — | j         S rW   r)  r³   s    r]   rŒ   zArrowDataFrame.to_arrow.  r  r_   Úwith_replacementÚseedc          	     ó>  — dd l }|j                             |¬¦  «        }|                     |                     |¦  «        ||¬¦  «        }|                      | j                             t          j	        |t          j
        ¦   «         ¬¦  «        ¦  «        d¬¦  «        S )Nr   )r>  )ÚsizeÚreplace)rm   Fr»   )r–  ÚrandomÚdefault_rngÚchoicer   r¾   rt   rË   rk   r£   Úuint64)r\   r¼  r=  r>  r˜  Úrngr}  s          r]   ÚsamplezArrowDataFrame.sample1  s�   € ØÐÐÐàŒi×#Ò#¨Ð#Ñ.Ô.ˆØ—*’*˜RŸYšY q™\œ\°Ð;K�*ÑLÔLˆØ× Ò ØŒK×Ò�RœX gµB´I±K´KÐ@Ñ@Ô@ÑAÔAØ"'ð !ñ 
ô 
ð 	
r_   ÚonÚvariable_nameÚ
value_namec                óP  ‡‡‡‡‡‡	— t          | ¦  «        Š	‰€g nt          ‰¦  «        Š|€ˆfd„| j        D ¦   «         nt          |¦  «        }| j                             ‰¦  «        Š| j        j        Šˆˆˆ	ˆˆfd„|D ¦   «         }|                      t          |d¦  «        ¦  «        S )Nc              3  ó$   •K  — | ]
}|‰v¯|V — Œd S rW   r|   )r~   rÿ  rÆ   s     €r]   r€   z)ArrowDataFrame.unpivot.<locals>.<genexpr>F  s'   øè è € Ð9Ð9�Q¨!°5¨.¨.ˆq¨.¨.¨.¨.Ð9Ð9r_   c              3  óš   •K  — | ]E}‰                      ‰t          |‰¦  «        ¦  «                              ‰ ‰|¦  «        ¦  «        V — ŒFd S rW   )r:  r   )r~   r†   r8  Ú
index_colsr¼  rJ  rI  s     €€€€€r]   r€   z)ArrowDataFrame.unpivot.<locals>.<genexpr>I  sn   øè è € ð 
ð 
ð ð ×$Ò$ ]µF¸4À±O´OÑDÔD×RÒRØ˜F˜F 4™LœLñô ð
ð 
ð 
ð 
ð 
ð 
r_   Ú
permissive)	rÄ   rÛ   rã   Úiterrt   r  r8  r¾   r   )
r\   rH  rÆ   rI  rJ  Úon_Útablesr8  rN  r¼  s
     ```  @@@r]   ÚunpivotzArrowDataFrame.unpivot;  sÑ   øøøøøø€ õ �‰IŒIˆØ�m��­¨e©¬ˆØ=?¸ZÐ9Ð9Ð9Ð9˜$œ,Ð9Ñ9Ô9Ð9ÍTÐRTÉXÌXˆØ”[×'Ò'¨Ñ.Ô.ˆ
Ø”Ô#ˆð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð ð	
ñ 
ô 
ˆð × Ò ¥¨v°|Ñ!DÔ!DÑEÔEÐEr_   )
rO   rP   rQ   r7   rR   rS   rN   rS   rT   rU   )r`   r4   ra   r8   rT   r'   )r`   rw   ra   r8   rx   ry   rT   r'   )r`   r•   ra   r8   rx   ry   rT   r'   )rš   r›   rT   rœ   )r`   rP   ra   r8   rT   r'   )r`   rB   ra   r8   rx   r    rT   r'   )rT   r-   )rT   r%   )rT   r'   )rQ   r7   rT   r'   )r¼   rP   rR   rS   rT   r'   )rT   r¿   )rT   rÂ   )rÆ   rÂ   rT   rÇ   )rÎ   rÏ   rT   rÐ   )rÎ   rÔ   rT   rÕ   )rÎ   rS   rT   r×   )rT   rÝ   )rÎ   rS   rÚ   rÂ   rT   rç   )r†   rí   rT   r   )r   r	   rð   rñ   rT   rB   )rÓ   rõ   rT   r'   )rÓ   rú   rT   r'   )rã   rD   rT   r'   )rã   rú   rT   r'   )rã   rõ   rT   r'   )rã   r  rT   r'   )rT   r  )r  r?   rT   r  )rT   r  )rX   rí   rT   r'   )r"  r)   rT   r'   )r0  r   rT   r.   )r@  rA  rB  rS   rT   r+   )r0  r'   rF  r<   rG  rH  rI  rH  rJ  rí   rT   r'   )rã   r  rà   rS   rT   r'   )rb  rH  rT   r'   )rl  rí   rm  rn  ro  rS   rT   r'   )r  rÂ   rl  r€  r�  rn  rT   r'   )rT   r‹  )rT   rŽ  rW   )rš  rÏ   rT   r›  )rš  rÔ   rT   rŸ  )rš  rS   rT   r¡  )r†   rí   r©  rH  rT   r'   )r¸  r)   rT   r'   )r¼  rÂ   rT   r'   )rÆ  rÇ  rÅ  rÈ  rT   r2   )rÆ  ræ  rç  r	   rT   r1   )rÍ   rñ  r8  rò  rT   r	   )rù  rú  rT   r'   )r  r  rT   r'   )r  r  rT   rU   )r  rU   rT   rí   )r  r  rT   r  )rT   r   )
rb  rH  r.  r@   r-  rñ   r©  rH  rT   r'   )r¼  rÂ   r9  rÂ   rT   r'   )rT   rP   )r¼  rÂ   r=  rS   r>  rñ  rT   r'   )
rH  rH  rÆ   rH  rI  rí   rJ  rí   rT   r'   )Nrn   Ú
__module__Ú__qualname__r   r®   rg   r^   Úclassmethodrv   r”   r™   Ústaticmethodri   rq   r©   r¬   r±   r´   r·   rº   r¾   ÚpropertyrÁ   rÅ   rÍ   r   rÓ   ræ   Ú_iter_columnsrÜ   rï   rô   rù   r   r  r  r  r  rx   r  r  r   Úexploderã   r!  r  r6  r?  rE  r[  Ú	join_asofr\  rk  r~  rŠ  r�  r’  r•  rž  r·  ri  rÁ  rÄ  r×  rí  rð  rø  r  r   r  r  r,  r4  r;  rŒ   rG  rS  Úpivotr|   r_   r]   rM   rM   S   sô  € € € € € ð %Ô,€Oð */ð ð  ð  ð  ð  ð  ð ð8ð 8ð 8ñ „[ð8ð ð#Bð #Bð #Bñ „[ð#BðJ ð8ð 8ð 8ñ „[ð8ð0 ð)ð )ð )ñ „\ð)ð ðOð Oð Oñ „[ðOð ð8ð 8ð 8ñ „[ð8ð"5ð 5ð 5ð 5ð
"ð "ð "ð "ðð ð ð ðð ð ð ðYð Yð Yð Yð KOð 
ð 
ð 
ð 
ð 
ð 
ð
 ð!ð !ð !ñ „Xð!ð ð  ð  ð  ðHð Hð Hð Hð ØHÐHÐHñ „XØHàØJÐJÐJñ „XØJàØWÐWÐWñ „XØWð'ð 'ð 'ð 'ð
Kð Kð Kð Kð !€Mð?ð ?ð ?ð ?ðSð Sð Sð Sð7ð 7ð 7ð 7ð9ð 9ð 9ð 9ð
Ið 
Ið 
Ið 
IðTð Tð Tð Tð
ð 
ð 
ð 
ð
?ð ?ð ?ð ?ð"
?ð 
?ð 
?ð 
?ð ð
ð 
ð 
ñ „Xð
ðð ð ð ð%ð %ð %ð %ð ˆoÑÔ€Gàð(ð (ð (ñ „Xð(ð
ð 
ð 
ð 
ð
Að Að Að Að	<ð 	<ð 	<ð 	<ðLð Lð Lð Lð$Gð Gð Gð Gð/
ð /
ð /
ð /
ðb  �Ñ!Ô!€IðYð Yð Yð Yð!ð !ð !ð !ðYð Yð Yð Yð Yð Yð Yð Yð'ð 'ð 'ð 'ð*ð *ð *ð *ð
Àð ð ð ð ð ð ð ØQÐQÐQñ „XØQàØPÐPÐPñ „XØPð7ð 7ð 7ð 7ðKð Kð Kð Kð 
ð 
ð 
ð 
ð
ð 
ð 
ð 
ðPð Pð Pð Pð ,0ð;ð (,ð	;ð ;ð ;ð ;ð ;ð ;ðz"ð "ð "ð "ðBKð Kð Kð KðVð Vð Vð Vð&Dð Dð Dð Dð
ð 
ð 
ð 
ð$*ð *ð *ð *ð
 Ø/Ð/Ð/ñ „XØ/àØ@Ð@Ð@ñ „XØ@ðð ð ð ñ=ð =ð =ð =ð2 '+ð1=ð 1=ñ 1=ð 1=ð 1=ð 1=ñfVð Vð Vð Vñð ð ð ñ
ð 
ð 
ð 
ñFð Fð Fð Fð, ˆOÑÔ€E€E€Er_   rM   )r   r)   rP   r.   )dÚ
__future__r   Úcollections.abcr   r   r   r   Útypingr   r	   r
   r   r   r   Úpyarrowrk   Úpyarrow.computeÚcomputerˆ  rö  r   Únarwhals._arrow.utilsr   r   r   r   r   r   r   r   Únarwhals._compliantr   Únarwhals._utilsr   r   r   r   r   r   r   r   Únarwhals.dependenciesr    Únarwhals.exceptionsr!   r"   Úior#   Úpathlibr$   Útypesr%   r&   ÚpandasÚpdr�  r‘  Útyping_extensionsr'   r(   Únarwhals._arrow.exprr)   rD  r+   r«   r-   Únarwhals._arrow.typingr.   r/   r0   Únarwhals._compliant.typingr1   r2   Únarwhals._spark_like.utilsr3   Únarwhals._translater4   Únarwhals._typingr5   r6   r7   r8   Únarwhals.dtypesr9   Únarwhals.typingr:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rJ   Ú__annotations__rK   rM   r|   r_   r]   ú<module>rw     s  ðØ "Ð "Ð "Ð "Ð "Ð "Ð "à CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CØ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ Eà Ð Ð Ð Ø Ð Ð Ð Ð Ð à .Ð .Ð .Ð .Ð .Ð .ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð /Ð .Ð .Ð .Ð .Ð .ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 4Ð 3Ð 3Ð 3Ð 3Ð 3Ø *Ð *Ð *Ð *Ð *Ð *àð ,Ø(Ð(Ð(Ð(Ð(Ð(ØÐÐÐÐÐØÐÐÐÐÐØ Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð àÐÐÐØÐÐÐØ.Ð.Ð.Ð.Ð.Ð.Ð.Ð.à.Ð.Ð.Ð.Ð.Ð.Ø5Ð5Ð5Ð5Ð5Ð5Ø8Ð8Ð8Ð8Ð8Ð8ØLÐLÐLÐLÐLÐLÐLÐLÐLÐLØWÐWÐWÐWÐWÐWÐWÐWØ7Ð7Ð7Ð7Ð7Ð7Ø2Ð2Ð2Ð2Ð2Ð2ØDÐDÐDÐDÐDÐDÐDÐDØ8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ø%Ð%Ð%Ð%Ð%Ð%ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð "ð	ô	€Hð 	ð 	ð 	ñ 	ð €Ð Ð Ð Ñ ð~ð ~ð ~ð ~ð ~ØÐLÔMñ~ô ~ð ~ð ~ð ~r_   