
    Owg                         d dl Zd dlZd dlZd dlmZmZmZmZ d dl	m
Z  ej                  ddgddggd       d	        Z G d
 d      Z G d d      Zy)    N)	DataFrameIndexSeries	Timestamplinearsinglenearesttablec                 $    dj                  |       S )N-)joinxs    _/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_quantile.py<lambda>r      s    sxxPQ{     paramsidsc                     | j                   S )z.(interpolation, method) arguments for quantile)param)requests    r   interp_methodr      s    
 ==r   c                   p   e Zd Zej                  j                  d e eej                  j                  ddg             eej                  j                  ddg            d       eddgd	
      g e eg dd             edgd	
      gg      d        Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zej                  j                  dg d       d!        Zej                  j                  d"d#dd	d#gd	dgg      d$        Zd% Zd& Zd' Zd( Z d) Z!d* Z"d+ Z#d, Z$d- Z%d. Z&d/ Z'y0)1TestDataFrameQuantilezdf,expected            )r   r         ?      @      ?name)g        N      ?       @Sparse[float]dtyper%   c                 r    |j                         }|j                  d      }t        j                  ||       y )Nr'   )quantileastypetmassert_series_equal)selfdfexpectedresults       r   test_quantile_sparsez*TestDataFrameQuantile.test_quantile_sparse   s-    * ???3
vx0r   c           	         |\  }}|}|j                  ddd||      }t        |j                  D 	cg c]  }	t        j                  ||	   d       c}	|j                  d      }
|dk(  rt        j                  ||
       nut        j                  |j                  |
j                         |j                  t        j                  j                  |d	             |j                  |
j                  k(  sJ |j                  d
dd||      }t        |j                  D cg c]%  }t        j                  |j                  |   d      ' c}|j                  d
      }
|dk(  rt        j                  ||
       y t        j                  |j                  |
j                         |j                  t        j                  j                  |d	             |j                  |
j                  k(  sJ y c c}	w c c}w )N皙?r   Taxisnumeric_onlyinterpolationmethod
   indexr$   r   z%Name set incorrectly for arraymanagerreason?r   Z   )r+   r   columnsnp
percentiler-   r.   assert_index_equalr=   applymarkerpytestmarkxfailr$   loc)r/   datetime_framer   using_array_managerr   r9   r:   r0   r2   colr1   dates               r   test_quantilez#TestDataFrameQuantile.test_quantile0   s    !.vad-PV  
 35::>CR]]2c7B'>**

 H$""684!!&,,?!!'0W " 
 ;;(--///ad-PV  
 9;BR]]266$<,B((

 H$""684!!&,,?!!'0W " 
 ;;(--///E ?( Cs    G/*G4c                     |\  }}t        g g d      j                  ddd||      }t        j                  |d         rt        j                  |d         sJ y )Nr   yr5   r   Tr6   r   rR   )r   r+   rC   isnan)r/   r   r9   r:   qs        r   
test_emptyz TestDataFrameQuantile.test_empty]   sa     -vBR()22ad-PV 3 
 xx#BHHQsV$444$4r   c                    |\  }}t        g dg dd      }|j                  dd||      }|j                  d      j                  d      }|dk(  r"|dz   j	                  t
        j                        }|d	k(  r1|r/|j                  t        j                  j                  d
             t        j                  ||       y )N)ArW   BrX   )r   r   r   r   )col1col2r"   Tr8   r9   r:   r8   r	   r
   Axis name incorrectly set.r>   )r   r+   medianrenamer,   rC   int64rF   rG   rH   rI   r-   r.   )	r/   r   r   rL   r9   r:   r0   rsxps	            r   test_non_numeric_exclusionz0TestDataFrameQuantile.test_non_numeric_exclusiond   s     -v 4lKL[[d-  
 YYDY)005I%s(""288,BW!4 1 19U 1 VW
r2&r   c                    |\  }}t        g dg ddg d      }|j                  dd||      }t        g dg dd	      }|d
k(  r|j                  t        j
                        }|dk(  r1|r/|j                  t        j                  j                  d             t        j                  ||       |j                  ddgd||      }t        ddgddgddgdddg      }|d
k(  rU|j                  dd d fxx   dz  cc<   |j                  dd d fxx   dz  cc<   |j                  t        j
                        }t        j                  ||d       y )Nr   r   r   r   r   r   rW   rX   r=   r"   r   r7   r9   r:   r          @r!   r<   r	   r
   r]   r>         ?r    g      ?rk   g      @r!   g      @r         ?T)check_index_type)r   r+   r   r,   rC   r`   rF   rG   rH   rI   r-   r.   ilocassert_frame_equal	r/   r   r   rL   r9   r:   r0   r2   r1   s	            r   	test_axiszTestDataFrameQuantile.test_axisq   s=    -vYY7yISqfU/EI%rxx0HW!4 1 19U 1 VW
vx0$Ka}V  
 ddd<S$K
 I%MM!Q$3&MM!Q$4'rxx0H
fhFr   c                 `   |\  }}t        g dg dg      }|j                  ddd||      }t        ddgd	dgd
      }|dk(  r|j                  t        j
                        }|dk(  r1|r/|j                  t        j                  j                  d             t        j                  ||       y )Nre   )abr   r"   r   Tr6         @      @r   r<   r	   r
   r]   r>   )r   r+   r   r,   rC   r`   rF   rG   rH   rI   r-   r.   rq   s	            r   test_axis_numeric_only_truez1TestDataFrameQuantile.test_axis_numeric_only_true   s     !.v	=12ad-PV  
 3*QF=I%rxx0HW!4 1 19U 1 VW
vx0r   c                 H   |\  }}t        j                  ddd      }t        |      }t        |      }|j	                  d||      }	t        dgdd	
      }
|dk(  r1|r/|j                  t        j                  j                  d             t        j                  |	|
       y )N
2016-01-01r   
US/PacificperiodstzFr[   z2016-01-02 00:00:00r"   datetime64[ns, US/Pacific])r$   r)   r
   r]   r>   )pd
date_ranger   r   r+   rF   rG   rH   rI   r-   r.   )r/   r   r   rL   r9   r:   dtiserr0   r2   r1   s              r   test_quantile_date_rangez.TestDataFrameQuantile.test_quantile_date_range   s     -vmmL!ESks^mF  
 "##5Q
 W!4 1 19U 1 VW
vx0r   c                    |\  }}t        g dg dt        j                  dd      g dd      }|j                  dd	d
||      }t	        g dd      }|dk(  r|dz  }|dk(  r1|r/|j                  t        j                  j                  d             t        j                  ||       d}	t        j                  t        |	      5  |j                  dd	d       d d d        y # 1 sw Y   y xY w)Nre   r&   rv   rw   20130101r   r}   )foobarbaz)rW   rX   CDr"   r   Tr6   rj   r#   r	   r
   r]   r>   z>'<' not supported between instances of 'Timestamp' and 'float'matchFr7   r8   )r   r   r   r+   r   rF   rG   rH   rI   r-   r.   raises	TypeError
r/   r   r   rL   r9   r:   r0   r2   r1   msgs
             r   test_quantile_axis_mixedz.TestDataFrameQuantile.test_quantile_axis_mixed   s     -v$]]:q9*	
 ad-PV  
 /4I%OHW!4 1 19U 1 VW
vx0 O]]9C0 	9KK!%K8	9 	9 	9s   	C''C0c                 6   |\  }}|dk(  r1|r/|j                  t        j                  j                  d             t	        g dg ddg d      }|j                  dd	||
      }t        ddgddgd      }|dk(  r|j                  t        j                        }t        j                  ||       |j                  dd||
      }|dk(  r|j                  t        j                        }t        j                  ||       |j                  dd||
      }t        g dg dd      }|dk(  r|j                  t        j                        }t        j                  ||       |j                  dd||
      }t        j                  ||       d}	t        j                  t        |	      5  |j                  dd||
       d d d        d}	t        j                  t        |	      5  |j                  dd       d d d        y # 1 sw Y   CxY w# 1 sw Y   y xY w)Nr
   r]   r>   re   rf   rg   rh   r"   r   ri   r&   rv   rW   rX   r<   r	   r=   r   rj   rB   z*No axis named -1 for object type DataFramer   r5   z.No axis named column for object type DataFramecolumnr7   )rF   rG   rH   rI   r   r+   r   r,   rC   r`   r-   r.   r   
ValueErrorr   s
             r   test_quantile_axis_parameterz2TestDataFrameQuantile.test_quantile_axis_parameter   s    -vW!4 1 19U 1 VWYY7yISqfU3*S#JSAI%rxx0H
vx0;;g]6  
 I%rxx0H
vx0SqfU/EI%rxx0H
vx0i}V  
 	vx0:]]:S1 	RKK"M&KQ	R>]]:S1 	,KK(K+	, 	,	R 	R	, 	,s   +H&HHHc                    t        g dg ddg d      }|j                  ddd      }t        g dg dd	      }t        j                  ||       t        j                  t        j                  g dg dg      dd
d      }t        |g ddd      }t        j                  ||       t        g dg ddg d      }|j                  ddd      }t        g dg dd	      }t        j                  ||       t        j                  t        j                  g dg dg      dd
d      }t        |g ddd      }t        j                  ||       |j                  ddgdd      }t        ddgddgddgdddg      }t        j                  ||       t        g g d      }|j                  dd
d      }t        j                  |d         rt        j                  |d         sJ t        g dg dg dgg d      }|j                  d dgd!"      }t        g d#g d$gd dgg d%      }t        j                  ||       y )&Nre   rf   rg   rh   r"   r   r	   r7   r9   r<   r   )r7   r:   r`   r=   r$   r)   r%   r&   rv   r   float64rl   lowerr%   r&   rv   rQ   r5   higherr   rR   r   r   r   r   r   r   r   r   r   rt   ru   crB   rm   midpoint)r9   r    r    r    r&   r&   r&   r=   rB   )
r   r+   r   r-   r.   rC   rD   arrayrp   rS   )r/   r0   r2   r1   exprT   s         r   test_quantile_interpolationz1TestDataFrameQuantile.test_quantile_interpolation   s    YY7yISq	B)93?
vx0 mmHHi+,	
 #YSH
vx0 _?C9USq	B/E
vx0mmHHo78	
 #YS	J
vx0 c4[qHc
SzsCj9#t
 	fh/ Rb)*KK!8K<xx#BHHQsV$444 	9i8/RdC[
C o.+#

 	fh/r   c                 t    |}|j                  dddd      }|d   t        j                  |d   d      k(  sJ y )Nr5   r   Tr   )r7   r8   r9   rW   r;   )r+   rC   rD   )r/   rK   r0   rT   s       r   $test_quantile_interpolation_datetimez:TestDataFrameQuantile.test_quantile_interpolation_datetime&  s@     KK!$hKOvr#w3333r   c                    |}|j                  d      }|d   t        j                  |d   d      k(  sJ |j                  ddd      }|d   t        j                  |d   d      k(  sJ t        j                  ||       y )Nr5   rW   r;   r   r   r   )r+   rC   rD   r-   r.   )r/   	int_framer0   rT   q1s        r   test_quantile_interpolation_intz5TestDataFrameQuantile.test_quantile_interpolation_int.  s     KKvr#w3333 [[1H[=#w"--34444
q"%r   c                 z   |\  }}t        g dg dg dgg d      }|j                  ddg||      }t        g d	g d
gddgg d      }|dk(  r|j                  t        j                        }|dk(  r1|r/|j                  t        j                  j                  d             t        j                  ||       y )Nr   r   r   r   r   rm   r"   r9   r:   r   r   r   r	   r
   r]   r>   r   r+   r,   rC   r`   rF   rG   rH   rI   r-   rp   rq   s	            r   test_quantile_multiz)TestDataFrameQuantile.test_quantile_multi;  s     -v	9i8/RdC[fUo.+#

 I%rxx0HW!4 1 19U 1 VW
fh/r   c                 |   |\  }}t        g dg dg dgg d      }|j                  ddgd||	      }t        g d
gdz  ddgg d      }|dk(  r|j                  t        j                        }|dk(  r1|r/|j                  t        j                  j                  d             t        j                  ||       y )Nr   r   r   r   r   rm   r"   r   ri   r   r   )r   r   r   r   r	   r
   r]   r>   r   rq   s	            r   test_quantile_multi_axis_1z0TestDataFrameQuantile.test_quantile_multi_axis_1J  s     -v	9i8/R3Ka}V  
 !$i
 I%rxx0HW!4 1 19U 1 VW
fh/r   c                    |\  }}t        g g d      j                  ddgd||      }t        t        j                  t        j                  gt        j                  t        j                  gdddg      }t	        j
                  ||       y )NrQ   r5   r@   r   ri   rh   )r   r+   rC   nanr-   rp   )r/   r   r9   r:   r2   r1   s         r   test_quantile_multi_emptyz/TestDataFrameQuantile.test_quantile_multi_emptyY  s~     -v"-.77#JQmF 8 
 66266""&&"&&)9:3*
 	fh/r   c                    t        j                  ddg      j                  |      }t        |ddgd      }|j	                  dd      }t        d	gd
gd      }t        j                  ||       |j	                  dd      }t        t        d      d	gdd
gd      }t        j                  ||       |j	                  dgd      }t        t        d      j                  |      d	ddg      }t        j                  ||       t        j                  ddg      j                  |      |d<   |ddg   j	                  ddd      }t        t        d      t        d      gddgdd| d      }t        j                  ||       |ddg   j	                  dgdd      }t        t        d      t        d      ggdgddgd| d      }t        j                  ||       |ddg   j	                  dd      }t        g g t        j                  d      }t        j                  ||       |ddg   j	                  dgd      }t        dgg       }t        j                  ||       y )N20102011r      rt   ru   r"   Tr\   rk   ru   r<   Fz2010-07-02 12:00:00rt   rh   2012r   r   r   z2011-07-02 12:00:00M8[]r   r=   rB   r)   r=   r)   r$   r   )r   to_datetimeas_unitr   r+   r   r-   r.   r   rp   rC   r   )r/   unitr   r0   r2   r1   s         r   test_quantile_datetimez,TestDataFrameQuantile.test_quantile_datetimec  sr   nnff-.66t<S1v./ St43%u37
vx0 Su5,-s3C:C
 	vx0 cU712::4@sK%
 	fh/ ..&&!12::4@3S#J((15(I,-y9N/OPa&vQ-	
 	vx0S#J((#QU(K-.	:O0PQR%FvQ-	
 	fh/ S#J((4(@"BbjjsC
vx0S#J((#T(BC5"5
fh/r   r)   )datetime64[ns]r   ztimedelta64[ns]z	Period[D]c                    |\  }}t        ddg|      }|j                  ddd||      }t        g g d|      }t        j                  ||       |j                  dgdd||      }t        dgg 	      }t        j
                  ||       y )
Nrt   ru   rB   r)   r"   r   Fr6   r   r   )r   r+   r   r-   r.   rp   )r/   r)   r   r9   r:   r0   resr1   s           r   test_quantile_dt64_emptyz.TestDataFrameQuantile.test_quantile_dt64_empty  s     !.vSz7kkae=QW  
 "BS>
sH- kkE'  
 C5"5
c8,r   invalidr   c                     d}|\  }}t        j                  t        |      5  |j                  |||       d d d        y # 1 sw Y   y xY w)Nz2percentiles should all be in the interval \[0, 1\]r   r   )rG   r   r   r+   )r/   r   rK   r   r   r9   r:   s          r   test_quantile_invalidz+TestDataFrameQuantile.test_quantile_invalid  sN    D -v]]:S1 	Y##G=QW#X	Y 	Y 	Ys   AA
c           	      .   |\  }}|dk(  r1|r/|j                  t        j                  j                  d             t	        t        d      t        d      t        d      gt        dd      t        dd      t        dd      gt        j                  d	      t        j                  d
      t        j                  d      gd      }|j                  dd||      }t        t        d      t        dd      t        j                  d
      gdg d      }t        j                  ||       |j                  dgd||      }t	        t        d      t        dd      t        j                  d
      ggdgg d      }t        j                  ||       y )Nr
   r]   r>   
2011-01-01
2011-01-02
2011-01-03
US/Easternr~   1 days2 days3 daysrW   rX   r   r"   Fr[   r$   r=   r   )rF   rG   rH   rI   r   r   r   	Timedeltar+   r   r-   r.   rp   	r/   r   r   rL   r9   r:   r0   r   r   s	            r   test_quantile_boxz'TestDataFrameQuantile.test_quantile_box  s    -vW!4 1 19U 1 VW l+l+l+ l|<l|<l|< LL*LL*LL*
( kke=  
 ,',<8X&
 !
 	sC(kkE]6  
  l+l|<LL* %#

 	c3'r   c                 @   t        t        d      t        j                  t        d      t        d      gt        d      t        d      t        j                  t        d      gt        dd      t        j                  t        dd      t        dd      gt        dd      t        dd      t        j                  t        dd      gt        j                  d      t        j                  d      t        j                  d      t        j                  gt        j                  t        j                  d      t        j                  d      t        j                  d      gd	t        d
            }|j                  dd      }t        t        d      t        d      t        dd      t        dd      t        j                  d      t        j                  d      gdt        d
            }t        j                  ||       |j                  dgd      }t        t        d      t        d      t        dd      t        dd      t        j                  d      t        j                  d      ggdgt        d
            }t        j                  ||       y )Nr   r   r   r   r   r   r   r   )rW   rt   rX   ru   r   r   AaBbCcr   r"   Fr\   r   r   )r   r   r   NaTr   listr+   r   r-   r.   rp   )r/   r0   r   r   s       r   test_quantile_box_natz+TestDataFrameQuantile.test_quantile_box_nat  s(    l+FFl+l+	 l+l+FFl+	 l|<FFl|<l|<	 l|<l|<FFl|<	 LL*LL*LL*FF	 FFLL*LL*LL*	?%L NO(
T kk#Ek2,',',<8,<8X&X& x.
 	sC(kk3%ek4 l+l+l|<l|<LL*LL*	 %N
 	c3'r   c                 6   |\  }}|dk(  r1|r/|j                  t        j                  j                  d             t	        t        j                  dd      t        j                  dd      d      }t
        j                  |j                  d<   |j                  d||	      }t        d
|dk(  rdnd
gddgd      }t        j                  ||       |j                  ddg||	      }t	        d
dg|dk(  rddgnd
dgdddg      }t        j                  ||       |j                  dd||      }t        t        j                  dd      d      }t        j                  ||       |j                  ddgd||      }t	        t        j                  dd      gdz  ddg      }|dk(  rt
        j                  |j                  d<   t        j                  ||       t
        j                  |d<   |j                  d||	      }t        d
t
        j                  gddgd      }t        j                  ||       |j                  ddg||	      }t	        d
dgt
        j                  t
        j                  gdddg      }t        j                  ||       y )Nr
   r]   r>   r   g      @r   )r   r   r"   r   rv   r   rk   rt   ru   r<   rl   rw   g      
@rh   ri   r%   r#   r   r	   )r   r   )rF   rG   rH   rI   r   rC   aranger   ro   r+   r   r-   r.   rp   r   s	            r   test_quantile_nanz'TestDataFrameQuantile.test_quantile_nanA  s[    -vW!4 1 19U 1 VWRYYq#.RYYq#5FGHkk#]6kJ(2#<S#JUX
 	sC(kk3+]6kR3Z$1X$=c4[C: +
 	c3'kk#A]6kRRYYsC(s3
sC(kk$Ka}V  
 3,-1#tEI% ffCHHUO
c3' &&3kk#]6kJc266]3*3?
sC(kk3+]6kRsCj/?@dT
c3'r   c                 ^   |\  }}|dk(  r1|r/|j                  t        j                  j                  d             t	        dt
        j                  t
        j                  t
        j                  gid| d      }|j                  dd	||
      }t        t
        j                  gdgdd| d      }	t        j                  ||	       |j                  dgd	||
      }t	        dt
        j                  gidgd| d      }	t        j                  ||	       t	        t        d      t        d      t        d      gt
        j                  t
        j                  t
        j                  gdd| d      }|j                  dd	||
      }t        t        d      t
        j                  gddgdd| d      }	t        j                  ||	       |j                  dgd	||
      }t	        t        d      t
        j                  ggdgddgd| d      }	t        j                  ||	       y )Nr
   r]   r>   rt   r   r   r(   r"   Fr[   r   )r=   r)   z
2012-01-01z
2012-01-02z
2012-01-03r   ru   r   )rF   rG   rH   rI   r   r   r   r+   r   r-   r.   rp   r   )
r/   r   r   rL   r   r9   r:   r0   r   r   s
             r   test_quantile_natz'TestDataFrameQuantile.test_quantile_natp  s"    -vW!4 1 19U 1 VWbffbffbff56D6mLkke=  
 bffXcUc$qMJ
sC(kkE]6  
 rvvhuc$qMJ
c3'  l+l+l+
 ffbffbff- vQ-

 kke=  
 |$bff-*vQ-	
 	sC(kkE]6  
 %rvv./%#JvQ-	
 	c3'r   c                 z   |\  }}t        ddgd      }|j                  d||      }t        t        j                  t        j                  gddgd      }t        j                  ||       |j                  dg||      }t        t        j                  t        j                  ggddgdg      }t        j                  ||       |j                  dd	||
      }t        g g dd      }t        j                  ||       |j                  dgd	||
      }t        g dg      }t        j                  ||       y )Nrt   ru   r   r   r"   r   r<   )rB   r=   r   ri   r   )r   r+   r   rC   r   r-   r.   rp   r/   r   r9   r:   r0   r   r   s          r   "test_quantile_empty_no_rows_floatsz8TestDataFrameQuantile.test_quantile_empty_no_rows_floats  s    -vSz;kk#]6kJbffbff%c3ZcB
sC(kk3%}VkL"&&"&&)*S#JseL
c3'kk#A]6kRRr=
sC(kk3%a}VkT3%0
c3'r   c                     |\  }}t        ddgd      }|j                  d||      }t        t        j                  t        j                  gddgd      }t        j                  ||       y )Nrt   ru   r`   r   r"   r   r<   )r   r+   r   rC   r   r-   r.   r   s          r    test_quantile_empty_no_rows_intsz6TestDataFrameQuantile.test_quantile_empty_no_rows_ints  s_     -vSz9kk#]6kJbffbff%c3ZcB
sC(r   c                 &   |\  }}t        ddgd      }|j                  dd||      }t        t        j                  t        j                  gddgdd      }t        j                  ||       |d   j                  j                  d	      |d<   |j                  dd||      }|j                  t              }|d
k(  rGd}t        j                  t        |      5  |j                  t        j                  d      }d d d        t        j                  ||       |d   j                  j                  d	      |d<   |j                  dd||      }|j                  |d   j                         }t        j                  ||       y # 1 sw Y   xY w)Nrt   ru   r   r   r"   Fr[   r   z
US/Centralr	   z.The 'downcast' keyword in fillna is deprecatedr   )downcast)r   r+   r   r   r   r-   r.   dttz_localizer,   objectassert_produces_warningFutureWarningfillnarC   r   r)   )r/   r   r9   r:   r0   r   r   r   s           r    test_quantile_empty_no_rows_dt64z6TestDataFrameQuantile.test_quantile_empty_no_rows_dt64  sv    -vSz1ABkke=  
 VVRVVS#J6FS
 	sC( S'**((63kke=  
 jj I%BC++ME 9jj%j89
sC( S'**((63kke=  
 jjC'
sC(9 9s   "FFc                    |\  }}t        t        j                  dd            }d|j                  _        |j                  dd||      }t        g g dt        j                        }d|j                  _        t        j                  ||       |j                  dgd||      }t        g dgg 	      }d|j                  _        t        j                  ||       y )
Nz1/1/18r   r   zcaptain tightpantsr"   Tr[   r   r   )r   r   r   rB   r$   r+   r   rC   r   r=   r-   r.   rp   )r/   r   r9   r:   r0   r2   r1   s          r   test_quantile_empty_no_columnsz4TestDataFrameQuantile.test_quantile_empty_no_columns  s     -vr}}Xq9:.

d-  
 "BS

C2
vx0EM&  
 Rub9 4
fh/r   c                    |\  }}t        t        j                  j                  d      j	                  d      g d      }|d   dz  |d<   |d   }|s$t        |j                  j                        dk(  sJ |j                  d||       |r>d	|j                  d
<   |j                  d   |d   d
   k(  sJ |j                  d   d	k7  sJ y d	|j                  d
<   |j                  d   |d   d
   k(  sJ |j                  d   d	k(  sJ y )Nr   )r   r   r   r   rW   r   Fr[   c   r   )r   r   )r   rC   randomdefault_rngstandard_normallen_mgrblocksr+   ro   values)r/   rL   r   using_copy_on_writer9   r:   r0   r   s           r   test_quantile_item_cachez.TestDataFrameQuantile.test_quantile_item_cache  s    !.vII!!!$44V<o
 S'A+3g"rww~~&!+++
mFSCHHQK774=BsGAJ...774=B&&&CJJqM774=BsGAJ...774=B&&&r   c                     t        j                  t        d      5  t        t	        d            j                  dd       d d d        y # 1 sw Y   y xY w)NzInvalid method: foor   r   r"   r   )r:   rG   r   r   r   ranger+   r/   s    r   test_invalid_methodz)TestDataFrameQuantile.test_invalid_method  sB    ]]:-BC 	<eAh((U(;	< 	< 	<s   &AAc                     t        j                  t        d      5  t        t	        d            j                  ddd       d d d        y # 1 sw Y   y xY w)NzInvalid interpolation: foor   r   r"   r
   r   )r:   r9   r	  r  s    r    test_table_invalid_interpolationz6TestDataFrameQuantile.test_table_invalid_interpolation  sH    ]]:-IJ 	SeAh((WE(R	S 	S 	Ss   'AAN)(__name__
__module____qualname__rG   rH   parametrizer   r   r   arraysSparseArrayr3   rO   rU   rc   rr   rx   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      s   [[ !"))"7"7A"?@!"))"7"7A"?@ Sz, &!6oNOu3'	
$1%$1+0Z5'G01 1$94&,P70r4&00030j [[	
--, [[YQb	C8(DEY FY5(nJ(X-(^4(l(*) )D0&'0<Sr   r   c                      e Zd Z ej                   ej
                  ej                  j                   e	d            ej                  j                  d             ej                  ddd       ej                  ddd	
       ej                  dd       ej                   ej"                  d      d       ej                   ej"                  d      d      gd       d        Zej                  d        Zd Zd Zd Zd Zd Zej                  j3                  ddg g dgdg g dgdej4                  ej4                  gddgdgdej4                  ej4                  gddgdgg      d         Zej                  j3                  d!d"g g dd"gd"ej8                  ej8                  gddgdd"gg      d#        Zej                  j3                  d$ej4                  ej4                  g e	d%      dgg g dgg      d&        Zy')(TestQuantileExtensionDtyper;   z#raises when trying to add Intervalsr>   )marksrz   	   r   )r}   freqr{   r|   z1 Dayr   Int64r(   Float64c                 ,    t        | j                        S )N)strr)   r   s    r   r   z#TestQuantileExtensionDtype.<lambda>)  s    c!''l r   r   c                 ,    |j                   }d|_        |S NrW   )r   r$   )r/   r   idxs      r   r=   z TestQuantileExtensionDtype.index  s      mm
r   c                 d     ||      j                         }|t        u r	d|_        |S dg|_        |S r   )copyr   r$   rB   )r/   r=   frame_or_seriesobjs       r   r%  zTestQuantileExtensionDtype.obj1  s=     e$))+f$CH 
 %CK
r   c                 r    t        |t              r|j                  |      }|S |j                  |d      }|S )NFr\   )
isinstancer   r+   )r/   r%  qsr2   s       r   compute_quantilez+TestQuantileExtensionDtype.compute_quantile<  s:    c6"\\"%F  \\"5\9Fr   c                    t        j                  t        |      t         j                        }t         j                  j                  d      j                  |       |j                  |   }g d}| j                  ||      }|j                  }|j                  dk(  rd}t        |d   |d   |d   g||d	
      } t        |      |      }t        j                  ||       y )Nr(   r   r"   r   r   r  r  r   r   r   rW   r)   r=   r$   )rC   r   r  intpr   r   shufflero   r)  r)   r   typer-   assert_equal	r/   r   r%  r=   indexerr(  r2   	exp_dtyper1   s	            r   test_quantile_eaz+TestQuantileExtensionDtype.test_quantile_eaC  s    ))CJbgg6
		a ((1hhw&&sB/KK	;;'!!I 1XuQxr+9BS
 49X&
)r   c                    |j                   |j                  d<   |j                   |j                  d<   t        j                  t	        |      t        j
                        }t        j                  j                  d      j                  |       |j                  |   }g d}| j                  ||      }t        |d   |d   |d   g|j                  |d	
      } t        |      |      }t        j                  ||       y )Nr   r   r(   r   r+  r   r   rW   r,  )	_na_valuero   rC   r   r  r-  r   r   r.  r)  r   r)   r/  r-   r0  )r/   r%  r=   r2  r(  r2   r1   s          r   test_quantile_ea_with_naz3TestQuantileExtensionDtype.test_quantile_ea_with_naY  s    oo ))CJbgg6
		a ((1hhw&&sB/ 1XuQxr+5;;bs
 49X&
)r   c                 >   |j                   |j                  d d  t        j                  |j                  |j
                  k(        sJ t        j                  t        |      t        j                        }t        j                  j                  d      j                  |       |j                  |   }g d}| j                  ||      }|j                  g dd|j                         }t        ||d      } t        |      |      }t!        j"                  ||       y )	Nr(   r   r+  )r   r   r   T)
allow_fill
fill_valuerW   r<   )r7  ro   rC   alldtypesr)   r   r  r-  r   r   r.  r)  taker   r/  r-   r0  )r/   r   r%  r=   r2  r(  r2   r1   s           r   test_quantile_ea_all_naz2TestQuantileExtensionDtype.test_quantile_ea_all_nal  s    oovvcjjEKK/000 ))CJbgg6
		a ((1hhw&&sB/::lt:X("3749X&
)r   c                    t        j                  t        |      t         j                        }t         j                  j                  d      j                  |       |j                  |   }d}| j                  ||      }|j                  }|j                  dk(  rd}t        d|d   i|d      }t        |t              r|d   }||k(  sJ y t        j                  ||       y )	Nr(   r   r"   r  r  rW   r   )r)   r$   )rC   r   r  r-  r   r   r.  ro   r)  r)   r   r'  r-   r.   r1  s	            r   test_quantile_ea_scalarz2TestQuantileExtensionDtype.test_quantile_ea_scalar~  s     ))CJbgg6
		a ((1hhw&&sB/KK	;;'!!I3a/Ec6"}HX%%%""684r   z*dtype, expected_data, expected_index, axisr   r   r`   rt   ru   r   c                     t        ddg|      }|j                  d|      }t        |dt        |      d      }t	        j
                  ||       y )Nrt   ru   r   r"   r   r   r$   r=   r)   r   r+   r   r   r-   r.   )r/   r)   expected_dataexpected_indexr7   r0   r2   r1   s           r   test_empty_numericz-TestQuantileExtensionDtype.test_empty_numeric  sP     Sz7St,5+@	
 	vx0r   z:dtype, expected_data, expected_index, axis, expected_dtyper   c                     t        ddg|      }|j                  d|d      }t        |dt        |      |      }t	        j
                  ||       y )Nrt   ru   r   r"   Fr   rC  rD  )	r/   r)   rE  rF  r7   expected_dtyper0   r2   r1   s	            r   test_empty_datelikez.TestQuantileExtensionDtype.test_empty_datelike  sR     Sz7St%@5+@
 	vx0r   z#expected_data, expected_index, axisr   c                 $   t        t        j                  ddg      ddgt        j                  ddg      d      }|ddg   j                  d	|d
      }t	        |d	t        |      t        j                        }t        j                  ||       y )Nr   r   r   r   r   r   rt   r   r"   Tr   rC  )
r   r   r   r+   r   r   rC   r   r-   r.   )r/   rE  rF  r7   r0   r2   r1   s          r   test_datelike_numeric_onlyz5TestQuantileExtensionDtype.test_datelike_numeric_only  s     ^^VV$45V^^VV$45
 S#J((4d(K5+@


 	vx0r   N)r  r  r  rG   fixturer   r   IntervalIndexfrom_breaksr
  rH   rI   period_ranger   timedelta_ranger   rC   r   r=   r%  r)  r4  r8  r?  rA  r  r   rG  r   rJ  rL  r  r   r   r  r    s*    V^^FLL  ,,U2Y7kk''/T'U BOOL!#>BMM,lCBw2BHHYRYYq\1BHHYRYYq\3

 # ^^ *,*&*$5, [[4B"b"a (3*a8rvvrvv&c
A6		
11 [[Dr2q*:;/#sQ@PQ	
	1	1 [[-ffbffuQx+QK	
11r   r  )numpyrC   rG   pandasr   r   r   r   r   pandas._testing_testingr-   rM  r   r   r  r  r   r   <module>rV     sl         x 9g"67=R
@S @SFs1 s1r   