
    O3j#q                       U d dl mZ d dlmZmZmZmZmZ d dlZ	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 d dlmZmZmZ d dlmZmZ erxd dl m!Z!m"Z"m#Z#m$Z$ d dl%m&Z& d d	lm'Z'm(Z(m)Z) d dl*Z+d dl,Z-d d
l.m/Z/m0Z0 d dl1m2Z2m3Z3 d dl4m5Z5 d dl6m7Z7 d dlm8Z8m9Z9 d dl:m;Z; d dl<m=Z= d dl>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZE  e)d      ZFe'd   ZGdeHd<   eZIdeHd<    eJg d      ZK G d d      ZL G d deeLe	jz                  f         ZM G d deMeeLe	jz                  f         ZN G d deMeeLe	jz                  f         ZO G d  d!eMeeLe	jz                  f         ZP G d" d#eMeeLe	jz                  f         ZQ G d$ d%eMeeLe	jz                  f         ZRy)&    )annotations)TYPE_CHECKINGAnyClassVarcastoverloadN)BACKEND_VERSIONSERIES_ACCEPTS_PD_INDEXSERIES_RESPECTS_DTYPEPolarsAnyNamespacePolarsCatNamespacePolarsDateTimeNamespacePolarsListNamespacePolarsStringNamespacePolarsStructNamespacecatch_polars_exceptionextract_args_kwargsextract_nativenarwhals_to_native_dtypenative_to_narwhals_dtype)
NO_DEFAULTImplementationrequires)is_numpy_array_1dis_pandas_index)IterableIteratorMappingSequence)
ModuleType)Literal	TypeAliasTypeVar)SelfTypeIs)MethodPolarsDataFramePolarsNamespace)	NoDefault)Version_LimitedContext)DType)Series)Into1DArray	IntoDTypeModeKeepStrategyMultiIndexSelectorNonNestedLiteralPythonLiteral_1DArrayT)FTr"   IncludeBreakpoint
Incomplete)R__add____and____floordiv__
__invert____iter____mod____mul____neg____or____pow____radd____rand____rfloordiv____rmod____rmul____ror____rsub____rtruediv____sub____truediv__absallanyarg_maxarg_minarg_trueceilclipcoscountcum_maxcum_mincum_prodcum_sumdiff
drop_nullsexp	fill_nullfill_nanfilterfloorgather_everyhead
is_betweenis_closeis_duplicatedis_empty	is_finiteis_first_distinctis_inis_last_distinctis_null	is_sorted	is_uniqueitemkurtosislenlogmaxmeanminmoden_unique
null_countquantilerankroundsampleshiftsinskewsqrtstdsumtailto_arrowto_frameto_list	to_pandasuniquevarzip_withc                  X   e Zd ZU ej                  Zded<   ded<   ded<   ddgdgd	Zd
ed<   ddZe	dd       Z
ddZddZddZddZddZeddd	 	 	 	 	 	 	 	 	 dd       Zedd       Zedd       Zedd       ZddZddZedd       Zedd       Zedd       Z	 	 	 	 ddZdd Zdd!Zdd"Ze	dd#       Ze	dd$       Ze	dd%       Zdd&Z dd(Z!dd)Z"dd*Z#dd+Z$dd,Z% e&jN                  d-      	 	 	 	 	 	 	 	 	 	 dd.       Z(ddd/dd0Z)dd1Z*dd2Z+dd3Z,dd4Z-dd5Z.dd6Z/dd7Z0dd8Z1dd9Z2dd:Z3dd;Z4dd<Z5	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd=Z6 e&jN                  d-      	 	 	 	 	 	 	 	 	 	 dd>       Z7 e&jN                  d-      	 	 	 	 	 	 	 	 	 	 dd?       Z8dd@Z9ddAZ:ddBZ;ddCZ<	 	 	 	 	 	 	 	 	 	 ddDZ=ddEZ>ddFZ?ddGZ@	 	 	 	 	 	 ddHZA	 	 	 	 	 	 ddIZBddJZC	 	 	 	 	 	 	 	 ddKZDddLZEddMZFddNZGddOZHe	ddP       ZIe	ddQ       ZJe	ddR       ZKe	ddS       ZLdTedU<   dTedV<   dTedW<   dTedX<   dYedZ<   dTed[<   dTed\<   dTed]<   dTed^<   dTed_<   dTed`<   dTeda<   dTedb<   dTedc<   dTedd<   dTede<   dTedf<   dTedg<   dTedh<   dTedi<   djedk<   djedl<   dmedn<   dmedo<   dTedp<   dTedq<   dmed<   dTedr<   dTeds<   dTedt<   dTedu<   dTedv<   dTedw<   dTedx<   dTedy<   dTedz<   dTed{<   dTed|<   dTed}<   dTed~<   dTed<   dTed<   dTed<   djed<   dTed<   dTed<   dTed<   dTed<   djed<   dTed<   ded'<   ded<   dmed<   dTed<   ded<   ded<   ded<   dmed<   dmed<   ded<   dTed<   dTed<   dTed<   dTed<   dTed<   ded<   dTed<   ded<   ded<   dTed<   ded<   ded<   ded<   ded<   dTed<   ded<   dTed<   e	dd       ZMy)PolarsSeriesr   _implementation	pl.Series_native_seriesr+   _version
breakpointrV   )TFz3ClassVar[Mapping[IncludeBreakpoint, Sequence[str]]]_HIST_EMPTY_SCHEMAc                    || _         || _        y N)r   r   )selfseriesversions      D/DATA/.local/lib/python3.12/site-packages/narwhals/_polars/series.py__init__zPolarsSeries.__init__   s    $    c                6    | j                   j                         S r   )r   _backend_versionr   s    r   r   zPolarsSeries._backend_version   s    ##4466r   c                     y)Nr    r   s    r   __repr__zPolarsSeries.__repr__   s    r   c                4    ddl m}  || j                        S )Nr   r(   r   )narwhals._polars.namespacer)   r   )r   r)   s     r   __narwhals_namespace__z#PolarsSeries.__narwhals_namespace__   s    >t}}55r   c                    | S r   r   r   s    r   __narwhals_series__z PolarsSeries.__narwhals_series__   s    r   c                    | j                   t        j                  u r| j                   j                         S dt	        | j                          }t        |      )NzExpected polars, got: )r   r   POLARSto_native_namespacetypeAssertionError)r   msgs     r   __native_namespace__z!PolarsSeries.__native_namespace__   sN    >#8#88'';;==&tD,@,@'A&BCS!!r   c                <    | j                  | j                  |      S Nr   )	__class__native)r   r   s     r   _with_versionzPolarsSeries._with_version   s    ~~dkk7~;;r    N)namedtypec               6   |j                   }|rt        ||      nd }|}t        rt        j                  |||      }nJt
        st        |      r|j                         }t        j                  ||      }|r|j                  |      }| j                  ||      S )Nr   context)
r   r   r   plr.   r
   r   	to_seriesr   from_native)	clsdatar   r   r   r   dtype_plvaluesr   s	            r   from_iterablezPolarsSeries.from_iterable   s     ""?D+E7;$! YYtV8<F+1H))+YYtV,FX.vw77r   c                6    t        | t        j                        S r   )
isinstancer   r.   )objs    r   
_is_nativezPolarsSeries._is_native   s    #ryy))r   c              *     | ||j                         S r   )r   )r   r   r   s      r   r   zPolarsSeries.from_native   s    4!1!122r   c              n    t        j                  t        |      r|n|g      }| j                  ||      S )Nr   )r   r.   r   r   )r   r   r   r   s       r   
from_numpyzPolarsSeries.from_numpy   s/    #4T#:4Gvw77r   c                <    | j                   j                  | d      S )Nfull)level)r   r   r   s    r   to_narwhalszPolarsSeries.to_narwhals   s    }}##D#77r   c                <    | j                  || j                        S r   )r   r   r   r   s     r   _with_nativezPolarsSeries._with_native   s    ~~fdmm~<<r   c                     y r   r   r   s     r   _from_native_objectz PolarsSeries._from_native_object   s    >Ar   c                     y r   r   r   s     r   r   z PolarsSeries._from_native_object   s    LOr   c                     y r   r   r   s     r   r   z PolarsSeries._from_native_object   s    36r   c                    | j                  |      r| j                  |      S t        |t        j                        rddlm}  |j                  ||       S |S )Nr   r'   r   )r   r   r   r   	DataFramenarwhals._polars.dataframer'   r   )r   r   r'   s      r   r   z PolarsSeries._from_native_object   sL     ??6"$$V,,fbll+B.?..vtDDr   c                v     t         vr' j                  j                   d d}t        |      d fd}|S )Nz has not attribute 'z'.c                 x    t        | |      \  }}j                   t        j                        |i |      S r   )r   r   getattrr   )argskwargsposkwdsattrr   s       r   funcz&PolarsSeries.__getattr__.<locals>.func   s<    +D&9IC++,FGDKK,F,Tt,TUUr   )r   r   r   r   returnr   )INHERITED_METHODSr   __name__AttributeError)r   r   r   r   s   ``  r   __getattr__zPolarsSeries.__getattr__   sB    ((^^,,--A$rJC %%	V r   c                ,    t        | j                        S r   )rq   r   r   s    r   __len__zPolarsSeries.__len__  s    4;;r   c                t   | j                   dk  rw| j                  }| j                         }| j                         j	                  |j                  |      j                  |      j                  |            j                  |      S | j                  | j                  j                  t        |                  S )N)   
   r   )r   r   r   r   selectcolrE   alias
get_columnr   r   r   )r   otherr   nss       r   rE   zPolarsSeries.__rfloordiv__  s      :-99D,,.B33E:AA$GHD!
   !:!:>%;P!QRRr   c                .    | j                   j                  S r   )r   r   r   s    r   r   zPolarsSeries.name  s    {{r   c                V    t        | j                  j                  | j                        S r   )r   r   r   r   r   s    r   r   zPolarsSeries.dtype  s    '(9(94==IIr   c                    | j                   S r   )r   r   s    r   r   zPolarsSeries.native  s    """r   c                V    | j                  | j                  j                  |            S r   )r   r   r   )r   r   s     r   r   zPolarsSeries.alias  s"    ''(9(9$(?@@r   ro   c                    t        |t              r4| j                  | j                  j	                  |j                              S | j                  | j                  j	                  |            S r   )r   r   r   r   __getitem__)r   ro   s     r   r   zPolarsSeries.__getitem__  sP    dL)++DKK,C,CDKK,PQQ''(?(?(EFFr   c                    t        || j                        }| j                  | j                  j	                  |            S r   )r   r   r   r   r   )r   r   r   s      r   r   zPolarsSeries.cast#  s2    +E4==A  !1!1(!;<<r   c                |    | j                  | j                  j                  t        |      t        |                  S r   r   r   rT   r   )r   lower_boundupper_bounds      r   rT   zPolarsSeries.clip'  s3      KK^K8.:UV
 	
r   c                h    | j                  | j                  j                  t        |                  S r   r   )r   r   s     r   
clip_lowerzPolarsSeries.clip_lower,  s'      !1!1.2M!NOOr   c                j    | j                  | j                  j                  t        |                  S )N)r   r   )r   r   s     r   
clip_upperzPolarsSeries.clip_upper/  s/      KK)DE
 	
r   r   c                   | j                   }|rt        || j                        nd }|t        u ri ndt	        |      i}| j                   |j                  ||fd|i|      S )Ndefaultreturn_dtype)r   r   r   r   r   r   replace_strict)r   r  oldnewr  serr   extra_kwargss           r   r  zPolarsSeries.replace_strict4  sx     kk  %\4==A 	 Z'Bi9P-Q 	   CsCLeL|L
 	
r   copyc               (    | j                  ||      S )Nr	  )	__array__r   r   r
  s      r   to_numpyzPolarsSeries.to_numpyK  s    ~~e$~//r   c                   | j                   dk  r| j                  j                  |      S | j                  j                  ||      S )N)r         r   )r   r
  )r   r   r  r  s      r   r  zPolarsSeries.__array__N  sB      ;.;;((u(55{{$$5t$<<r   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __eq__r   r   r   s     r   r  zPolarsSeries.__eq__S  '      !3!3N54I!JKKr   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __ne__r   r  s     r   r  zPolarsSeries.__ne__V  r  r   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __ge__r   r  s     r   r  zPolarsSeries.__ge__Z  r  r   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __gt__r   r  s     r   r  zPolarsSeries.__gt__]  r  r   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __le__r   r  s     r   r  zPolarsSeries.__le__`  r  r   c                h    | j                  | j                  j                  t        |                  S r   )r   r   __lt__r   r  s     r   r  zPolarsSeries.__lt__c  r  r   c                    | j                   j                  t        |            }| j                  dk  r|j	                  | j
                        }| j                  |      S )N)r      r   )r   __rpow__r   r   r   r   r   )r   r   results      r   r"  zPolarsSeries.__rpow__f  sL    %%nU&;<  :-\\$)),F  ((r   c                   	 | j                   j                         }| j                  dk  rmt        j                  | j                   j                               j                  |      }| j                  t        j                  |      | j                           S | j                  |      S # t        $ r}t        |      d d }~ww xY wN)r      )r   is_nan	Exceptionr   r   r   whenis_not_nullthenr   r   r   )r   native_is_naner   s       r   r'  zPolarsSeries.is_nanm  s    	6 KK..0M   7*WWT[[4467<<]KF$$RYYv%6tyy%ABB  //  	6(+5	6s   B) )	C2B>>Cc                P   | j                   j                         }| j                  dk  rmt        j                  | j                   j                               j                  |      }| j                  t        j                  |      | j                           S | j                  |      S r%  )
r   rh   r   r   r)  r*  r+  r   r   r   )r   native_is_finiter   s      r   rh   zPolarsSeries.is_finitew  s    ;;002  7*WWT[[4467<<=MNF$$RYYv%6tyy%ABB  !122r   c                    ddl m} | j                  j                         s
d} ||      | j                  j                         S )Nr   )InvalidOperationErrorz<`median` operation not supported for non-numeric input type.)narwhals.exceptionsr1  r   
is_numericr   median)r   r1  r   s      r   r4  zPolarsSeries.median~  s8    =zz$$&PC',,{{!!##r   c               
   ddl m} | j                  dk  r~| j                  j	                         j                         }| j                  j                  |      }|j                  }|r|j                  t        |            }|j                  |      }n| j                  j                  ||      }|j                  t        j                         j                  t        j                              } |j                   ||       S )Nr   r   )r   r     )	separator)r7  
drop_firstr   )r   r'   r   r   rl   rO   
to_dummiescolumnspopintr   with_columnsr   rN   r   Int8r   )r   r7  r8  r'   	has_nullsr#  output_columns_s           r   r9  zPolarsSeries.to_dummies  s    >  ;.++-113I[[++i+@F#^^N"&&s9~6]]>2F[[++iJ+WF$$RVVX]]277%;<***64@@r   c          
        | j                   dk  rd|ind|i} | j                  j                  d||||||d|}	| j                   dk  r| j                  t	        j
                  t	        j                  | j                  j                                j                  |	      j                  d             | j                  j                           S | j                  |	      S )Nr      r   min_periodsmin_samples)comspan	half_lifealphaadjustignore_nullsr   r   )r   r   ewm_meanr   r   r   r)  rl   r+  	otherwiser   )
r   rG  rH  rI  rJ  rK  rF  rL  r  native_results
             r   rM  zPolarsSeries.ewm_mean  s     $$z1 K(- 	 -,, 
%
 
   4'$$		GGT[[0022388GQQRVW++""$    //r   c          	         | j                   dk  rd|ind|i}| j                   | j                  j                  d|||d|      S NrC  rE  rF  )window_sizecenterddofr   )r   r   r   rolling_varr   rR  rF  rS  rT  r  s         r   rU  zPolarsSeries.rolling_var  f     $$z1 K(- 	
   #DKK## 'TEQ
 	
r   c          	         | j                   dk  rd|ind|i}| j                   | j                  j                  d|||d|      S rQ  )r   r   r   rolling_stdrV  s         r   rY  zPolarsSeries.rolling_std  rW  r   c                   | j                   dk  rd|ind|i}| j                   | j                  j                  d||d|      S NrC  rE  rF  )rR  rS  r   )r   r   r   rolling_sumr   rR  rF  rS  r  s        r   r\  zPolarsSeries.rolling_sum  sd     $$z1 K(- 	
   #DKK## ':F
 	
r   c                   | j                   dk  rd|ind|i}| j                   | j                  j                  d||d|      S r[  )r   r   r   rolling_meanr]  s        r   r_  zPolarsSeries.rolling_mean  sd     $$z1 K(- 	
   $DKK$$ ':F
 	
r   c               F   | j                   dk  re| j                  j                  |      }|rd|j                         }t	        j
                  |j                  |       |j                  |      g      }n| j                  j                  ||      }| j                  |      S )N)r   r     )
descending)rb  
nulls_last)r   r   sortrl   r   concatr`   r   )r   rb  rc  r#  rl   s        r   rd  zPolarsSeries.sort  s      :-[[%%%<F ..*FMM7($;V]]7=S#TU[[%%
%SF  ((r   c                    | j                   j                         j                  |j                   |j                         }| j                  |      S r   )r   clonescatterr   )r   indicesr   ss       r   rh  zPolarsSeries.scatter  s:    KK''F  ##r   c                   ddl m} | j                  dk  r|xs |rdnd} | j                  j	                  ||      j
                  d	i | j                  j                  t        j                  | j                  j                        ||r+t        j                  d      t        j                  d      z  nt        j                  d      i}n| j                  j	                  ||||      } |j                  ||       S )
Nr   r   )r   r   r   
proportionrV   )rd  parallel)rd  rm  r   	normalizer   r   )r   r'   r   r   value_countsr   r   r   r   r   r   )r   rd  rm  r   rn  r'   value_name_r#  s           r   ro  zPolarsSeries.value_counts   s     	?  9,J9<'KRT[[--4(-KRR [[%%t{{/?/?(@  "$266'?!B	F [[--H49 . F +**64@@r   c               X    | j                  | j                  j                  |            S )N)reverse)r   r   	cum_count)r   rr  s     r   rs  zPolarsSeries.cum_count  s%      !6!6w!6!GHHr   c                t    	 | j                   j                  |      S # t        $ r}t        |      d d }~ww xY wr   )r   __contains__r(  r   )r   r   r-  s      r   ru  zPolarsSeries.__contains__  s9    	6;;++E22 	6(+5	6s    	727c                   | j                   j                         }| j                  |dk(  r|j                  d            S |      S )NrO   r   )r   rv   r   rc   )r   keepr#  s      r   rv   zPolarsSeries.mode  s;    !!#  45=QMMfMMr   c               Z   t        |      dk  r$t        j                  | j                  |         }n| j                  j                         r|rZt        j                  |dd        j                  d      j                  t        j                  dt        j                              }nYt        j                  t        j                  t        |      dz
  t        j                              }n| j                  |d |      S | j                         j                  j!                  ||       S )Nr   schemar   r   rV   bins	bin_countinclude_breakpointr   )rq   r   r   r   r   rg   r.   r   r=  litInt64r   zeros_hist_from_datar   
_dataframer   )r   r}  r  r   s       r   hist_from_binszPolarsSeries.hist_from_bins#  s     t9>\\)@)@AS)TUF[[!!#!IId12h'Xl+!\q"(((;\<  #d)a-)JK''T>P (   **,77CCFTXCYYr   c               h   |dk(  r$t        j                  | j                  |         }n| j                  j	                         r|rTt        j
                  t        j                  d|dz         |z  t        j                  dt         j                              }not        j
                  t        j                  |t         j                              }n6t        dk  rd }| j                  |      }n|}d }| j                  |||      S | j                         j                  j                  || 	      S )
Nr   ry  r   )r   rV   r{  r   r6  )r~  r|  r   )r   r   r   r   rg   r   	int_ranger  r  r  r	   _bins_from_bin_countr  r   r  r   )r   r~  r  r   rV   r}  s         r   hist_from_bin_countz PolarsSeries.hist_from_bin_count7  s    >\\)@)@AS)TUF[[!!#!!||Ay1}=	I&&BHH-
 )RXX)FG (0090E!''#5 (  
 **,77CCFTXCYYr   c                   t        d| j                  j                               }t        d| j                  j                               }||k(  r
|dz  }|dz  }||z
  |z  }t	        j
                  d|dz   d      |z  |z   S )a>  Prepare bins based on backend version compatibility.

        polars <1.15 does not adjust the bins when they have equivalent min/max
        polars <1.5 with bin_count=...
        returns bins that range from -inf to +inf and has bin_count + 1 bins.
          for compat: convert `bin_count=` call to `bins=`
        floatg      ?r   r   T)eager)r   r   ru   rs   r   r  )r   r~  lowerupperwidths        r   r  z!PolarsSeries._bins_from_bin_countS  sz     Wdkkoo/0Wdkkoo/0E>SLESLE)+||Ay1}D9EAEIIr   c                  ddl m} | j                  }t        dk  s||j	                  d      }|j                  ||d|      }|sC|j                  d   }|j                  t        j                  |      j                  d            }nt        dk  r|j                  d	d
i      }|t        dk  rEt        j                  dt        |            }|j                  |dkD  |t        |      dz
  k  z        }t        dk  r||j                  dd      j!                  t        j                  d      t        j"                  |      |d   k(  j%                         z         j'                  |j                  d            } |j(                  ||       S )zbCalculate histogram from non-empty data and post-process the results based on the backend version.r   r   r  NF)r~  include_categoryr  rV   )r   r   break_pointr   )r   ra  r   )r      r   )r   r'   r   r	   r_   histr:  r   r   r   r   renamer  rq   r`   slicer=  r  r   vstackr   )	r   r}  r~  r  r'   r   dfcol_namers	            r   r  zPolarsSeries._hist_from_datae  sT    	? W$(8__T*F[["1	  
 "zz!}H266(+11':;Bv%M<89B'LLCG,YYA!c"gk/:;(HHQN!\"&&/bffVnQ6O5T5T5V"WXVBHHQK(  +**2t<<r   c                    | j                   S r   )r   r   s    r   	to_polarszPolarsSeries.to_polars  s    {{r   c                    | j                   dk  r(t        |       r| j                  j                  d      S d S | j                  j	                         S )Nr   r   r   )r   rq   r   ro   firstr   s    r   r  zPolarsSeries.first  sC      7**-d)4;;##A&=={{  ""r   c                    | j                   dk  r(t        |       r| j                  j                  d      S d S | j                  j	                         S )Nr  )r   rq   r   ro   lastr   s    r   r  zPolarsSeries.last  sC      7*+.t94;;##B'>$>{{!!r   c               b    |r| j                         j                         S | j                         S r   )r\   r  )r   rL  s     r   	any_valuezPolarsSeries.any_value  s%    ,8t &&(JdjjlJr   c                    t        |       S r   )PolarsSeriesDateTimeNamespacer   s    r   dtzPolarsSeries.dt  s    ,T22r   c                    t        |       S r   )PolarsSeriesStringNamespacer   s    r   strzPolarsSeries.str      *400r   c                    t        |       S r   )PolarsSeriesCatNamespacer   s    r   catzPolarsSeries.cat  s    '--r   c                    t        |       S r   )PolarsSeriesStructNamespacer   s    r   structzPolarsSeries.struct  r  r   zMethod[Self]r9   r:   r;   r<   zMethod[Iterator[Any]]r=   r>   r?   r@   rA   rB   rC   rD   rF   rG   rH   rI   rJ   rK   rL   rM   zMethod[bool]rN   rO   zMethod[int]rP   rQ   rR   rS   rU   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   rf   rg   ri   rj   rk   rl   rm   rn   zMethod[Any]zMethod[float | None]rp   rq   rr   rs   zMethod[float]rt   ru   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   zMethod[pa.Array[Any]]r   zMethod[PolarsDataFrame]r   zMethod[list[Any]]r   zMethod[pd.Series[Any]]r   r   r   r   c                    t        |       S r   )PolarsSeriesListNamespacer   s    r   listzPolarsSeries.list  s    (..r   )r   r   r   r+   r   None)r   ztuple[int, ...]r   r  r   r)   )r   r$   )r   r    )r   r+   r   r$   )
r   zIterable[Any]r   r,   r   r  r   IntoDType | Noner   r$   )r   zpl.Series | Anyr   zTypeIs[pl.Series])r   r   r   r,   r   r$   )r   r/   r   r,   r   r$   )r   zSeries[pl.Series])r   r   r   r$   )r   zpl.DataFramer   r'   )r   r6   r   r6   )r   zpl.Series | pl.DataFrame | Tr   zSelf | PolarsDataFrame | T)r   r  r   r   )r   r<  )r   r   r   r   )r   r-   r   r   )r   r  r   r$   )ro   zMultiIndexSelector[Self]r   z
Any | Self)r   r0   r   r$   )r   r   r   r   r   r$   )r   r   r   r$   )r   r   r   r$   )
r  zPolarsSeries | NoDefaultr  Sequence[Any]r  r  r  r  r   r$   r   )r   r   r
  zbool | Noner   r5   )r   objectr   r$   )r   r$   r   r$   )r   zPolarsSeries | Anyr   r$   )r   r   )r7  r  r8  boolr   r'   )rG  float | NonerH  r  rI  r  rJ  r  rK  r  rF  r<  rL  r  r   r$   )
rR  r<  rF  r<  rS  r  rT  r<  r   r$   )rR  r<  rF  r<  rS  r  r   r$   )rb  r  rc  r  r   r$   )ri  r$   r   r$   r   r$   )
rd  r  rm  r  r   z
str | Nonern  r  r   r'   )rr  r  r   r$   )r   r   r   r  )rw  r1   r   r$   )r}  zlist[float]r  r  r   r'   )r~  r<  r  r  r   r'   )r~  r<  r   r   )r}  zlist[float] | Noner~  z
int | Noner  r  r   r'   )r   r4   )rL  r  r   r4   )r   r  )r   r  )r   r  )r   r  )r   r  )Nr   
__module____qualname__r   r   r   __annotations__r   r   propertyr   r   r   r   r   r   classmethodr   staticmethodr   r   r   r   r   r   r   r   r   rE   r   r   r   r   r   r   rT   r   r   r   backend_versionr  r  r  r  r  r  r  r  r  r"  r'  rh   r4  r9  rM  rU  rY  r\  r_  rd  rh  ro  rs  ru  rv   r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   r   r      sG   &4&;&;O^; W%yOK 
  7 76
"<  "&88 !	8
 8  8 
8 8* * * 3 3 8 88= A AO O6 6
2
	#
	 	S     J J # #AG
=

P

 Xd#
)
 
 	
 '
 

 $
,0 0=
LLLLLL)03$A !0 !0 	!0
  !0 !0 !0 !0 !0 
!0F Xd#

03
=A
IL
	
 $
 Xd#

03
=A
IL
	
 $





)$AA'+A3=AJNA	A,I6NZZ8<Z	Z(ZZ59Z	Z8J$*=&*=3=*=VZ*=	*=X#
"
K 3 3 1 1 . . 1 1 ##			
	
	
##""
""			
	
	

		
##%%%%	/ /r   r   c                  Z    e Zd ZddZed	d       Zed
d       Zedd       ZddZddZ	y)PolarsSeriesNamespacec                    || _         y r   _seriesr   s     r   r   zPolarsSeriesNamespace.__init__  s	    r   c                    | j                   S r   r  r   s    r   	compliantzPolarsSeriesNamespace.compliant  s    ||r   c                .    | j                   j                  S r   )r  r   r   s    r   r   zPolarsSeriesNamespace.native  s    ||"""r   c                .    | j                   j                  S r   )r  r   r   s    r   r   zPolarsSeriesNamespace.name  s    ~~"""r   c                6    | j                   j                         S r   )r  r   r   s    r   r   z,PolarsSeriesNamespace.__narwhals_namespace__  s    ~~4466r   c                6    | j                   j                         S r   )r  r   r   s    r   r   zPolarsSeriesNamespace.to_frame  s    ~~&&((r   N)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    sM       # # # #7)r   r  c                      e Zd Zy)r  Nr   r  r  r   r   r   r  r        r   r  c                  h    e Zd Zd	dZd
dZ	 	 	 	 	 	 	 	 	 	 ddZ	 	 	 	 	 	 	 	 ddZddZddZddZ	y)r  c                    | j                   }| j                         }| j                         j                  |j	                  |      j
                  j                               j                  |      S r   )r   r   r   r   r   r  to_titlecaser   r   r   r   s      r   r  z(PolarsSeriesStringNamespace.to_titlecase#  sS    yy((*}}%%bffTl&6&6&C&C&EFQQRVWWr   c                    | j                   }| j                         }| j                         j                  |j	                  |      j
                  j                  |            j                  |      S r   )r   r   r   r   r   r  zfillr   )r   r  r   r   s       r   r  z!PolarsSeriesStringNamespace.zfill(  sU    yy((*}}%%bffTl&6&6&<&<U&CDOOPTUUr   c                   t        |      }| j                  j                  | j                  j                  j                  ||||            S )N)literaln)r   r  r   r   r  replace)r   valuepatternr  r  value_natives         r   r  z#PolarsSeriesStringNamespace.replace-  sD     &e,~~**KKOO##G\7a#P
 	
r   c                   t        |      }| j                  j                  | j                  j                  j                  |||            S N)r  )r   r  r   r   r  replace_all)r   r  r  r  r  s        r   r  z'PolarsSeriesStringNamespace.replace_all5  sB     &e,~~**KKOO''w'O
 	
r   c                   t        |      }| j                  j                  | j                  j                  j                  ||            S r  )r   r  r   r   r  contains)r   r  r  pattern_natives       r   r  z$PolarsSeriesStringNamespace.contains=  s>    '0~~**KKOO$$^W$E
 	
r   c                    | j                   j                  | j                  j                  j	                  t        |                  S r   )r  r   r   r  starts_withr   )r   prefixs     r   r  z'PolarsSeriesStringNamespace.starts_withC  s4    ~~**KKOO''v(>?
 	
r   c                    | j                   j                  | j                  j                  j	                  t        |                  S r   )r  r   r   r  	ends_withr   )r   suffixs     r   r  z%PolarsSeriesStringNamespace.ends_withH  s4    ~~**KKOO%%nV&<=
 	
r   Nr  )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  r  r  r   r   r   r  r     so    X
V

!
,/
=A
FI
	

!
,/
=A
	




r   r  c                      e Zd Zy)r  Nr  r   r   r   r  r  N  r  r   r  c                      e Zd ZddZddZy)r  c                    | j                   }| j                         }| j                         j                  |j	                  |      j
                  j                               j                  |      S r   )r   r   r   r   r   r  rq   r   r  s      r   rq   zPolarsSeriesListNamespace.lenV  sR    yy((*}}%%bffTl&7&7&;&;&=>II$OOr   c                    | j                   }| j                         }| j                         j                  |j	                  |      j
                  j                  |            j                  |      S r   )r   r   r   r   r   r  r  r   )r   ro   r   r   s       r   r  z"PolarsSeriesListNamespace.contains[  sU    yy((*}}%%bffTl&7&7&@&@&FGRRSWXXr   Nr  )ro   r3   r   r   )r   r  r  rq   r  r   r   r   r  r  S  s    P
Yr   r  c                      e Zd Zy)r  Nr  r   r   r   r  r  a  r  r   r  )S
__future__r   typingr   r   r   r   r   polarsr   narwhals._polars.utilsr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   narwhals._utilsr   r   r   narwhals.dependenciesr   r   collections.abcr   r   r   r   typesr    r!   r"   r#   pandaspdpyarrowpatyping_extensionsr$   r%   r   r&   r'   r   r)   narwhals._typingr*   r+   r,   narwhals.dtypesr-   narwhals.seriesr.   narwhals.typingr/   r0   r1   r2   r3   r4   r5   r6   r7   r  r8   	frozensetr   r   r  r  r  r  r  r  r   r   r   <module>r     sh   " ? ?      A @ DEE 22.B:*8%&   	A#*;#7y7
I  SU pp	/ p	/f).|RYY/FG ).2<3JK
+
0ryy1HI+
\-lBII.EF
Y.|RYY/FGY0ryy1HIr   