o
    Nrf                     @  s  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ejdkZd dlmZ dd Zdd Zdd Zdd Z dd Z!dAddZ"dBddZ#d d! Z$d"d# Z%ej&dCdDd'd(Z'ej&d)d* Z(ej&d+d, Z)ej&d-d. Z*ej&d/d0 Z+ej&d1d2 Z,ej&dEd4d5Z-ej&d6d7 Z.ej&d8d9 Z/ej&d:d; Z0erej1j2Z2nej3j4j2Z2dFd=d>Z5dFd?d@Z6dS )G    )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                 O  sV   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)tmZassert_extension_array_equal
isinstancedtypepdZCategoricalDtype)leftrightargskwargs r   _/var/www/html/software/conda/envs/catlas/lib/python3.10/site-packages/dask/dataframe/_compat.pyassert_categorical_equal   s   r   c                 C  sH   t | }t |}tj|| | |  }||  }tj|| d S N)r
   ZisnanptestingZassert_array_equal)r   r   Zleft_naZright_naZ
left_validZright_validr   r   r   assert_numpy_array_equal%   s   



r   c                  C  s4   t jdd} ttjd d }tj| |tddS )N      ZABCDindexcolumns)r   randomZrandnliststringascii_lettersr
   	DataFrame)datar   r   r   r   makeDataFrame/   s   r!   c                  C  s   t  } t | _| S r   )r!   makeDateIndexr   )r    r   r   r   makeTimeDataFrame5   s   r#   c                   C  s
   t  d S )NA)r#   r   r   r   r   makeTimeSeries;   s   
r%   r   Bc                 C     t jd| |dS )N2000periodsfreq)r
   
date_rangekr+   r   r   r   r"   ?      r"   Dc                 C  r'   )Nz1 dayr)   )r
   Ztimedelta_ranger-   r   r   r   makeTimedeltaIndexC   r/   r1   c                  C  s4   t  } | j}t|dktj|}tj|| j| jdS )Nr   r   )	r!   valuesr   wherenanr
   r   r   r   )dfr    r   r   r   makeMissingDataframeG   s   r6   c               	   C  s8   t g dg ddd tdD t jdddd} | S )	N)        r   r   r   r   )r7   r   r   r   r   c                 S  s   g | ]}d | qS )Zfoor   ).0ir   r   r   
<listcomp>S   s    z&makeMixedDataFrame.<locals>.<listcomp>   z
2009-01-01)r*   )r$   r&   Cr0   )r
   r   ranger,   )r5   r   r   r   makeMixedDataFrameN   s   r>   Fshow_nuisance_warningboolc                 c  s    g d}| |vr/t r/ts/t  tjddtd d V  W d    d S 1 s(w   Y  d S |sY| |vrYt sYt  tjddtd d V  W d    d S 1 sRw   Y  d S d V  d S )N)sumZmedianprodminmaxZstdvarZ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)namer?   Zsupported_funcsr   r   r   check_numeric_only_deprecationZ   s.   
"
"
rQ   c                   c  sV    t s&tjdd tddt d V  W d    d S 1 sw   Y  d S d V  d S )NT)recordrF   zDropping of nuisance columns)rJ   rL   rM   rN   rO   r   r   r   r   check_nuisance_columns_warnings   s   "
rS   c                   c  sR    t r$t  tddt d V  W d    d S 1 sw   Y  d S d V  d S )NrF   zS.*Call without passing 'axis' instead|.*Operate on the un-grouped DataFrame insteadPANDAS_GE_210rL   rM   rN   rO   r   r   r   r   check_groupby_axis_deprecation   s   
"
rV   c                   c  T    t r%t  tjddtd d V  W d    d S 1 sw   Y  d S d V  d S )NrF   zThe default of observed=FalserG   rT   r   r   r   r   check_observed_deprecation      
"
rX   c                   c  rW   )NrF   z#The 'axis' keyword|Support for axisrG   rT   r   r   r   r   check_axis_keyword_deprecation   rY   rZ   c                   c  rW   )NrF   zthe convert_dtype parameterrG   rT   r   r   r   r   check_convert_dtype_deprecation   rY   r[   catch_deprecation_warningsc                 c  sX    t r'| r't  tjddtd d V  W d    d S 1 s w   Y  d S d V  d S )NrF   z0.*DatetimeProperties.to_pydatetime is deprecatedrG   rT   )r\   r   r   r   check_to_pydatetime_deprecation      
"
r]   c                   c  rW   )NrF   zReturning a DataFramerG   rT   r   r   r   r   !check_apply_dataframe_deprecation   rY   r_   c                   c  rW   )NrF   z&DataFrame.applymap has been deprecatedrG   rT   r   r   r   r   $check_applymap_dataframe_deprecation   rY   r`   c                   c  sX    t r'ts't  tjddtd d V  W d    d S 1 s w   Y  d S d V  d S )NrF   zMinvalid value encountered in double_scalars|Degrees of freedom <= 0 for slicerG   )rK   PANDAS_GE_201rL   rM   rN   RuntimeWarningr   r   r   r    check_reductions_runtime_warning   r^   rc   returnc                 C  sT   zt jj| W S  ty)   ddlm}m}m} || o&||  o&||   Y S w )Nr   )is_bool_dtypeis_complex_dtypeis_numeric_dtype)	r
   apitypesis_any_real_numeric_dtypeAttributeErrorZpandas.api.typesre   rf   rg   )arr_or_dtypere   rf   rg   r   r   r   rj      s   rj   c                 C  s8   t | dr	| j}n| }tstjj|dS tjj|S )Nr	   r   )hasattrr	   rK   r
   rh   ri   Zis_dtype_equalis_string_dtype)rl   r	   r   r   r   rn     s   
rn   )r   r&   )r   r0   )NF)r?   r@   )r\   r@   )rd   r@   )7
__future__r   
contextlibr   rL   numpyr   Zpandasr
   Zpackaging.versionr   __version__ZPANDAS_VERSIONZPANDAS_GE_131ZPANDAS_GE_133ZPANDAS_GE_140rJ   majorrK   releasera   ZPANDAS_GE_202rU   ZPANDAS_GE_211ZPANDAS_GE_220ZPANDAS_GE_300Zpandas.testingr   r   r   r   r!   r#   r%   r"   r1   r6   r>   contextmanagerrQ   rS   rV   rX   rZ   r[   r]   r_   r`   rc   errorsZIndexingErrorcoreZindexingrj   rn   r   r   r   r   <module>   sl    






















