
    A>iS                         S SK rS SKrS SKrS SKJrJrJrJr  S SK	J
r  \R                  " SS/SS//S S9S	 5       r " S
 S5      r " S S5      rS r\R"                  R%                  SSS/5      S 5       rg)    N)	DataFrameIndexSeries	Timestamplinearsinglenearesttablec                 $    SR                  U 5      $ )N-)joinxs    g/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/frame/methods/test_quantile.py<lambda>r      s    sxxPQ{    paramsidsc                     U R                   $ )z.(interpolation, method) arguments for quantile)param)requests    r   interp_methodr      s    
 ==r   c                   `   \ rS rSr\R
                  R                  S\" \" \	R                  R                  SS/5      5      \" \	R                  R                  SS/5      5      S.5      \" SS	/S
S9/\" \" / SQSS95      \" S/S
S9//5      S 5       rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r\R
                  R                  S / S!Q5      S" 5       r\R
                  R                  S#S$SS
S$/S
S//5      S% 5       rS& rS' rS( r S) r!S* r"S+ r#S, r$S- r%S. r&S/ r'S0r(g1)2TestDataFrameQuantile   zdf,expected            )r   r         ?      @      ?name)g        N      ?       @Sparse[float]dtyper&   c                 r    UR                  5       nUR                  S5      n[        R                  " X25        g )Nr(   )quantileastypetmassert_series_equal)selfdfexpectedresults       r   test_quantile_sparse*TestDataFrameQuantile.test_quantile_sparse   s+    * ???3
v0r   c           	      .   Uu  pEUnUR                  SSSXES9n[        UR                   Vs/ s H  n[        R                  " Xh   S5      PM     snUR                  SS9n	US:X  a  [
        R                  " Xy5        OG[
        R                  " UR                  U	R                  5        UR                  U	R                  :X  d   eUR                  SS	SXES9n[        UR                   V
s/ s H'  n
[        R                  " UR                  U
   S
5      PM)     sn
UR                  SS9n	US:X  a  [
        R                  " Xy5        g [
        R                  " UR                  U	R                  5        UR                  U	R                  :X  d   eg s  snf s  sn
f )N皙?r   Taxisnumeric_onlyinterpolationmethod
   indexr%   r   ?r   Z   )r,   r   columnsnp
percentiler.   r/   assert_index_equalr?   r%   loc)r0   datetime_framer   r   r;   r<   r1   r3   colr2   dates              r   test_quantile#TestDataFrameQuantile.test_quantile0   sV    -ad-  
 35::>:CR]]27B':>**

 H$""64!!&,,?;;(--///ad-  
 9;BR]]266$<,B((

 H$""64!!&,,?;;(--///1 ? Cs   #F).Fc                     Uu  p#[        / / S.5      R                  SSSX#S9n[        R                  " US   5      (       a  [        R                  " US   5      (       d   eg )Nr   yr7   r   Tr8   r   rN   )r   r,   rC   isnan)r0   r   r;   r<   qs        r   
test_empty TestDataFrameQuantile.test_emptyQ   sb     -BR()22ad- 3 
 xx#BHHQsV$4$444$4r   c                 
   Uu  p4[        / SQ/ SQS.5      nUR                  SSX4S9nUR                  SS9R                  S5      nUS:X  a"  US-   R	                  [
        R                  5      n[        R                  " Xg5        g )	N)ArT   BrU   )r   r   r   r    )col1col2r#   Tr:   r;   r<   r:   r	   )	r   r,   medianrenamer-   rC   int64r.   r/   )r0   r   r   r;   r<   r1   rsxps           r   test_non_numeric_exclusion0TestDataFrameQuantile.test_non_numeric_exclusionX   s     - 4lKL[[d-  
 YYDY)005I%s(""288,B
r&r   c                    Uu  p#[        / SQ/ SQS./ SQS9nUR                  SSX#S9n[        / SQ/ SQSS	9nUS
:X  a  UR                  [        R
                  5      n[        R                  " XV5        UR                  SS/SX#S9n[        SS/SS/SS/S.SS/S9nUS
:X  aU  UR                  SS S 24==   S-  ss'   UR                  SS S 24==   S-  ss'   UR                  [        R
                  5      n[        R                  " XVSS9  g )Nr   r   r   r   r   r    rT   rU   r?   r#   r   r9   r;   r<   r!         @r"   r>   r	         ?r!   g      ?rh   g      @r"   g      @r         ?T)check_index_type)
r   r,   r   r-   rC   r\   r.   r/   ilocassert_frame_equalr0   r   r;   r<   r1   r3   r2   s          r   	test_axisTestDataFrameQuantile.test_axisc   s    -YY7yISqU/EI%rxx0H
v0$Ka}  
 ddd<S$K
 I%MM!Q$3&MM!Q$4'rxx0H
fFr   c                     Uu  p#[        / SQ/ SQ/5      nUR                  SSSX#S9n[        SS/[        S	5      SS
9nUS:X  a  UR	                  [
        R                  5      n[        R                  " XV5        g )Nrb   )abr    r#   r   Tr8         @      @r   r>   r	   )	r   r,   r   ranger-   rC   r\   r.   r/   rn   s          r   test_axis_numeric_only_true1TestDataFrameQuantile.test_axis_numeric_only_truey   sw     !.	=12ad-  
 3*E!H3?I%rxx0H
v0r   c                     Uu  p#[         R                  " SSSSS9n[        U5      n[        U5      nUR	                  SX#S9n[        S/S	S
S9n[
        R                  " Xx5        g )N
2016-01-01r   
US/Pacificns)periodstzunitFrX   z2016-01-02 00:00:00r#   datetime64[ns, US/Pacific]r%   r*   )pd
date_ranger   r   r,   r.   r/   )	r0   r   r;   r<   dtiserr1   r3   r2   s	            r   test_quantile_date_range.TestDataFrameQuantile.test_quantile_date_range   so     -mmL!4PSks^m  
 "##5Q
 	v0r   c           	      h   Uu  p#[        / SQ/ SQ[        R                  " SSS9/ SQS.5      nUR                  SS	S
X#S9n[	        / SQSS9nUS:X  a  US-  n[
        R                  " XV5        Sn[        R                  " [        US9   UR                  SS	SS9  S S S 5        g ! , (       d  f       g = f)Nrb   r'   rt   ru   20130101r   r}   )foobarbaz)rT   rU   CDr#   r   Tr8   rg   r$   r	   z>'<' not supported between instances of 'Timestamp' and 'float'matchFr9   r:   )
r   r   r   r,   r   r.   r/   pytestraises	TypeErrorr0   r   r;   r<   r1   r3   r2   msgs           r   test_quantile_axis_mixed.TestDataFrameQuantile.test_quantile_axis_mixed   s     -$]]:q9*	
 ad-  
 /4I%OH
v0 O]]9C0KK!%K8 100s   B##
B1c                    Uu  p#[        / SQ/ SQS./ SQS9nUR                  SSX#S9n[        SS	/S
S/SS9nUS:X  a  UR                  [        R
                  5      n[        R                  " XV5        UR                  SSX#S9nUS:X  a  UR                  [        R
                  5      n[        R                  " XV5        UR                  SSX#S9n[        / SQ/ SQSS9nUS:X  a  UR                  [        R
                  5      n[        R                  " XV5        UR                  SSX#S9n[        R                  " XV5        Sn[        R                  " [        US9   UR                  SSX#S9  S S S 5        Sn[        R                  " [        US9   UR                  SSS9  S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)Nrb   rc   rd   re   r#   r   rf   r'   rt   rT   rU   r>   r	   r?   r   rg   rB   z*No axis named -1 for object type DataFramer   r7   z.No axis named column for object type DataFramecolumnr9   )r   r,   r   r-   rC   r\   r.   r/   r   r   
ValueErrorr   s           r   test_quantile_axis_parameter2TestDataFrameQuantile.test_quantile_axis_parameter   s    -YY7yISqU3*S#JSAI%rxx0H
v0;;g]  
 I%rxx0H
v0SqU/EI%rxx0H
v0i}  
 	v0:]]:S1KK"MKQ 2>]]:S1KK(K+ 21 21 21s   F+F<+
F9<
G
c                 X   [        / SQ/ SQS./ SQS9nUR                  SSSS9n[        / SQ/ SQSS	9n[        R                  " X#5        [
        R                  " [
        R                  " / SQ/ SQ/5      SS
SS9n[        U/ SQSSS9n[        R                  " X#5        [        / SQ/ SQS./ SQS9nUR                  SSSS9n[        / SQ/ SQSS	9n[        R                  " X#5        [
        R                  " [
        R                  " / SQ/ SQ/5      SS
SS9n[        U/ SQSSS9n[        R                  " X#5        UR                  SS/SSS9n[        SS/SS/SS/S.SS/S9n[        R                  " X#5        [        / / S.5      nUR                  SS
SS9n[
        R                  " US   5      (       a  [
        R                  " US   5      (       d   e[        / SQ/ SQ/ SQ// SQS9nUR                  S S/S!S"9n[        / S#Q/ S$Q/S S// SQS%9n[        R                  " X#5        g )&Nrb   rc   rd   re   r#   r   r	   r9   r;   r>   r   )r9   r<   r\   r?   r%   r*   r&   r'   rt   r   float64ri   lowerr&   r'   rt   rM   r7   higherr   rN   r   r   r   r   r   r   r   r   r   rr   rs   crB   rj   midpoint)r;   r!   r!   r!   r'   r'   r'   r?   rB   )
r   r,   r   r.   r/   rC   rD   arrayrm   rO   )r0   r1   r3   r2   exprP   s         r   test_quantile_interpolation1TestDataFrameQuantile.test_quantile_interpolation   s    YY7yISq	B)93?
v0 mmHHi+,	
 #YSH
v0 _?C9USq	B/E
v0mmHHo78	
 #YS	J
v0 c4[qHc
SzsCj9#t
 	f/ Rb)*KK!8K<xx#BHHQsV$4$444 	9i8/RdC[
C o.+#

 	f/r   c                 r    UnUR                  SSSSS9nUS   [        R                  " US   S5      :X  d   eg )Nr7   r   Tr   )r9   r:   r;   rT   r=   )r,   rC   rD   )r0   rG   r1   rP   s       r   $test_quantile_interpolation_datetime:TestDataFrameQuantile.test_quantile_interpolation_datetime  s@     KK!$hKOvr#w3333r   c                    UnUR                  S5      nUS   [        R                  " US   S5      :X  d   eUR                  SSSS9nUS   [        R                  " US   S5      :X  d   e[        R                  " X45        g )Nr7   rT   r=   r   r   r   )r,   rC   rD   r.   r/   )r0   	int_framer1   rP   q1s        r   test_quantile_interpolation_int5TestDataFrameQuantile.test_quantile_interpolation_int  s}     KKvr#w3333 [[1H[=#w"--34444
q%r   c                     Uu  p#[        / SQ/ SQ/ SQ// SQS9nUR                  SS/X#S9n[        / S	Q/ S
Q/SS// SQS9nUS:X  a  UR                  [        R                  5      n[
        R                  " XV5        g )Nr   r   r   r   r   rj   r#   r;   r<   r   r   r   r	   r   r,   r-   rC   r\   r.   rm   rn   s          r   test_quantile_multi)TestDataFrameQuantile.test_quantile_multi#  sy     -	9i8/RdC[Uo.+#

 I%rxx0H
f/r   c                     Uu  p#[        / SQ/ SQ/ SQ// SQS9nUR                  SS/SX#S	9n[        / S
Q/S-  SS// SQS9nUS:X  a  UR                  [        R                  5      n[
        R                  " XV5        g )Nr   r   r   r   r   rj   r#   r   rf   r   r   )r   r   r   r   r	   r   rn   s          r   test_quantile_multi_axis_10TestDataFrameQuantile.test_quantile_multi_axis_10  s     -	9i8/R3Ka}  
 !$i
 I%rxx0H
f/r   c                    Uu  p#[        / / S.5      R                  SS/SX#S9n[        [        R                  [        R                  /[        R                  [        R                  /S.SS/S9n[        R
                  " XE5        g )NrM   r7   r@   r   rf   re   )r   r,   rC   nanr.   rm   )r0   r   r;   r<   r3   r2   s         r   test_quantile_multi_empty/TestDataFrameQuantile.test_quantile_multi_empty=  sx     -"-.77#JQm 8 
 66266""&&"&&)9:3*
 	f/r   c                    [         R                  " SS/5      R                  U5      n[        USS/S.5      nUR	                  SSS9n[        S	/S
/SS9n[        R                  " XE5        UR	                  SSS9n[        [        S5      S	/SS
/SS9n[        R                  " XE5        UR	                  S/SS9n[        [        S5      R                  U5      S	S.S/S9n[        R                  " XE5        [         R                  " SS/5      R                  U5      US'   USS/   R	                  SSSS9n[        [        S5      [        S5      /SS/SSU S3S9n[        R                  " XE5        USS/   R	                  S/SSS9n[        [        S5      [        S5      //S/SS/SU S3S9n[        R                  " XE5        USS/   R	                  SSS9n[        / [        / SS9[        R                  SS9n[        R                  " XE5        USS/   R	                  S/SS9n[        S/[        / SS9S9n[        R                  " XE5        g )N20102011r      rr   rs   r#   TrY   rh   rs   r>   Fz2010-07-02 12:00:00rr   re   2012r   r   r   z2011-07-02 12:00:00M8[]r   r?   rB   r*   strr)   r?   r*   r%   r   )r   to_datetimeas_unitr   r,   r   r.   r/   r   rm   r   rC   r   )r0   r   r   r1   r3   r2   s         r   test_quantile_datetime,TestDataFrameQuantile.test_quantile_datetimeG  ss   nnff-.66t<S1v./ St43%u37
v0 Su5,-s3C:C
 	v0 cU712::4@sK%
 	f/ ..&&!12::4@3S#J((15(I,-y9N/OPa&vQ-	
 	v0S#J((#QU(K-.	:O0PQR%FvQ-	
 	f/ S#J((4(@"E"E$:"**SVW
v0S#J((#T(BC5%%2HI
f/r   r*   )datetime64[ns]r   ztimedelta64[ns]z	Period[D]c                    Uu  p4[        SS/US9nUR                  SSSX4S9n[        / [        / SS	9SUS
9n[        R
                  " Xg5        UR                  S/SSUUS9n[        S/[        / SS	9S9n[        R                  " Xg5        g )Nrr   rs   rB   r*   r#   r   Fr8   r   r)   r   r   )r   r,   r   r   r.   r/   rm   )r0   r*   r   r;   r<   r1   resr2   s           r   test_quantile_dt64_empty.TestDataFrameQuantile.test_quantile_dt64_empty|  s     !.Sz7kkae=  
 "E"E$:ER
s- kkE'  
 C5%%2HI
c,r   invalidr   c                     SnUu  pV[         R                  " [        US9   UR                  XUS9  S S S 5        g ! , (       d  f       g = f)Nz2percentiles should all be in the interval \[0, 1\]r   r   )r   r   r   r,   )r0   r   rG   r   r   r;   r<   s          r   test_quantile_invalid+TestDataFrameQuantile.test_quantile_invalid  s=    D -]]:S1##GQW#X 211s	   :
Ac           
         Uu  p#[        [        S5      [        S5      [        S5      /[        SSS9[        SSS9[        SSS9/[        R                  " S5      [        R                  " S5      [        R                  " S5      /S	.5      nUR	                  S
SX#S9n[        [        S5      [        SSS9[        R                  " S5      /S
/ S	QS9n[        R                  " XV5        UR	                  S
/SX#S9n[        [        S5      [        SSS9[        R                  " S5      //S
// S	QS9n[        R                  " XV5        g )N
2011-01-01
2011-01-02
2011-01-03
US/Easternr~   1 days2 days3 days)rT   rU   r   r#   FrX   r%   r?   r   )	r   r   r   	Timedeltar,   r   r.   r/   rm   r0   r   r;   r<   r1   r   r   s          r   test_quantile_box'TestDataFrameQuantile.test_quantile_box  sW    - l+l+l+ l|<l|<l|< LL*LL*LL*
( kke=  
 ,',<8X&
 !
 	s(kkE]  
  l+l|<LL* %#

 	c'r   c                    [        [        S5      [        R                  [        S5      [        S5      /[        S5      [        S5      [        R                  [        S5      /[        SSS9[        R                  [        SSS9[        SSS9/[        SSS9[        SSS9[        R                  [        SSS9/[        R                  " S5      [        R                  " S5      [        R                  " S5      [        R                  /[        R                  [        R                  " S5      [        R                  " S5      [        R                  " S5      /S	.[        S
5      S9nUR                  SSS9n[        [        S5      [        S5      [        SSS9[        SSS9[        R                  " S5      [        R                  " S5      /S[        S
5      S9n[        R                  " X#5        UR                  S/SS9n[        [        S5      [        S5      [        SSS9[        SSS9[        R                  " S5      [        R                  " S5      //S/[        S
5      S9n[        R                  " X#5        g )Nr   r   r   r   r   r   r   r   )rT   rr   rU   rs   r   r   AaBbCcr   r#   FrY   r   r   )r   r   r   NaTr   listr,   r   r.   r/   rm   )r0   r1   r   r   s       r   test_quantile_box_nat+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.
 	s(kk3%ek4 l+l+l|<l|<LL*LL*	 %N
 	c'r   c                    Uu  p#[        [        R                  " SS5      [        R                  " SS5      S.5      n[        R                  UR                  S'   UR                  SX#S9n[        SUS:X  a  S	OS/S
S/SS9n[        R                  " XV5        UR                  SS/X#S9n[        SS/US:X  a  S	S/OSS/S.SS/S9n[        R                  " XV5        UR                  SSX#S9n[        [        R                  " SS5      SS9n[        R                  " XV5        UR                  SS/SX#S9n[        [        R                  " SS5      /S-  SS/S9nUS:X  a  [        R                  UR                  S'   [        R                  " XV5        [        R                  US'   UR                  SX#S9n[        S[        R                  /S
S/SS9n[        R                  " XV5        UR                  SS/X#S9n[        SS/[        R                  [        R                  /S.SS/S9n[        R                  " XV5        g )Nr   g      @r   )r   r   r#   r   rt   r   rh   rr   rs   r>   ri   ru   g      
@re   rf   r&   r$   r   r	   )r   r   )
r   rC   aranger   rl   r,   r   r.   r/   rm   r   s          r   test_quantile_nan'TestDataFrameQuantile.test_quantile_nan#  s    -RYYq#.RYYq#5FGHkk#]kJ(2#<S#JUX
 	s(kk3+]kR3Z$1X$=c4[C: +
 	c'kk#A]kRRYYsC(s3
s(kk$Ka}  
 3,-1#tEI% ffCHHUO
c' &&3kk#]kJc266]3*3?
s(kk3+]kRsCj/?@dT
c'r   c                    Uu  p4[        S[        R                  [        R                  [        R                  /0SU S3S9nUR                  SSX4S9n[	        [        R                  /S/SSU S3S9n[
        R                  " Xg5        UR                  S/SX4S9n[        S[        R                  /0S/SU S3S	9n[
        R                  " Xg5        [        [        S
5      [        S5      [        S5      /[        R                  [        R                  [        R                  /S.SU S3S9nUR                  SSX4S9n[	        [        S5      [        R                  /SS/SSU S3S9n[
        R                  " Xg5        UR                  S/SX4S9n[        [        S5      [        R                  //S/SS/SU S3S9n[
        R                  " Xg5        g )Nrr   r   r   r)   r#   FrX   r   )r?   r*   z
2012-01-01z
2012-01-02z
2012-01-03r   rs   r   )	r   r   r   r,   r   r.   r/   rm   r   )r0   r   r   r;   r<   r1   r   r   s           r   test_quantile_nat'TestDataFrameQuantile.test_quantile_natP  s    -bffbffbff56D6mLkke=  
 bffXcUc$qMJ
s(kkE]  
 rvvhuc$qMJ
c'  l+l+l+
 ffbffbff- vQ-

 kke=  
 |$bff-*vQ-	
 	s(kkE]  
 %rvv./%#JvQ-	
 	c'r   c                 Z   Uu  p#[        SS/SS9nUR                  SX#S9n[        [        R                  [        R                  /SS/SS9n[
        R                  " XV5        UR                  S/X#S9n[        [        R                  [        R                  //SS/S/S9n[
        R                  " XV5        UR                  SS	X#S
9n[        / [        / SS9SSS9n[
        R                  " XV5        UR                  S/S	X#S
9n[        [        / SS9S/S9n[
        R                  " XV5        g )Nrr   rs   r   r   r#   r   r>   )rB   r?   r   rf   r   r)   r   )	r   r,   r   rC   r   r.   r/   rm   r   r   s          r   "test_quantile_empty_no_rows_floats8TestDataFrameQuantile.test_quantile_empty_no_rows_floats  s    -Sz;kk#]kJbffbff%c3ZcB
s(kk3%}kL"&&"&&)*S#JseL
c'kk#A]kRRuRu5YSQ
s(kk3%a}kTb 6seD
c'r   c                     Uu  p#[        SS/SS9nUR                  SX#S9n[        [        R                  [        R                  /SS/SS9n[
        R                  " XV5        g )Nrr   rs   r\   r   r#   r   r>   )r   r,   r   rC   r   r.   r/   r   s          r    test_quantile_empty_no_rows_ints6TestDataFrameQuantile.test_quantile_empty_no_rows_ints  sY     -Sz9kk#]kJbffbff%c3ZcB
s(r   c                    Uu  p#[        SS/SS9nUR                  SSX#S9n[        [        R                  [        R                  /SS/SSS9n[
        R                  " XV5        US   R                  R                  S	5      US'   UR                  SSX#S9nUR                  [        5      nUS
:X  a  UR                  [        R                  5      n[
        R                  " XV5        US   R                  R                  S	5      US'   UR                  SSX#S9nUR                  US   R                  5      n[
        R                  " XV5        g )Nrr   rs   r   r   r#   FrX   r   z
US/Centralr	   )r   r,   r   r   r   r.   r/   dttz_localizer-   objectfillnarC   r   r*   r   s          r    test_quantile_empty_no_rows_dt646TestDataFrameQuantile.test_quantile_empty_no_rows_dt64  s:    -Sz1ABkke=  
 VVRVVS#J6FS
 	s( S'**((63kke=  
 jj I%**RVV$C
s( S'**((63kke=  
 jjC'
s(r   c                    Uu  p#[        [        R                  " SSS95      nSUR                  l        UR                  SSX#S9n[        / S[        R                  S9nSUR                  l        [        R                  " XV5        UR                  S/SX#S9n[        / S/S	9nSUR                  l        [        R                  " XV5        g )
Nz1/1/18r   r   zcaptain tightpantsr#   TrX   r   re   )r   r   r   rB   r%   r,   r   rC   r   r?   r.   r/   rm   rn   s          r   test_quantile_empty_no_columns4TestDataFrameQuantile.test_quantile_empty_no_columns  s     -r}}Xq9:.

d-  
 "3bjj92
v0EM  
 Ru- 4
f/r   c                     [         R                  " [        SS9   [        [	        S5      5      R                  SSS9  S S S 5        g ! , (       d  f       g = f)NzInvalid method: foor   r   r#   r   )r<   r   r   r   r   rv   r,   r0   s    r   test_invalid_method)TestDataFrameQuantile.test_invalid_method  s:    ]]:-BCeAh((U(; DCCs   #A
Ac                     [         R                  " [        SS9   [        [	        S5      5      R                  SSSS9  S S S 5        g ! , (       d  f       g = f)NzInvalid interpolation: foor   r   r#   r
   r   )r<   r;   r  r  s    r    test_table_invalid_interpolation6TestDataFrameQuantile.test_table_invalid_interpolation  s<    ]]:-IJeAh((WE(R KJJs   $A
A N))__name__
__module____qualname____firstlineno__r   markparametrizer   r   r   arraysSparseArrayr4   rJ   rQ   r_   ro   rw   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r
  r  r  r  __static_attributes__r  r   r   r   r      s   [[ !"))"7"7A"?@!"))"7"7A"?@ Sz, &!6oNOu3'	
$1%$10B5	'G,11 90$,L70r4&00030j [[	
--, [[YQb	C8(DEY FY3(jJ(X+(Z2(h(*))@0&<Sr   r   c                      \ rS rSr\R
                  " \R                  " \R                  R                  \
" S5      5      \R                  R                  SS9S9\R                  " SSSS	9\R                  " SSS
S9\R                  " SSS9\R                   " \R$                  " S5      SS9\R                   " \R$                  " S5      SS9/S S9S 5       r\R
                  S 5       rS rS rS rS rS r\R                  R5                  SS/ / S/S/ / S/S\R6                  \R6                  /SS/S /S\R6                  \R6                  /SS/S //5      S! 5       r\R                  R5                  S"S#/ / SS#/S#\R:                  \R:                  /SS/S S#//5      S$ 5       r\R                  R5                  S%\R6                  \R6                  /\
" S&5      S// / S //5      S' 5       rS(r g))*TestQuantileExtensionDtypei  r=   z#raises when trying to add Intervals)reason)marksrz   	   r   )r}   freqr{   )r}   r~   z1 Dayr   Int64r)   Float64c                 ,    [        U R                  5      $ )N)r   r*   r   s    r   r   #TestQuantileExtensionDtype.<lambda>  s    c!''lr   r   c                 ,    UR                   nSUl        U$ NrT   )r   r%   )r0   r   idxs      r   r?    TestQuantileExtensionDtype.index  s      mm
r   c                 f    U" U5      R                  5       nU[        L a	  SUl        U$ S/Ul        U$ r,  )copyr   r%   rB   )r0   r?   frame_or_seriesobjs       r   r2  TestQuantileExtensionDtype.obj  s=     e$))+f$CH 
 %CK
r   c                 v    [        U[        5      (       a  UR                  U5      nU$ UR                  USS9nU$ )NFrY   )
isinstancer   r,   )r0   r2  qsr3   s       r   compute_quantile+TestQuantileExtensionDtype.compute_quantile   s=    c6""\\"%F  \\"5\9Fr   c                    [         R                  " [        U5      [         R                  S9n[         R                  R                  S5      R                  U5        UR                  U   n/ SQnU R                  X%5      nUR                  nUR                  S:X  a  Sn[        US   US   US   /XuS	S
9n[        U5      " U5      n[        R                  " Xh5        g )Nr)   r   r#   r   r   r'  r(  r    r   r   rT   r*   r?   r%   )rC   r   lenintprandomdefault_rngshufflerl   r7  r*   r   typer.   assert_equal	r0   r   r2  r?   indexerr6  r3   	exp_dtyper2   s	            r   test_quantile_ea+TestQuantileExtensionDtype.test_quantile_ea  s    ))CJbgg6
		a ((1hhw&&s/KK	;;'!!I 1XuQxr+9S
 9X&
)r   c                    UR                   UR                  S'   UR                   UR                  S'   [        R                  " [	        U5      [        R
                  S9n[        R                  R                  S5      R                  U5        UR                  U   n/ SQnU R                  X5      n[        US   US   US   /UR                  US	S
9n[        U5      " U5      n[        R                  " XV5        g )Nr   r   r)   r   r:  r    r   rT   r;  )	_na_valuerl   rC   r   r<  r=  r>  r?  r@  r7  r   r*   rA  r.   rB  )r0   r2  r?   rD  r6  r3   r2   s          r   test_quantile_ea_with_na3TestQuantileExtensionDtype.test_quantile_ea_with_na  s    oo ))CJbgg6
		a ((1hhw&&s/ 1XuQxr+5;;bs
 9X&
)r   c                 6   UR                   UR                  S S & [        R                  " UR                  UR
                  :H  5      (       d   e[        R                  " [        U5      [        R                  S9n[        R                  R                  S5      R                  U5        UR                  U   n/ SQnU R                  X%5      nUR                  / SQSUR                   S9n[        XuSS9n[        U5      " U5      n[         R"                  " Xg5        g )	Nr)   r   r:  )r   r   r   T)
allow_fill
fill_valuerT   r>   )rJ  rl   rC   alldtypesr*   r   r<  r=  r>  r?  r@  r7  taker   rA  r.   rB  )r0   r   r2  r?   rD  r6  r3   r2   s           r   test_quantile_ea_all_na2TestQuantileExtensionDtype.test_quantile_ea_all_na0  s    oovvcjjEKK/0000 ))CJbgg6
		a ((1hhw&&s/::lt:X(379X&
)r   c                    [         R                  " [        U5      [         R                  S9n[         R                  R                  S5      R                  U5        UR                  U   nSnU R                  X%5      nUR                  nUR                  S:X  a  Sn[        SUS   0USS9n[        U[        5      (       a  US   nXh:X  d   eg [        R                  " Xh5        g )	Nr)   r   r#   r'  r(  rT   r    )r*   r%   )rC   r   r<  r=  r>  r?  r@  rl   r7  r*   r   r5  r.   r/   rC  s	            r   test_quantile_ea_scalar2TestQuantileExtensionDtype.test_quantile_ea_scalarB  s     ))CJbgg6
		a ((1hhw&&s/KK	;;'!!I3a/Ec6""}H%%%""64r   z*dtype, expected_data, expected_index, axisr   r   r\   rr   rs   r   c           	          [        SS/US9nUR                  SUS9n[        US[        USS9SS	9n[        R
                  " Xg5        g )
Nrr   rs   r   r#   r   r   r)   r   r%   r?   r*   r   r,   r   r   r.   r/   )r0   r*   expected_dataexpected_indexr9   r1   r3   r2   s           r   test_empty_numeric-TestQuantileExtensionDtype.test_empty_numericX  sS     Sz7St,e4	
 	v0r   z:dtype, expected_data, expected_index, axis, expected_dtyper   c           	          [        SS/US9nUR                  SUSS9n[        US[        USS9US	9n[        R
                  " Xx5        g )
Nrr   rs   r   r#   Fr   r   r)   rY  rZ  )	r0   r*   r[  r\  r9   expected_dtyper1   r3   r2   s	            r   test_empty_datelike.TestQuantileExtensionDtype.test_empty_datelikem  sU     Sz7St%@e4 	
 	v0r   z#expected_data, expected_index, axisr   c           	      (   [        [        R                  " SS/5      SS/[        R                  " SS/5      S.5      nUSS/   R                  S	US
S9n[	        US	[        X#S:X  a  SOSS9[        R                  S9n[        R                  " XV5        g )Nr   r   r   r   r   r   rr   r   r#   Tr   r   r\   r)   rY  )
r   r   r   r,   r   r   rC   r   r.   r/   )r0   r[  r\  r9   r1   r3   r2   s          r   test_datelike_numeric_only5TestQuantileExtensionDtype.test_datelike_numeric_only  s     ^^VV$45V^^VV$45
 S#J((4d(KqyegN**	
 	v0r   r  N)!r  r  r  r  r   fixturer   r   IntervalIndexfrom_breaksrv   r  xfailperiod_ranger   timedelta_ranger   rC   r   r?   r2  r7  rF  rK  rS  rV  r  r   r]  r   ra  rd  r   r  r   r   r"  r"    s    ^^LL  ,,U2Y7kk''/T'U OOL!#>MM,lCw2HHRYYq\1HHRYYq\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"  c                      [        [        S5      5      n U R                  SS/SS9n[        SS/S9n[        R                  " XSSS9  g )Nabcr#   gffffff?TrY   re   )rk   check_column_type)r   r   r,   r.   rm   )r1   r3   r2   s      r   0test_multi_quantile_numeric_only_retains_columnsro    sI    	4;	B[[#s$[7FSz*H44r   typ
datetime64timedelta64c                     U  SU S3n[        [        R                  " / US95      nUR                  5       n[	        [
        R                  /SUS9n[        R                  " XE5        g )N[r   r)   r#   r   )	r   rC   r   r,   r   r   r   r.   r/   )rp  r   r*   r1   r3   r2   s         r    test_quantile_empty_datetimelikeru    sV    e1TF!E	288Be,	-B[[]FrvvhS6H6,r   )numpyrC   r   pandasr   r   r   r   r   pandas._testing_testingr.   rf  r   r   r"  ro  r  r  ru  r  r   r   <module>rz     s         x 9g"67=R
DS DSN|1 |1~ } =>- ?-r   