
    >ie                    >   d dl mZ d dlZd dlZd dlZd dlZd dlZd dl	m
Z
  e
ej                  Ze e
d          k    Ze e
d          k    Ze e
d          k    Ze e
d          k    Zej        dk    Zej        d	k    Zej        d
k    Zej        dk    Zej        dk    Zej        dk    Zd dlmZ d Zd Zd Zd Zd Z d+dZ!d,dZ"d Z#d Z$ej%        d-d.d            Z&ej%        d             Z'ej%        d             Z(ej%        d              Z)ej%        d!             Z*ej%        d"             Z+ej%        d/d$            Z,ej%        d%             Z-ej%        d&             Z.ej%        d'             Z/erej0        j1        Z1nej2        j3        j1        Z1d0d)Z4d0d*Z5dS )1    )annotationsN)Versionz1.3.1z1.3.3z1.4.0z1.5.0   )r   r      )r   r   r   )r   r   r   )r   r   r   )r   r   r   c                    t          j        | |g|R i | t          | j        t          j                  sJ |  d            t          |j        t          j                  sJ | d            d S )Nz is not categorical dtype)tmassert_extension_array_equal
isinstancedtypepdCategoricalDtype)leftrightargskwargss       6lib/python3.11/site-packages/dask/dataframe/_compat.pyassert_categorical_equalr      s    #D%A$AAA&AAA
B'  * *
)))* * * R(  + +
***+ + + + +    c                    t          j        |           }t          j        |          }t          j                            ||           | |          }||          }t          j                            ||           d S N)r   isnanptestingassert_array_equal)r   r   left_naright_na
left_validright_valids         r   assert_numpy_array_equalr   $   si    gdmmGwu~~HJ!!'8444whJ	"KJ!!*k:::::r   c                     t           j                            dd          } t          t          j                  d d         }t          j        | |t          d                    S )N      ABCDindexcolumns)r   randomrandnliststringascii_lettersr   	DataFrame)datar%   s     r   makeDataFramer.   .   sM    9??2q!!D%&&ss+E<E4<<@@@@r   c                 H    t                      } t                      | _        | S r   )r.   makeDateIndexr%   )r-   s    r   makeTimeDataFramer1   4   s    ??DDJKr   c                 *    t                      d         S )NA)r1    r   r   makeTimeSeriesr5   :   s    s##r   r!   Bc                0    t          j        d| |          S )N2000periodsfreq)r   
date_rangekr;   s     r   r0   r0   >   s    =6666r   Dc                0    t          j        d| |          S )Nz1 dayr9   )r   timedelta_ranger=   s     r   makeTimedeltaIndexrB   B   s    gqt<<<<r   c                     t                      } | j        }t          j        |dk    t          j        |          }t          j        || j        | j                  S )Nr   r$   )	r.   valuesr   wherenanr   r,   r%   r&   )dfr-   s     r   makeMissingDataframerH   F   sF    	B9D8D1Hbfd++D<BHbjAAAAr   c            	         t          j        g dg dd t          d          D             t          j        dd          d          } | S )N)        r   r      r"   )rJ   r   r   r   r   c                    g | ]}d | S )foor4   ).0is     r   
<listcomp>z&makeMixedDataFrame.<locals>.<listcomp>R   s    ...)))...r      z
2009-01-01)r:   )r3   r6   Cr?   )r   r,   ranger<   )rG   s    r   makeMixedDataFramerT   M   s_    	""""""..U1XX...|Q777		
 	

 
B Ir   Fshow_nuisance_warningboolc              #    K   g d}| |vr\t           rUt          sNt          j                    5  t          j        ddt
                     d V  d d d            d S # 1 swxY w Y   d S |sY| |vrUt           sNt          j                    5  t          j        ddt
                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )N)summedianprodminmaxstdvarquantileignorez!The default value of numeric_onlymessagecategoryz)Dropping of nuisance columns in DataFrame)PANDAS_GE_150PANDAS_GE_200warningscatch_warningsfilterwarningsFutureWarning)namerU   supported_funcss      r   check_numeric_only_deprecationrl   Y   s     WWWO?""}"]"$&& 	 	#;&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 "&*/&A&A-&A$&& 	 	#C&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s#   !AA!A!B55B9<B9c               #     K   t           sOt          j        d          5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )NT)recordr`   zDropping of nuisance columns)rd   rf   rg   rh   ri   r4   r   r   check_nuisance_columns_warningro   r   s       $D111 	 	#8-   EEE		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s    AAAc               #     K   t           rMt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   zS.*Call without passing 'axis' instead|.*Operate on the un-grouped DataFrame insteadPANDAS_GE_210rf   rg   rh   ri   r4   r   r   check_groupby_axis_deprecationrs   ~   s       	$&& 	 	#e  
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s    A

AAc               #     K   t           rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   zThe default of observed=Falsera   rq   r4   r   r   check_observed_deprecationru      s       	$&& 	 	#7&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	   !AAAc               #     K   t           rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   z#The 'axis' keyword|Support for axisra   rq   r4   r   r   check_axis_keyword_deprecationrx      s       	$&& 	 	#=&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	rv   c               #     K   t           rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   zthe convert_dtype parameterra   rq   r4   r   r   check_convert_dtype_deprecationrz      s       	$&& 	 	#5&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	rv   catch_deprecation_warningsc              #     K   t           rP| rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   z0.*DatetimeProperties.to_pydatetime is deprecatedra   rq   )r{   s    r   check_to_pydatetime_deprecationr}      s       	3 	$&& 	 	#J&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   !AAAc               #     K   t           rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   zReturning a DataFramera   rq   r4   r   r   !check_apply_dataframe_deprecationr      s       	$&& 	 	#/&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	rv   c               #     K   t           rNt          j                    5  t          j        ddt                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   z&DataFrame.applymap has been deprecatedra   rq   r4   r   r   $check_applymap_dataframe_deprecationr      s       	$&& 	 	#@&   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	rv   c               #     K   t           rUt          sNt          j                    5  t          j        ddt
                     d V  d d d            d S # 1 swxY w Y   d S d V  d S )Nr`   zMinvalid value encountered in double_scalars|Degrees of freedom <= 0 for slicera   )re   PANDAS_GE_201rf   rg   rh   RuntimeWarningr4   r   r    check_reductions_runtime_warningr      s       	] 	$&& 	 	#g'   
 EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   !AAAreturnc                    	 t           j        j                            |           S # t          $ r0 ddlm}m}m}  ||           o ||            o ||            cY S w xY w)Nr   )is_bool_dtypeis_complex_dtypeis_numeric_dtype)	r   apitypesis_any_real_numeric_dtypeAttributeErrorpandas.api.typesr   r   r   )arr_or_dtyper   r   r   s       r   r   r      s    
 v|55lCCC 
 
 
VVVVVVVVVV \** 0$$\2220!M,///	
 	
 	

s   #& 7A A c                    t          | d          r| j        }n| }t          s%t          j        j                            |d          S t          j        j                            |          S )Nr   r*   )hasattrr   re   r   r   r   is_dtype_equalis_string_dtype)r   r   s     r   r   r     s_     |W%% " <v|**5(;;;6<''...r   )r!   r6   )r!   r?   )NF)rU   rV   )r{   rV   )r   rV   )6
__future__r   
contextlibr*   rf   numpyr   pandasr   packaging.versionr   __version__PANDAS_VERSIONPANDAS_GE_131PANDAS_GE_133PANDAS_GE_140rd   majorre   releaser   PANDAS_GE_202rr   PANDAS_GE_211PANDAS_GE_220pandas.testingr   r   r   r   r.   r1   r5   r0   rB   rH   rT   contextmanagerrl   ro   rs   ru   rx   rz   r}   r   r   r   errorsIndexingErrorcoreindexingr   r   r4   r   r   <module>r      sQ   " " " " " "               % % % % % %(('''"2"22'''"2"22'''"2"22'''"2"22$)&)3&)3&)3&)3&)3      + + +; ; ;A A A  $ $ $7 7 7 7= = = =B B B	 	 	     0    
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  3I+MMG$2M
 
 
 

/ 
/ 
/ 
/ 
/ 
/r   