
    >ies              
      .   d dl mZ d dlZ ej        d           d dlZd dlmZ d dl	m
Z
mZ 	 d dlZn# e$ r dZY nw xY wej                            d ej        dej                            e d          	          d
g          Zed             Zej        j        d             Zed             Zed             Zeej                            ddd ej        d           ej        d          g          d                         Zed             ZdS )    )annotationsNnumpy)	assert_eq	same_keysinternal_methodtdigestzRequires crick)reason)marksdaskc                r   t          j        dd          }g d}t          t          j        |||           t	          j        g d|j                             t	          j        g d          }t          j        |d	          }t          j        |||           }t          |t	          j        g d
|j                             t          t          j        |||           t          j        |||                     sJ t          t          j        |||           t          j        |ddg|                     rJ | dk    rnt	          j        g d          }t          j        |d	          }t          t          j        |g d          t	          j        g d|j                             d S d S )N      chunks)r   2   d   r      r   r   dtype)r   r      r   r   r      r   )   )r   r   r   r   r   r   )ar   dr   r   e)r   r   r   )	daonesr   
percentilenparrayr   
from_arrayr   )r   r   qsxresults        Alib/python3.11/site-packages/dask/array/tests/test_percentiles.pytest_percentiler*      s   
d###A	B
a_===
!'***  
 	+++,,A
a%%%A]1b/BBBFfbhzzz>>>???
a_===
a_===     
a_===
a!R/BBB    
 )##H33344M!D)))M!\\\**BH___AG,T,T,T	
 	
 	
 	
 	
 $#    c                 8   	 dd l } n# t          $ r Y d S w xY w|                     g d          }|                     g d          }||d}t          j        |dd          }t          j        |dg          }|                                j        |j        k                                    sJ |                                j	        dgk                                    sJ t          t          j        |dg          t          j        |dg                    sJ d S )Nr   )AliceBobCharlieDennisr-   r-   ))r'   r   )r'   r   r'   ))   r1   r   r   )pandasImportErrorCategoricalr    Arrayr"   compute
categoriesallcodesr   )pdx0x1dskr'   ps         r)   !test_percentile_with_categoricalsr?   >   s*      	OOO	P	PB	OOO	P	PB2
&
&C
c),,,A
a"AIIKK"bm388:::::IIKK!$))+++++R]1rd++R]1rd-C-CDDDDDDDs    
c                    t          j        dd          }t          t          j        |g d|           t	          j        g d|j                             d S )N
   )r   r   r   r   )rA   r   Z   r   r   r   r    r!   r   r"   r#   r$   r   r   r'   s     r)   "test_percentiles_with_empty_arraysrF   Q   sb    
<(((A
aGGG
!'***    r+   c                    t          j        dd          }t          t          j        |g |           t	          j        g |j                             d S )NrA   rB   r   r   r   rD   rE   s     r)   test_percentiles_with_empty_qrH   Z   sZ    
<(((A
a_===
17###    r+   qr   g      @c                    t          j        dd          }t          t          j        |||           t	          j        dg|j                             d S )Nr   r   r   r   r   r   rD   )r   rI   r   s      r)   'test_percentiles_with_scaler_percentilerK   c   s^    
 	d###A
aO<<<
!AG$$$    r+   c                   t           j                                                            dd          }t          j        fdz  f|_        t          j        |d|                                           }d|cxk     rdk     sn J t          j        |d	d
g|                                           \  }}d|cxk     rdk     sn J d|cxk     rdk     sn J ||k     sJ d S )Ni  )r   r   rA   r   r   g?g?(   <   )r    randomdefault_rngr#   nan_chunksr"   r6   )r   r'   r(   r   bs        r)   test_unknown_chunk_sizesrT   o   s    
	&&tF&;;A&R!AI]1b/BBBJJLLF#=RHoFFFNNPPDAq====S==========S======q555555r+   )
__future__r   pytestimportorskipr   r#   
dask.arrayr$   r    dask.array.utilsr   r   crickr3   markparametrizeparamskipifpercentile_internal_methodsr*   skipr?   rF   rH   int64float64rK   rT    r+   r)   <module>rd      s   " " " " " "   G              1 1 1 1 1 1 1 1LLLL   EEE %k55V[//E	BR/SS	
 	
 	
 		   
 
 
@ E E E$       q#xrx{{JBJqMMBCC  DC  
 
 
 
 
s   3 ==