
    Lpji                       % S SK Jr  S SKJrJrJrJr  S SKJrJ	r	J
r
JrJrJrJrJr  S SKrS SKJr  S SKJr  S SKJrJrJrJrJrJr  S SKJrJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*  S S	K+J,r,  S S
K-J.r.  \(       a  S SKJ/r/J0r0  S SK1J2r2  S SKJ3r3  S SK4r5S SK6r7S SK8J9r9J:r:  S SK;J<r<J=r=  S SK>J?r?  S SK@JArAJBrB  S SKCJDrD  S SKEJFrF  S SKGJHrHJIrI  S SKJJrJJKrK  S SKLJMrMJNrN  S SKOJPrP  S SKQJRrRJSrSJTrTJUrUJVrVJWrWJXrXJYrY  \" S5      rZ\" S5      r[Sr\S\]S'   Sr^S\]S '    \_" / S!Q5      r`\" S"\R                  \R                  5      ra " S# S$\\a   5      rb " S% S&\b\R                     5      rc " S' S(\b\R                     5      rdg))    )annotations)IteratorMappingSequenceSized)TYPE_CHECKINGAnyFinalGenericLiteralTypeVarcastoverloadN)PolarsNamespace)PolarsSeries)FROM_DICTS_ACCEPTS_MAPPINGSRESPECT_JOIN_NULL_SEMI_ANTIcatch_polars_exceptionextract_args_kwargsnarwhals_to_native_dtypenative_to_narwhals_dtype)Implementation_into_arrow_tableconvert_str_slice_to_int_slicegenerate_temporary_column_nameis_boolean_selectoris_compliant_seriesis_index_selectoris_rangeis_sequence_likeis_slice_indexis_slice_noneparse_columns_to_droprequires)is_numpy_array_1d)ColumnNotFoundError)CallableIterable)
ModuleType)	TypeAlias)SelfTypeIs)CompliantDataFrameAnyCompliantLazyFrameAny)
PolarsExpr)PolarsGroupByPolarsLazyGroupBy)SparkSession)IntoArrowTable)_EagerAllowedImpl_LazyAllowedImpl)Version_LimitedContext)	DataFrame	LazyFrame)DType)	IntoDTypeJoinStrategyMultiColSelectorMultiIndexSelectorPivotAggSingleIndexSelectorUniqueKeepStrategy_2DArrayTRFr
   MYPYzCallable[..., R]r*   Method)clone
drop_nullsestimated_sizeexplodefiltergather_everyhead	is_uniqueitem	iter_rows	join_asofrenamerowrowssampleselectsink_parquetsorttailto_arrow	to_pandaswith_columns	write_csvwrite_parquetNativePolarsFramec                     \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   \R                  rS\S'   SS.       S*S jjrS+S jr	\
S,S j5       r\
S-S j5       r\
S.S j5       rS/S jrS0S jrS1S jrS2S jr\S3S j5       rS4S jrS5S jrSSS .         S6S! jjr\
S7S" j5       r            S8S# jrS9S$ jr        S:S% jr          S;S& jrS7S' jrS<S( jrS)rg)=PolarsBaseFramem   Method[Self]rH   rK   rL   rM   rQ   rR   rV   rX   rY   r\   r_   _native_framer6   _versionF)validate_backend_versionc               L    Xl         X l        U(       a  U R                  5         g g N)rd   re   _validate_backend_version)selfdfversionrf   s       V/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/narwhals/_polars/dataframe.py__init__PolarsBaseFrame.__init__}   s#      #**, $    c                8    U R                   R                  5       ng)zRaise if installed version below `nw._utils.MIN_VERSIONS`.

**Only use this when moving between backends.**
Otherwise, the validation will have taken place already.
N_implementation_backend_version)rj   _s     rm   ri   )PolarsBaseFrame._validate_backend_version   s       113rp   c                6    U R                   R                  5       $ rh   rr   rj   s    rm   rt    PolarsBaseFrame._backend_version   s    ##4466rp   c                    U R                   $ rh   )rd   rx   s    rm   nativePolarsBaseFrame.native   s    !!!rp   c                .    U R                   R                  $ rh   )r{   columnsrx   s    rm   r~   PolarsBaseFrame.columns   s    {{"""rp   c                (    [        U R                  S9$ N)rl   )r   re   rx   s    rm   __narwhals_namespace__&PolarsBaseFrame.__narwhals_namespace__   s    t}}55rp   c                    U R                   [        R                  L a  U R                   R                  5       $ S[	        U R                   5       3n[        U5      e)NzExpected polars, got: )rs   r   POLARSto_native_namespacetypeAssertionError)rj   msgs     rm   __native_namespace__$PolarsBaseFrame.__native_namespace__   sN    >#8#88'';;==&tD,@,@'A&BCS!!rp   c                4    U R                  XR                  S9$ r   )	__class__re   )rj   rk   s     rm   _with_nativePolarsBaseFrame._with_native   s    ~~b--~88rp   c                6    U R                  U R                  US9$ r   )r   r{   )rj   rl   s     rm   _with_versionPolarsBaseFrame._with_version   s    ~~dkk7~;;rp   c              "    U " XR                   S9$ r   )re   )clsdatacontexts      rm   from_nativePolarsBaseFrame.from_native   s    4!1!122rp   c                R    U R                  U R                  R                  " U6 5      $ rh   )r   r{   rV   )rj   column_namess     rm   simple_selectPolarsBaseFrame.simple_select   s"      !3!3\!BCCrp   c                     U R                   " U6 $ rh   )rV   )rj   exprss     rm   	aggregatePolarsBaseFrame.aggregate   s    {{E""rp   N)maintain_orderorder_byc                  U(       a  U(       a~  [        SU R                  SS9nU R                  R                  U5      R	                  USS9R                  U=(       d    U R                  US9R	                  U5      R                  U5      nOSU(       a)  U R                  R	                  U5      R                  XS9nO#U R                  R                  XU=(       d    SS9nU R                  U5      $ )N   
row_index_)prefixF)
nulls_last)keep)r   r   )r   r~   r{   with_row_indexrX   uniquedropr   )rj   subsetr   r   r   tokenress          rm   r   PolarsBaseFrame.unique   s     21dll<XE**51h51.$,,T:ee  ++""8,33F3FC++$$.2IE % C   %%rp   c                "    U R                  5       $ rh   )collect_schemarx   s    rm   schemaPolarsBaseFrame.schema   s    ""$$rp   c          
         U R                   S:  a  US:X  a  SOUnUR                  nUS;   nU(       a  [        (       d  UR                  US9nU R	                  U R                  R                  UUUUUS95      $ )N)r         fullouter>   antisemi)r   otherhowleft_onright_onsuffix)rt   r{   r   rH   r   join)	rj   r   r   r   r   r   
how_nativeother_nativeis_semi_or_antis	            rm   r   PolarsBaseFrame.join   s     --;vGTW 	 ||!11#>#>'22(2CL  KK"!  
 	
rp   c                    U R                   S:  a*  U R                  U R                  R                  U5      5      $ U R                  R                  USSS9nU R                  U5      $ )N   $   T)empty_as_null
keep_nulls)rt   r   r{   rJ   )rj   r~   r   s      rm   rJ   PolarsBaseFrame.explode   s\      7*$$T[[%8%8%ABBkk!!'$!O  %%rp   c                   U R                   S:  a*  U R                  U R                  R                  UUUS95      $ U R                  U R                  R                  XUS95      $ )Nr   r   r   )kby
descendingr   r   reverse)rt   r   r{   top_k)rj   r   r   r   s       rm   r   PolarsBaseFrame.top_k   sl       9,$$!!& "     !2!2Qw!2!OPPrp   c           	         U R                   S:  a+  U R                  U R                  R                  UUUUS95      $ U R                  U R                  R	                  XX4S95      $ )Nr   )id_vars
value_varsvariable_name
value_name)onindexr   r   )rt   r   r{   meltunpivot)rj   r   r   r   r   s        rm   r   PolarsBaseFrame.unpivot  sy       9,$$  !!"/)	 !     KK-   
 	
rp   c           	         U R                   nU R                  S:  a  UR                  OUR                  5       nUR	                  5        VVs0 s H  u  p4U[        X@R                  5      _M     snn$ s  snnf )Nr   )r{   rt   r   r   itemsr   re   )rj   rk   r   namedtypes        rm   r   PolarsBaseFrame.collect_schema  sj    [["33d:@Q@Q@S  &||~
- *5--@@-
 	
 
s   "A2c                p   U R                   nUc  UR                  U5      nOU R                  S:  a  Sn[        U5      eUR	                  [
        R                  " [
        R                  " 5       5      R                  US9R                  U5      [
        R                  " 5       5      nU R                  U5      $ )N)r   
   z:Cannot pass `order_by` to `with_row_index` for Polars<1.10)r   )r{   r   rt   NotImplementedErrorrV   pl	int_rangelenoveraliasallr   )rj   r   r   frameresultr   s         rm   r   PolarsBaseFrame.with_row_index  s    ))$/F$$w.R)#..\\RVVX&++X+>DDTJBFFHF   ((rp   )rd   re   )rk   r_   rl   r6   rf   boolreturnNone)r   r   )r   ztuple[int, ...])r   r_   )r   z	list[str])r   r   )r   r)   )rk   r_   r   r+   )rl   r6   r   r+   )r   r_   r   r7   r   r+   )r   strr   r+   )r   r	   r   r+   )
r   Sequence[str] | Noner   rA   r   bool | Noner   r   r   r+   r   zdict[str, DType])r   z"PolarsBaseFrame[NativePolarsFrame]r   r<   r   r   r   r   r   r   r   r+   )r~   Sequence[str]r   r+   r   intr   zstr | Iterable[str]r   zbool | Sequence[bool]r   r+   )
r   r   r   r   r   r   r   r   r   r+   )r   r   r   r   r   r+   )__name__
__module____qualname____firstlineno____annotations__r   r   rs   rn   ri   propertyrt   r{   r~   r   r   r   r   classmethodr   r   r   r   r   r   rJ   r   r   r   r   __static_attributes__ rp   rm   ra   ra   m   s   


$$$++O */
-
- 	
-
 #'
- 

-4 7 7 " " # #6"9< 3 3D# '+)-&$& !	&
 $& '& 
&2 % %
1
 	

 &
 '
 
 

4&QQ0Q;PQ	Q
 
 $
 	

 
 

,
)rp   ra   c                  N  ^  \ rS rSr% S\S'   S\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   \S>S j5       r\        S?S j5       r\        S@S j5       r\	SAS j5       r
\        SBS j5       rSCS jrSDS  jrSES! jr\SFS" j5       r\SGS# j5       r\SHS$ j5       r    SIS% jrSJS& jrSKS' jr SLS(S).     SMS* jjjrSLS(S).SNS+ jjjr\SOS, j5       r    SPS- jrSQS. jrSRS/ jr SLS(S0.     SSS1 jjjr\STS2 j5       r\SUS3 j5       r    SVS4 jr      SWS5 jrSXS6 jr\R>                  " S75                    SYS8 j5       r SZS9 jr!            S[U 4S: jjr"        S\U 4S; jjr#S]S< jr$S=r%U =r&$ )^PolarsDataFramei.  rc   rG   zMethod[CompliantDataFrameAny]collectzMethod[int | float]rI   rL   z?Method[Iterator[tuple[Any, ...]] | Iterator[Mapping[str, Any]]]rP   zMethod[PolarsSeries]rN   zMethod[tuple[Any, ...]]rS   z?Method[Sequence[tuple[Any, ...]] | Sequence[Mapping[str, Any]]]rT   rU   zMethod[pa.Table]rZ   zMethod[pd.DataFrame]r[   zMethod[Any]r]   Method[None]r^   c         	         UR                   R                  5       S:  a  [        R                  " U5      nO)[	        S[        R
                  " [        X5      5      5      nU R                  X2S9$ )N)r      pl.DataFramer   )rs   rt   r   r8   r   
from_arrowr   r   )r   r   r   r{   s       rm   r  PolarsDataFrame.from_arrow?  sS    ""335?\\$'F."--8I$8X*YZFv77rp   c         	         U(       a>  UR                  5        VVs0 s H   u  pEUUb  [        XRR                  5      OS _M"     snnOS nU R                  [        R
                  " X5      US9$ s  snnf Nr  )r   r   re   r   r   	from_dict)r   r   r   r   keyr   	pl_schemas          rm   r  PolarsDataFrame.from_dictG  s{       %+LLN	 %3LS $ .e5E5EF %3	  	 r||D<gNNs   'A,c         	        U(       a>  UR                  5        VVs0 s H   u  pEUUb  [        XRR                  5      OS _M"     snnOS nU(       d  [        R                  " US9nOn[
        (       d  [        US   [        5      (       a  [        R                  " X5      nO4U=(       d    [        US   5      n[        R                  " S U 5       USS9nU R                  XrS9$ s  snnf )N)r   r   c              3  T   #    U  H  n[        UR                  5       5      v   M      g 7frh   )tuplevalues).0rS   s     rm   	<genexpr>-PolarsDataFrame.from_dicts.<locals>.<genexpr>v  s     5szz|$$s   &(rS   )r   orientr  )r   r   re   r   r8   r   
isinstancedict
from_dictsr  r   )	r   r   r   r   r  r   r  r{   r~   s	            rm   r  PolarsDataFrame.from_dicts\  s       %+LLN	 %3LS $ .e5E5EF %3	  	 \\3F((JtAw,E,E]]43F15a>G\\55geF v77's   'C!c                6    [        U [        R                  5      $ rh   )r  r   r8   objs    rm   
_is_nativePolarsDataFrame._is_native{      #r||,,rp   c                  SSK Jn  [        U[        U45      (       a  U" U5      R	                  5       OUn[
        R                  " XSS9nU R                  XbS9$ )Nr   )SchemarS   )r  r  )narwhals.schemar(  r  r   	to_polarsr   
from_numpyr   )r   r   r   r   r(  r  r{   s          rm   r+  PolarsDataFrame.from_numpy  sX     	+ &7F"344 6N$$& 	
 tu=v77rp   c                6    U R                   R                  U SS9$ )Nr   level)re   	dataframerx   s    rm   to_narwhalsPolarsDataFrame.to_narwhals      }}&&t6&::rp   c                    g)Nr  r  rx   s    rm   __repr__PolarsDataFrame.__repr__       rp   c                    U $ rh   r  rx   s    rm   __narwhals_dataframe__&PolarsDataFrame.__narwhals_dataframe__      rp   c                    g rh   r  rj   r#  s     rm   _from_native_object#PolarsDataFrame._from_native_object  s    CFrp   c                    g rh   r  r=  s     rm   r>  r?    s    >Arp   c                    g rh   r  r=  s     rm   r>  r?    s    03rp   c                    [        U[        R                  5      (       a  [        R                  " XS9$ U R                  U5      (       a  U R                  U5      $ U$ r  )r  r   Seriesr   r   r$  r   r=  s     rm   r>  r?    sK     c299%%++C>>??3$$S))
rp   c                ,    [        U R                  5      $ rh   )r   r{   rx   s    rm   __len__PolarsDataFrame.__len__  s    4;;rp   c                ~   ^ ^ T[         ;  a'  T R                  R                   ST S3n[        U5      eSUU 4S jjnU$ )N has not attribute ''.c                 2  > [        X5      u  p# TR                  [        TR                  T5      " U0 UD65      $ ! [        R
                  R                   a$  nU< STR                   S3n[        U5      UeS nAf[         a  n[        U5      S eS nAff = f)Nz+

Hint: Did you mean one of these columns: ?)
r   r>  getattrr{   r   
exceptionsr&   r~   	Exceptionr   )argskwargsposkwdser   attrrj   s         rm   func)PolarsDataFrame.__getattr__.<locals>.func  s    +D9IC://T0JC0XSW0XYY==44 6J4<<.XYZ)#.A5 :,Q/T9:s!   *; BA88BBBrO  r	   rP  r	   r   r	   INHERITED_METHODSr   r   AttributeErrorrj   rT  r   rU  s   ``  rm   __getattr__PolarsDataFrame.__getattr__  sF    ((^^,,--A$rJC %%	: 	: rp   N)copyc                   U R                   S:  a  Ub  Sn[        U5      eU R                   S:  a  U R                  R                  U5      $ U R                  R                  U5      $ )N)r   r      z=`copy` in `__array__` is only supported for 'polars>=0.20.28')rt   r   r{   	__array__)rj   r   r^  r   s       rm   ra  PolarsDataFrame.__array__  s_       ;.43CQC%c**  ;.;;((//{{$$U++rp   c               6    U R                   R                  5       $ rh   )r{   to_numpy)rj   r   r^  s      rm   rd  PolarsDataFrame.to_numpy  s    {{##%%rp   c                .    U R                   R                  $ rh   )r{   shaperx   s    rm   rg  PolarsDataFrame.shape  s    {{   rp   c           	        Uu  p#U R                   S:  ak  [        U5      (       a  UR                  OUn[        U5      (       a  UR                  OUnXE4nU R                  R                  U5      nU R	                  U5      $ [        U[        5      (       a  [        U5      OUn[        U[        5      (       a  [        U5      OUn[        U5      (       a  UR                  5       nU R                  n[        U5      (       Gd  [        U[        5      (       a  [        U5      S:X  a  U R                  5       $ [        U5      (       a+  UR                  " S [        UR                   USS9 5       6 nGO[#        U5      (       a  [%        U5      (       d  ['        U5      (       aI  UR                  U R                   [)        UR*                  UR,                  UR.                  5         5      nGO&[        U[0        5      (       a"  US S 2UR                  R3                  5       4   nOUS S 2U4   nO[        U[(        5      (       a[  [4        (       a  [7        X0R                   5      n	O[7        X0R                   5      n	UR                  U R                   [)        U	6    5      nOu[        U5      (       a*  UR                  UR                  R3                  5       5      nO;[9        U5      (       a  UR                  U5      nOS[;        U5       3n
[=        U
5      e[        U5      (       d  [        U[>        5      (       a
  X/S S 24   nOy[        U[(        [@        45      (       a	  XS S 24   nOU[        U5      (       a  XR                  S S 24   nO2[9        U5      (       a	  XS S 24   nOS[;        U5       3n
[=        U
5      eU RC                  U5      $ )N)r   r      r   c              3  <   #    U  H  u  pU(       d  M  Uv   M     g 7frh   r  )r  colrV   s      rm   r  .PolarsDataFrame.__getitem__.<locals>.<genexpr>  s      /Y%  C/Ys   	Fstrictz'Unreachable code, got unexpected type: )"rt   r   r{   __getitem__r>  r  r  listr%   tolistr"   r   r   rV   r   zipr~   r   r!   r   slicestartstopstepr   to_listrE   r   r    r   r   r   ranger   )rj   rO   rT   r~   rows_nativecolumns_nativeselectorselectedr{   	int_slicer   s              rm   rp  PolarsDataFrame.__getitem__  s      ;.)<T)B)B$++K/B7/K/KW^^QXN"2H{{..x8H++H55
 ",D%!8!84:dD'1'5'A'Ad7mwG ))!..*[[F ))gu--#g,!2C;;=(&w//#]]/26>>7SX/YF 'w//%g..(72C2C!' LLw}}gllGLL)YZ"
 $G\::!'7>>+A+A+C(C!D!'7
!3//t$B7LL$Y	$B7LL$Y	#]]4<<y8I+JKF(11#]]7>>+A+A+CDF%g..#]]73FCDM?SC(-- &&dC((#FAI.Fuen55#!G_F(..#KKN3F%d++#!G_FCDJ<PC(--$$V,,rp   c                ^    [         R                  " U R                  R                  U5      U S9$ r  )r   r   r{   
get_column)rj   r   s     rm   r  PolarsDataFrame.get_column  s$    ''(>(>t(DdSSrp   c              #  z   #    U R                   R                  5        H  n[        R                  " XS9v   M     g 7fr  )r{   iter_columnsr   r   )rj   seriess     rm   r  PolarsDataFrame.iter_columns!  s-     kk..0F**6@@ 1s   9;)sessionc                  Ub  U[         R                  L a,  [        R                  U R                  R                  5       U S9$ U[         R                  L a7  SS KnSSKJ	n  U R                  nU" UR                  S5      SU R                  S9$ U[         R                  L aE  SS KJn  SSKJn  U" UR#                  U R                  R%                  5       5      SU R                  S9$ U[         R&                  L a>  SS KnSSKJn	  U	" UR/                  U R                  U R0                  S	9SU R                  S9$ UR3                  5       (       a2  SS
KJn
  Uc  Sn[9        U5      eU
R;                  U UUU R                  S9$ [<        e)Nr  r   )DuckDBLazyFrame_dfT)rf   rl   )DaskLazyFrame)IbisLazyFrame)r~   )SparkLikeLazyFramez5Spark like backends require `session` to be not None.)r  implementationrl   )r   r   PolarsLazyFramer   r{   lazyDUCKDBduckdbnarwhals._duckdb.dataframer  tablere   DASKdask.dataframer0  narwhals._dask.dataframer  from_pandasr[   IBISibisnarwhals._ibis.dataframer  memtabler~   is_spark_likenarwhals._spark_like.dataframer  
ValueError_from_compliant_dataframer   )rj   backendr  r  r  r  ddr  r  r  r  r   s               rm   r  PolarsDataFrame.lazy%  s[    ?g)>)>>"..t{{/?/?/A4.PPn+++B++C"U#dDMM  n)))'> t{{4467)- 
 n)))> dkk4<<@)-    ""IM o%%??&	 @   rp   c                   g rh   r  rj   	as_seriess     rm   to_dictPolarsDataFrame.to_dict[  s    ORrp   c                   g rh   r  r  s     rm   r  r  ^  s    MPrp   c          
         U(       aP  U R                   R                  5       R                  5        VVs0 s H  u  p#U[        R                  " X0S9_M     snn$ U R                   R                  SS9$ s  snnf )Nr  F)r  )r{   r  r   r   r   )rj   r  r   rl  s       rm   r  r  a  sp      "&!4!4!6!<!<!>!>ID l..sAA!>  {{""U"33	s   !A1c                   SSK Jn  U" XUS9$ )Nr   )r0   drop_null_keys)narwhals._polars.group_byr0   )rj   keysr  r0   s       rm   group_byPolarsDataFrame.group_byk  s     	<TGGrp   c               j    [        XUS9nU R                  U R                  R                  U5      5      $ )Nrn  )r#   r   r{   r   )rj   r~   ro  to_drops       rm   r   PolarsDataFrame.dropr  s.    'fE  !1!1'!:;;rp   r   c          	          U R                   R                  UUUUUUS9nU R	                  U5      $ ! [         a  n[        U5      S eS nAff = f)N)r   r  aggregate_functionsort_columns	separator)r{   pivotrN  r   r>  )	rj   r   r   r  r  r  r  r   rS  s	            rm   r  PolarsDataFrame.pivotv  sd    
	6[[&&#5)# ' F ''//  	6(+5	6s   1 
AAAc                    U R                   $ rh   )r{   rx   s    rm   r*  PolarsDataFrame.to_polars  s    {{rp   c               `   >  [         TU ]  XX4US9$ ! [         a  n[        U5      S eS nAff = f)Nr   )superr   rN  r   )rj   r   r   r   r   r   rS  r   s          rm   r   PolarsDataFrame.join  sE    	67<gQW      	6(+5	6s    
-(-c               ^   >  [         TU ]  XUS9$ ! [         a  n[        U5      S eS nAff = f)Nr   )r  r   rN  r   )rj   r   r   r   rS  r   s        rm   r   PolarsDataFrame.top_k  s8    	67=1W=== 	6(+5	6    
,',c                    U R                   S:  a)  Uc&  Uc#  U R                  =nS:w  a  SU< 3n[        U5      eU R                  R	                  XS9$ )Nr   )r   r   zfcan only call `.item()` without "row" or "column" values if the DataFrame has a single element; shape=)rS   column)rt   rg  r  r{   rO   )rj   rS   r  rg  r   s        rm   rO   PolarsDataFrame.item  sd    !!G+**$/99>	C  S/!{{C77rp   r  )r   r3   r   r7   r   r+   )r   zMapping[str, Any]r   r7   r   %Mapping[str, IntoDType | None] | Noner   r+   )r   zSequence[Mapping[str, Any]]r   r7   r   r  r   r+   )r#  zpl.DataFrame | Anyr   zTypeIs[pl.DataFrame])r   rB   r   r7   r   z.Mapping[str, IntoDType] | Sequence[str] | Noner   r+   )r   zDataFrame[pl.DataFrame]r   r   r   r+   )r#  z	pl.Seriesr   r   )r#  r  r   r+   )r#  rC   r   rC   )r#  zpl.Series | pl.DataFrame | Tr   zSelf | PolarsSeries | T)r   r   rT  r   r   r	   rh   )r   z
Any | Noner^  r   r   rB   )r   r	   r^  r   r   rB   )r   ztuple[int, int])rO   z]tuple[SingleIndexSelector | MultiIndexSelector[PolarsSeries], MultiColSelector[PolarsSeries]]r   r	   )r   r   r   r   r   zIterator[PolarsSeries])r  z_LazyAllowedImpl | Noner  zSparkSession | Noner   r.   )r  zLiteral[True]r   zdict[str, PolarsSeries])r  zLiteral[False]r   zdict[str, list[Any]])r  r   r   z.dict[str, PolarsSeries] | dict[str, list[Any]])r  $Sequence[str] | Sequence[PolarsExpr]r  r   r   r0   r~   r   ro  r   r   r+   )r   r   r   r   r  r   r  zPivotAgg | Noner  r   r  r   r   r+   )r   r  )r   zPolarsBaseFrame[pl.DataFrame]r   r<   r   r   r   r   r   r   r   r+   r   )rS   z
int | Noner  zint | str | Noner   r	   )'r   r   r   r   r   r  r  r  r  staticmethodr$  r+  r1  r5  r9  r   r>  rE  r\  ra  rd  r  rg  rp  r  r  r  r  r  r   r$   backend_versionr  r*  r   r   rO   r  __classcell__r   s   @rm   r  r  .  s_   **''NN##	  
II## 8 8 OO
 !O 6O 
O O( 8)8
 !8 68 
8 8< - - 88
 !8 ?8 
8 8$;! F FA A3 3/	  $ #',?C,,1<,	,& & & ! !I-
I- 
I-VTA ,04 (,	4(4 %	4
 
4l R RP P4 4	74H8HMQH	H< d#00 $	0
 %0 ,0 0 0 
0 $0.6,6 	6
 &6 '6 6 
6 6606;P6	68 8rp   r  c                     ^  \ rS rSr% S\S'   \SS j5       rSS jrSS jrSS jr	SS jr
SS	 jrSU 4S
 jjr      SS jr      SS jrSS jrSrU =r$ )r  i  r  rW   c                6    [        U [        R                  5      $ rh   )r  r   r9   r"  s    rm   r$  PolarsLazyFrame._is_native  r&  rp   c                6    U R                   R                  U SS9$ )Nr  r.  )re   	lazyframerx   s    rm   r1  PolarsLazyFrame.to_narwhals  r3  rp   c                    g)Nr  r  rx   s    rm   r5  PolarsLazyFrame.__repr__  r7  rp   c                    U $ rh   r  rx   s    rm   __narwhals_lazyframe__&PolarsLazyFrame.__narwhals_lazyframe__  r;  rp   c                ~   ^ ^ T[         ;  a'  T R                  R                   ST S3n[        U5      eSUU 4S jjnU$ )NrH  rI  c                    > [        X5      u  p# TR                  [        TR                  T5      " U0 UD65      $ ! [        R
                  R                   a  n[        [        U5      5      UeS nAff = frh   )r   r   rL  r{   r   rM  r&   r   )rO  rP  rQ  rR  rS  rT  rj   s        rm   rU  )PolarsLazyFrame.__getattr__.<locals>.func  se    +D9IC9((d)CS)QD)QRR==44 9)#a&1q89s   *; A3A..A3rW  rX  r[  s   ``  rm   r\  PolarsLazyFrame.__getattr__  sF    ((^^,,--A$rJC %%	9 	9 rp   c              #  z   #    U R                  [        R                  5      R                  5        S h  vN   g  N7frh   )r  r   r   r  rx   s    rm   _iter_columnsPolarsLazyFrame._iter_columns  s&     << 5 56CCEEEs   1;9;c                ^   >  [         TU ]  5       $ ! [         a  n[        U5      S eS nAff = frh   )r  r   rN  r   )rj   rS  r   s     rm   r   PolarsLazyFrame.collect_schema  s3    	67)++ 	6(+5	6r  c                    U R                   R                  " S
0 UD6nUb  U[        R
                  L a  [        R                  X0S9$ U[        R                  L a6  SSK	J
n  U" UR                  5       [        R                  SU R                  SS9$ U[        R                  L a'  SSKJn  U" UR!                  5       SU R                  SS9$ S	U 3n[#        U5      e! [         a  n[        U5      S eS nAff = f)Nr  r   )PandasLikeDataFrameTF)r  rf   rl   validate_column_names)ArrowDataFrame)rf   rl   r  zUnsupported `backend` value: r  )r{   r  rN  r   r   r   r  r   PANDASnarwhals._pandas_like.dataframer  r[   re   PYARROWnarwhals._arrow.dataframer  rZ   r  )rj   r  rP  r   rS  r  r  r   s           rm   r  PolarsLazyFrame.collect  s    	6[[((262F ?g)>)>>"..v.DDn+++K&  "-44)-&+  n,,,@!!)-&+	  .gY7o9  	6(+5	6s   C 
C5$C00C5c                   SSK Jn  U" XUS9$ )Nr   )r1   r  )r  r1   )rj   r  r  r1   s       rm   r  PolarsLazyFrame.group_by  s     	@ NKKrp   c                   U R                   S:  a*  U R                  U R                  R                  U5      5      $ U R                  U R                  R                  XS95      $ )Nr   rn  )rt   r   r{   r   )rj   r~   ro  s      rm   r   PolarsLazyFrame.drop	  sS      9,$$T[[%5%5g%>??  !1!1'!1!IJJrp   r  )r#  zpl.LazyFrame | Anyr   zTypeIs[pl.LazyFrame])r   zLazyFrame[pl.LazyFrame]r  r  r  r  r   )r  z_EagerAllowedImpl | NonerP  r	   r   r-   )r  r  r  r   r   r1   r  )r   r   r   r   r   r  r$  r1  r5  r  r\  r  r   r  r  r   r  r  r  s   @rm   r  r    s    - -;!F6!/!;>!	!FL8LMQL	LK Krp   r  )e
__future__r   collections.abcr   r   r   r   typingr   r	   r
   r   r   r   r   r   polarsr   narwhals._polars.namespacer   narwhals._polars.seriesr   narwhals._polars.utilsr   r   r   r   r   r   narwhals._utilsr   r   r   r   r   r   r   r   r    r!   r"   r#   r$   narwhals.dependenciesr%   narwhals.exceptionsr&   r'   r(   typesr)   r*   pandaspdpyarrowpatyping_extensionsr+   r,   narwhals._compliant.typingr-   r.   narwhals._polars.exprr/   r  r0   r1   narwhals._spark_like.utilsr2   narwhals._translater3   narwhals._typingr4   r5   r6   r7   narwhals.dataframer8   r9   narwhals.dtypesr:   narwhals.typingr;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   r   rF   	frozensetrY  r_   ra   r  r  r  rp   rm   <module>r     s$   " > > W W W  6 0     4 32  .W0J72D87%	 	 	 	AAe &	 &  : /r||L ~)g/0 ~)BG8obll3 G8TTKobll3 TKrp   