
    Mh#                     L   S SK r S SKJrJrJr  S SKJr  \ R                  R                  SSS/5      S 5       r
S rS rS	 rS
 r\ R                  R                  SSS/5      S 5       rS rS r\ R                  R                  S/ SQ/ SQ4/ SQ/ SQ4/5      S 5       rS rS rg)    N)	DataFrameIndexSerieszn, frac)   N)Ng?c                 ~   S/S-  S/S-  -   n[        X"S.5      nUR                  S5      R                  XS9nS/S-  S/S-  -   n[        X"S.UR                  S9n[        R
                  " XE5        UR                  S5      S   R                  XS9n[        USUR                  S	9n[        R                  " XE5        g 
N   
   r   abr   nfracindexr   namer   r   groupbysampler   tmassert_frame_equalr   assert_series_equal)r   r   valuesdfresultexpecteds         Z/var/www/html/env/lib/python3.13/site-packages/pandas/tests/groupby/methods/test_sample.py)test_groupby_sample_balanced_groups_shaper       s    S2Xb F	-	.BZZ_##a#3FS1WsQwFv36<<HH&+ZZ_S!((1(8Ff3fll;H6,    c                  ~   S/S-  S/S-  -   n [        X S.5      nUR                  S5      R                  SS9nS/S-  S/S-  -   n [        X S.UR                  S	9n[        R
                  " X#5        UR                  S5      S
   R                  SS9n[        U S
UR                  S9n[        R                  " X#5        g )Nr	   r
   r      r   r      r   r   r   r   r   r   r   r   r   s       r   +test_groupby_sample_unbalanced_groups_shaper'      s    S2Xb F	-	.BZZ_##a#(FS1WsQwFv36<<HH&+ZZ_S!((1(-Ff3fll;H6,r!   c                     S/S-  S/S-  -   n [        X S./ SQS9nUR                  S5      R                  SS9nS/S-  S/S-  -   n [        X S.UR                  S9n[        R
                  " X#5        UR                  S5      S	   R                  SS9n[        U S	UR                  S
9n[        R                  " X#5        g )Nr	      r   r   )r	   r   r   r   r   r   r   r   r%   r   r   r   r&   s       r   ,test_groupby_sample_index_value_spans_groupsr*   (   s    S1WsQwF	-5G	HBZZ_##a#(FS1WsQwFv36<<HH&+ZZ_S!((1(-Ff3fll;H6,r!   c                  z   [        SS/SS/S.5      n Sn[        R                  " [        US9   U R	                  S5      R                  SSS9  S S S 5        [        R                  " [        US9   U R	                  S5      S	   R                  SSS9  S S S 5        g ! , (       d  f       NS= f! , (       d  f       g = f)
Nr	   r   r   z0Please enter a value for `frac` OR `n`, not bothmatchr   g      ?r   r   r   pytestraises
ValueErrorr   r   r   msgs     r   %test_groupby_sample_n_and_frac_raisesr4   6   s    	!Qq!f-	.B
<C	z	-


3- 
. 
z	-


3##ac#2 
.	- 
.	- 
.	-    B/#B,
B),
B:c                  z   [        SS/SS/S.5      n Sn[        R                  " [        US9   U R	                  S5      R                  SSS	9  S S S 5        [        R                  " [        US9   U R	                  S5      S
   R                  SSS	9  S S S 5        g ! , (       d  f       NS= f! , (       d  f       g = f)Nr	   r   r   zJReplace has to be set to `True` when upsampling the population `frac` > 1.r,   r         ?Fr   replacer   r.   r2   s     r   :test_groupby_sample_frac_gt_one_without_replacement_raisesr:   A   s    	!Qq!f-	.B
VC	z	-


3C7 
. 
z	-


3##e#< 
.	- 
.	- 
.	-r5   r   r7   c                    [        SS/SS/S.5      nU S:  a  SnOSn[        R                  " [        US9   UR	                  S5      R                  U S	9  S S S 5        [        R                  " [        US9   UR	                  S5      S
   R                  U S	9  S S S 5        g ! , (       d  f       NR= f! , (       d  f       g = f)Nr	   r   r   r   z=A negative number of rows requested. Please provide `n` >= 0.z$Only integers accepted as `n` valuesr,   r   r%   r   r.   )r   r   r3   s      r   $test_groupby_sample_invalid_n_raisesr=   L   s    	!Qq!f-	.B1uM4	z	-


3# 
. 
z	-


3##a#( 
.	- 
.	- 
.	-s   B"7"B3"
B03
Cc                     S/S-  S/S-  -   n [        X S.5      nUR                  S5      R                  SSS9nS/S	-  S/S	-  -   n [        X S.UR                  S
9n[        R
                  " X#5        UR                  S5      S   R                  SSS9n[        U SUR                  S9n[        R                  " X#5        g )Nr	   r
   r   r   r   g       @Tr8   r#   r   r   r   r   r&   s       r   test_groupby_sample_oversampler?   \   s    S2Xb F	-	.BZZ_##d#;FS2Xb Fv36<<HH&+ZZ_S!((c4(@Ff3fll;H6,r!   c                  v   S/S-  S/S-  -   n [        X S.5      nUR                  S5      R                  S S S9n[        SS/SS/S.UR                  S9n[        R
                  " X#5        UR                  S5      S   R                  S S S9n[        SS/SUR                  S	9n[        R                  " X#5        g r   r   r&   s       r   %test_groupby_sample_without_n_or_fracrA   j   s    S2Xb F	-	.BZZ_##d#6F1vQF36<<HH&+ZZ_S!((4d(;Fq!f3fll;H6,r!   zindex, expected_index)wxyz)rB   rB   rD   rD   )r)      r$      )r)   r)   r$   r$   c                    S/S-  S/S-  -   n[        X"S.[        U 5      S9nUR                  S5      R                  SS/ SQS9n[        X"S.[        U5      S9n[        R
                  " XE5        UR                  S5      S	   R                  SS/ SQS9n[        US	[        U5      S
9n[        R                  " XE5        g )Nr	   r   r   r   r   T)r	   r   r	   r   )r   r9   weightsr   r   )r   r   r   r   r   r   r   r   )r   expected_indexr   r   r   r   s         r    test_groupby_sample_with_weightsrK   w   s     S1WsQwF	-U5\	BBZZ_##a|#LFv35;PQH&+ZZ_S!((1dL(QFf3eN.CDH6,r!   c                      S/S-  S/S-  -   n [        X U S.5      nUR                  S5      SS/   R                  S S S9n[        SS/SS/S	.UR                  S
9n[        R
                  " X#5        g )Nr	   r
   r   )r   r   cr   r   rM   r   )r   rM   r   )r   r   r   r   r   r   r&   s       r   #test_groupby_sample_with_selectionsrN      sx    S2Xb F	6:	;BZZ_c3Z(//$T/BF1vQF36<<HH&+r!   c                      [        / / S.5      n U R                  S5      nUR                  5       nU n[        R                  " X#5        g )Nr   r   )r   r   r   r   r   )r   
groupby_dfr   r   s       r   %test_groupby_sample_with_empty_inputsrQ      s?    	"%	&BCJ FH&+r!   )r/   pandasr   r   r   pandas._testing_testingr   markparametrizer    r'   r*   r4   r:   r=   r?   rA   rK   rN   rQ    r!   r   <module>rX      s     
  Y$<=- >---3= r3i() ))-
- 01L,3OP-	-,,r!   