+
    xȇi>                     Z    ^ RI t^ RIt^ RIt^ RIHtHtHtHtH	t	 ^ RI
Ht  ! R R4      tR# )    N)Categorical	DataFrameSeries	Timestamp
date_rangec                   &  a  ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR t]P$                  P'                  RRRRR.RR..4      R 4       tR tR tR tR t]P$                  P'                  RR. R..4      R 4       tRtV tR# )TestDataFrameDescribec                Z   \        R . ROR. ROR. R	O/4      pVP                  4       p\        R^^VP                  P                  4       ^
^^^(^2./. R
OR7      p\        P
                  ! W#4       VP                  R.R7      p\        R. RO/. ROR7      p\        P
                  ! W#4       R# )string_data	bool_dataint_dataindexboolincludeN)abcde)TTFFF
         (   2   countmeanstdmin25%50%75%max)      F   r   uniquetopfreq)r   describer   r!   tmassert_frame_equalselfdfresultexpecteds   &   x/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/frame/methods/test_describe.py!test_describe_bool_in_mixed_frame7TestDataFrameDescribe.test_describe_bool_in_mixed_frame   s    8>0
 !R!2BBBGHM
 	f/ fX.*+3U
 	f/    c                V   \        R RR./\        R7      pVP                  4       p\        R ^ ^ \        P                  \        P                  ./\        . ROR7      p\
        P                  ! W#4       VP                  R,          P                  4       p\
        P                  ! W#4       R# )ANdtype)r=   r   :Nr   Nr*   )r   objectr.   npnanr/   r0   ilocr1   s   &   r6   test_describe_empty_object0TestDataFrameDescribe.test_describe_empty_object*   s    dD\*&91a()4

 	f/%%'
f/r9   c                   \        R . ROR. RO/4      pVP                  4       p\        R . R	OR. R
O/. ROR7      p\        P                  ! W#4       \        R. ROR. RO/4      pVP                  4       p\        R^^VP                  P                  4       ^ ^^^^./. ROR7      p\        P                  ! W#4       \        R. ROR. RO/4      pVP                  4       p\        R. R	OR. RO/. ROR7      p\        P                  ! W#4       R# )bool_data_1bool_data_2r   r   r   str_dataN)FFTT)FTTT)   r(   Fr(   )rH   r(   Tr)   r*   )FFTTF)r      r(   r)   rH   r   )r   r   r   r   )rH   r)   r   r(   )r   r.   r/   r0   r   r!   r1   s   &   r6   test_describe_bool_frame.TestDataFrameDescribe.test_describe_bool_frame8   s   98
 ,m_M4
 	f/>O
 !Q 11aAqABM
 	f/4jBVW
 *JG4
 	f/r9   c                Z   \        R \        P                  P                  ^4      P	                  ^ R^d4      /4      p\        ^ RR4       Uu. uF  q" RVR,            2NK  	  pp\        W34      pVP                  R .RR7      p\        P                  ! VP                  \        ^ RR4      RVR	7      VR
&   TpVP                  4       p\        VP                  4      ^8X  g   Q h\        . RO. RORR7      p\        V4      pVP                  4       p\        . RO. ROR7      p\        P                   ! Wh4       \        \        . RO4      4      p\        RVR. RO/4      p	V	P                  4       p\        P"                  ! VR,          P$                  VR,          P$                  4       R# u upi )valuei'  i  z - i  T)by	ascendingi)  F)rightlabelsvalue_group)
categoriesorderedr   catsN)r   r   r   r   )r   r   r   )rH   r(   r   r)   r*   )r   r   r   r   )r   r?   randomdefault_rngintegersranger   sort_valuespdcutrM   r.   lencolumnsr   r/   assert_series_equalassert_numpy_array_equalvalues)
r2   r3   irQ   
cat_labelsrU   r4   rV   r5   df3s
   &         r6   test_describe_categorical/TestDataFrameDescribe.test_describe_categorical^   sj   !6!6q!9!B!B1eS!QRS.3Auc.BC.BCs1s7)$.BC 0
^^yD^9FFHHeAuc*%

=  6>>"a'''
  _d
 3K.0RS
v0[!567S*>?@
##F5M$8$8&+:L:LM7 Ds   F(c                   \        R \        . 4      /4      pVP                  4       p\        R ^ ^ \        P                  \        P                  ./. RORR7      p\
        P                  ! W#4       \        P                  ! VP                  R,          4      '       g   Q h\        P                  ! VP                  R,          4      '       g   Q hR# )	empty_colr>   r   r=   Nr*   )r(   r   )r)   r   )	r   r   r.   r?   r@   r/   r0   isnanrA   r1   s   &   r6   &test_describe_empty_categorical_column<TestDataFrameDescribe.test_describe_empty_categorical_column}   s     [_561a014

 	f/xxD)****xxD)****r9   c                   \         P                  ! . R
ORRR7      p\        R . ROR. ROR. RO/VR7      pVP                  4       p\         P                  ! R R.. R
ORRR7      p\        R ^^VP                  P                  4       ^
^^^(^2.R^^VP                  P                  4       ^
^^^(^2./. ROVR	7      p\        P                  ! W54       \        P                  ! VP                  P                  VP                  P                  4       R# )int1int2objTXXX)rT   nameN)r_   )rS   rT   rs   r   r_   )ro   rp   rq   r   r;   r   NXrI   r   )r\   CategoricalIndexr   r.   ro   r!   rp   r/   r0   assert_categorical_equalr_   rb   r2   r_   r3   r4   exp_columnsr5   s   &     r6   !test_describe_categorical_columns7TestDataFrameDescribe.test_describe_categorical_columns   s    %%&=tRWX,,-
 
 ))V.	
 Br2r2rBBr2r2rB N
 	f/
##FNN$9$98;K;K;R;RSr9   c                f   \         P                  ! . RORRRR7      p\        ^ . R	O^. R	O^. R
O/4      pWn        VP	                  4       p\         P                  ! R R.RRRR7      p\        ^ ^^VP
                  R,          P                  4       ^
^^^(^2.^^^VP
                  R,          P                  4       ^
^^^(^2./. ROR7      pWEn        \        P                  ! W54       VP                  P                  R8X  g   Q hVP                  P                  VP                  P                  8X  g   Q hR# )
2011-01-01
2011-02-01MSz
US/Easternrr   )r-   tzrs   Nr   )r~   r   z
2011-03-01r   ru   NNNr   r   rI   r   )r\   DatetimeIndexr   r_   r.   rA   r!   r/   r0   r-   r   ry   s   &     r6   test_describe_datetime_columns4TestDataFrameDescribe.test_describe_datetime_columns   s(   ""6	
 '')
 
&&<(t5
 Ar2774=,,.BBCAr2774=,,.BBC N
 '
f/~~""d***~~  H$4$4$7$7777r9   c                   \         P                  ! R R^R7      p\         P                  ! RR^R7      p\        RVRV/4      p\        R^\         P                  ! R4      VP                  R,          P                  4       \         P                  ! R 4      \         P                  ! R4      \         P                  ! R4      \         P                  ! R	4      \         P                  ! R
4      .R^\         P                  ! R4      VP                  R,          P                  4       \         P                  ! R4      \         P                  ! R4      \         P                  ! R4      \         P                  ! R4      \         P                  ! R4      ./. ROR7      pVP                  4       p\        P                  ! WT4       Rp\        V4      V8X  g   Q hR# )z1 daysD)r-   periodsz1 hoursht1t2z3 daysz2 daysz4 daysz5 daysz3 hoursz2 hoursz4 hoursz5 hoursr   a                             t1                      t2
count                       5                       5
mean          3 days 00:00:00         0 days 03:00:00
std    1 days 13:56:50.394919  0 days 01:34:52.099788
min           1 days 00:00:00         0 days 01:00:00
25%           2 days 00:00:00         0 days 02:00:00
50%           3 days 00:00:00         0 days 03:00:00
75%           4 days 00:00:00         0 days 04:00:00
max           5 days 00:00:00         0 days 05:00:00Nr   r   r   )
r\   timedelta_ranger   	TimedeltarA   r!   r.   r/   r0   repr)r2   r   r   r3   r5   r4   exp_reprs   &      r6   test_describe_timedelta_values4TestDataFrameDescribe.test_describe_timedelta_values   s\   sA>	Q?b$+,LL*GGDM%%'LL*LL*LL*LL*LL*	 LL+GGDM%%'LL+LL+LL+LL+LL+	, N/
4 
f/D 	 F|x'''r9   c                   Tp\        \        ^4      4      p\        R^^4      p\        R^^4      p\        \        WEVR7      4      p\	        RVRV/4      p\	        R. R	OR^\        R^^4      P                  V4      VP                  V4      V^,          V^,          V^,          VP                  V4      \        P                  ./. R
OR7      pVP                  RR7      p	\        P                  ! W4       R# )r'     r   s1s2r   allr   N)r'   r(   r   rI   r(   r)   rH   gvhXL?r   r    r"   r#   r$   r%   r&   r!   )r   rZ   r   r   r   tz_localizer?   r@   r.   r/   r0   )
r2   tz_naive_fixturer   r   startendr   r3   r5   r4   s
   &&        r6   test_describe_tz_values-TestDataFrameDescribe.test_describe_tz_values   s    E!H$1%a#Jub12b$+,5dAq)55b9%%b)qEqEqEOOB'FF	 N
  U+
f/r9   c                L   \        R \        R^R7      R. RO/4      pVP                  4       p\        R ^\        R4      \        R4      \        R4      \        R4      \        R4      \        R4      \        P
                  .R. RO/. ROR	7      p\        P                  ! W#4       R
# )r   2012)r   r   z
2012-01-02z
2012-01-01z2012-01-01T12:00:00z2012-01-02T12:00:00z
2012-01-03r   NrI   r(   r)   )r)   r(   rI         ?r(         @r)   rI   r   )r   r   r.   r   r?   r@   r/   r0   r1   s   &   r6   *test_datetime_is_numeric_includes_datetime@TestDataFrameDescribe.test_datetime_is_numeric_includes_datetime  s    Z:CKLl+l+34l+34l+FF	 1 N
  	f/r9   c                   R p\        \        ^4      4      p\        R^^4      p\        R^^4      p\        \        W4VR7      4      p\	        RVRV/4      pVP                  4       pVP                  4       p. R	Op	\        P                  ! Wx.^RR.R7      P                  V	4      p
VP                  RR7      p\        P                  ! W4       R# )
CETr   r   r   r   )axiskeysr   r   Nr   )r   rZ   r   r   r   r.   r\   concatreindexr/   r0   )r2   r   r   r   r   r   r3   s1_s2_idxr5   r4   s   &           r6   test_describe_tz_values2.TestDataFrameDescribe.test_describe_tz_values2-  s    E!H$1%a#Jub12b$+,kkmkkm	
 99cZatTlCKKCPU+
f/r9   c                    \        R ^./4      p\        P                  ! ^ ^^4      pVP                  VR7      p\        R RR\        P                  R.R V 4       ORN/. ROR7      p\
        P                  ! W44       R# )xpercentiles      ?c              3   &   "   T F  pR x  K	  	  R# 5i)r   N ).0_s   & r6   	<genexpr>NTestDataFrameDescribe.test_describe_percentiles_integer_idx.<locals>.<genexpr>M  s     +=ACs   r   N)r   r    r!   r"   z0%z10%z20%z30%z40%r$   z60%z70%z80%z90%z100%r&   )r   r?   linspacer.   r@   r/   r0   )r2   r3   pctr4   r5   s   &    r6   %test_describe_percentiles_integer_idx;TestDataFrameDescribe.test_describe_percentiles_integer_idxF  sx    aSz"kk!Q'-3RVVSC+=+=CsCD
* 	f/r9   c                    \        R RR//R RR//.4      p\        R ^^RR/^./. ROR7      pVP                  4       p\        P                  ! W24       R# )testr   12r   Nr*   )r   r.   r/   r0   )r2   r3   r5   r4   s   &   r6   8test_describe_does_not_raise_error_for_dictlike_elementsNTestDataFrameDescribe.test_describe_does_not_raise_error_for_dictlike_elementsc  s`    #s,vSz.BCDaS#J*+3U
 
f/r9   excluder   yzc                    \        R^.R^.R^./4      pRp\        P                  ! \        VR7      ;_uu_ 4        VP	                  RVR7       RRR4       R#   + '       g   i     R# ; i)	zE
When include is 'all', then setting exclude != None is not allowed.
r   r   r   z*exclude must be None when include is 'all'matchr   r   r   Nr   pytestraises
ValueErrorr.   )r2   r   r3   msgs   &&  r6   2test_describe_when_include_all_exclude_not_allowedHTestDataFrameDescribe.test_describe_when_include_all_exclude_not_allowedl  sV    
 aS#sC!56:]]:S11KKwK7 2111s   AA*	c                    \        R . RO/4      pRp\        P                  ! \        VR7      ;_uu_ 4        VP	                  R.R7       RRR4       R#   + '       g   i     R# ; i)r   z<No columns match the specified include or exclude data typesr   datetimer   Nr   r   )r2   r3   r   s   &  r6   .test_describe_when_included_dtypes_not_presentDTestDataFrameDescribe.test_describe_when_included_dtypes_not_presentv  sF    Y'(L]]:S11KKK- 2111s   AA%	c                   \        . RO. RO. RO.. RORR7      pVP                  4       pVP                  R	,          P                  4       p\        P                  ! W3V.VP
                  ^R7      p\        P                  ! W$4       R# )
rI   float64)r_   r=   )r   r   N)rI   rI   rI   )r(   r(   r(   )r)   r)   r)   )barr   r   r   )r   r.   rA   r\   r   r_   r/   r0   )r2   r3   r4   serr5   s   &    r6   $test_describe_with_duplicate_columns:TestDataFrameDescribe.test_describe_with_duplicate_columns}  sg    	9-%

 ggdm$$&99c_2::AF
f/r9   c                r   \        R ^\        P                  \        P                  .R\        P                  /VR7      pVP                  4       p\        R RR\        P                  .R.^,          ,           RR.\        P                  .^,          ,           /. RORR7      p\        P
                  ! W44       R# )	r   r   r<   r   g        Float64rj   Nr   )r   r\   NAr.   r/   r0   )r2   any_numeric_ea_dtyper3   r4   r5   s   &&   r6   test_ea_with_na%TestDataFrameDescribe.test_ea_with_na  s     a.RUU;CWX3RUU#seai/seruugk6IJM

 	f/r9   c                   \         P                  ! R 4      p\        R\        . RO\        P
                  ! VP                  4       4      R7      R\        . RO\        P
                  ! VP                  4       4      R7      R\        . RO\        P
                  ! VP                  4       4      R7      /4      pVP                  \        P
                  ! VP                  4       4      \        P
                  ! VP                  4       4      R7      p\        R. R	O/. R
O\        P
                  ! VP                  4       4      R7      p\        P                  ! W44       R# )pyarrowr   r<   r   r   r   rj   Nr   )r)   r(   rI   rI   r   r(   r   r)   r   )r   importorskipr   r   r\   
ArrowDtypeint8int16int32r.   r   r/   r0   )r2   par3   r4   r5   s   &    r6   test_describe_exclude_pa_dtype4TestDataFrameDescribe.test_describe_exclude_pa_dtype  s      +VIR]]2779-EFVIR]]288:-FGVIR]]288:-FG
 MM"''),bmmBHHJ6O  
 ./M--

-

 	f/r9   r   Ng?c                z   \        R\        P                  ! ^ ^
^4      /4      pVP                  VR7      pVf   . ROp\        \	        VP
                  4      VP
                  P                  4       VP
                  P                  4       VP
                  P                  4       .V Uu. uF  qBP
                  P                  V4      NK  	  upOVP
                  P                  4       N\        P                  ! . ROV Uu. uF  qDR NK  	  upORN4      R.R7      p\        P                  ! W54       R# u upi u upi )	a/  
Test that the percentiles are returned correctly depending on the `percentiles`
argument.
- The default behavior is to return the 25th, 50th, and 75 percentiles
- If `percentiles` is an empty list, no percentiles are returned
- If `percentiles` is a non-empty list, only those percentiles are returned
r   r   Nz.0%r&   rt   )g      ?g      ?g      ?)r   r    r!   r"   )r   r?   aranger.   r^   r   r    r!   r"   quantiler&   r\   Indexr/   r0   )r2   r   r3   r4   pr5   s   &&    r6   test_refine_percentiles-TestDataFrameDescribe.test_refine_percentiles  s    RYYq"a0125+KBDD			

	
 -88Kq$$--"K8 
 ((
 +66+Q3j+6 	 E'
, 	f/! 9 7s   '#D3
>D8r   )__name__
__module____qualname____firstlineno__r7   rB   rJ   rf   rl   r{   r   r   r   r   r   r   r   r   markparametrizer   r   r   r   r   r   __static_attributes____classdictcell__)__classdict__s   @r6   r	   r	      s     040$0LN>+ T>8@.(`080*020:0 [[YcC:Sz(JK8 L8.	0
00( [[]T2u,=>&0 ?&0r9   r	   )numpyr?   r   pandasr\   r   r   r   r   r   pandas._testing_testingr/   r	   r   r9   r6   <module>r     s)        @0 @0r9   