
    4i	k                         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                  R                  S5      r " S S5      r " S S\5      rS rS	 r " S
 S\5      r " S S\5      r " S S5      rg)    N)	DataFrameIndex
MultiIndexSerieszMignore:Passing a BlockManager|Passing a SingleBlockManager:DeprecationWarningc                      \ 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S rS rS rS rS rS rS rS rS r\R6                  R9                  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'S&r(g')(TestDataFrameSubclassing   c                     [         R                  " / SQ/ SQS./ SQS9n[         R                  " S 5         UR                  5         US   R                  5         S S S 5        g ! , (       d  f       g = f)N         XYabcindexr   )tmSubclassedDataFrameassert_produces_warningisna)selfdfs     b/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/pandas/tests/frame/test_subclass.pytest_no_warning_on_mgr/TestDataFrameSubclassing.test_no_warning_on_mgr   sP    ##),O
 ''- GGIsGLLN	 .--s   $A""
A0c                 h  ^^	  " U	4S jS[         5      m	 " UU	4S jS[        5      m[        S5      [        S5      S.nT" U5      n[        UT5      (       d   eUR                  n[        UT	5      (       d   eUR                  5       S:X  d   eUSS	 n[        UT5      (       d   eUR                  5       S:X  d   e[        R                  " S
S/5      nT" SS/SS//US9n[        US   T5      (       d   e[        R                  " SS/5      nT" SS/SS//US9n[        US   T	5      (       d   eg )Nc                   2   > \ rS rSr\U 4S j5       rS rSrg)QTestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomSeries"   c                    > T$ N )r   CustomSeriess    r   _constructor^TestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomSeries._constructor#   s	    ##    c                     gNOKr'   r   s    r   custom_series_functionhTestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomSeries.custom_series_function'       r+   r'   N)__name__
__module____qualname____firstlineno__propertyr)   r0   __static_attributes__)r(   s   r   r(   r#   "   s    $ $r+   r(   c                   T   >^  \ rS rSrSrSU 4S jjr\U4S j5       r YrS r	Sr
U =r$ )TTestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomDataFrame*   z^
Subclasses pandas DF, fills DF with simulation results, adds some
custom plotting functions.
c                 &   > [         TU ]  " U0 UD6  g r&   )super__init__)r   argskw	__class__s      r   r>   ]TestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomDataFrame.__init__0   s     $-"-r+   c                    > T$ r&   r'   )r   CustomDataFrames    r   r)   aTestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomDataFrame._constructor3   s	    &&r+   c                     gr-   r'   r/   s    r   custom_frame_functionjTestDataFrameSubclassing.test_frame_subclassing_and_slicing.<locals>.CustomDataFrame.custom_frame_function9   r2   r+   r'   returnN)r3   r4   r5   r6   __doc__r>   r7   r)   _constructor_slicedrG   r8   __classcell__)rA   rD   r(   s   @r   rD   r:   *   s3    
. ' ' #/ r+   rD   
   )col1col2r.   r      )ArR   )rR   Br   r   r   columnsrR   )rR    )rS   rV   )	r   r   range
isinstancerO   r0   rG   r   from_tuples)
r   datacdf
cdf_seriescdf_rowsmcol	cdf_multi
cdf_multi2rD   r(   s
           @@r   "test_frame_subclassing_and_slicing;TestDataFrameSubclassing.test_frame_subclassing_and_slicing   sK   	6 		 	i 	$ b	595d# #//// XX
*l3333002d::: q8(O4444--/4777 %%z:&>?#aVaV$4dC	)C./::::%%y)&<=$q!fq!f%5tD
*S/<8888r+   c                 D   [         R                  " / SQ/ SQS./ SQS9nSUl        UR                  S:X  d   eUS/   R                  S:X  d   eUR                  SS/S S 24   R                  S:X  d   eUR                  S	S
/S S 24   R                  S:X  d   eUR                  S	S
2S S 24   R                  S:X  d   e[         R
                  " X!5      n[         R                  " X#5        UR                  UR                  :X  d   eUR                  UR                  :X  d   eg )Nr   r   r   r   XXXr   r   r   r   r   )r   r   testattrlocilocround_trip_pickleassert_frame_equal	_metadata)r   	temp_filer   	unpickleds       r   test_dataframe_metadata0TestDataFrameSubclassing.test_dataframe_metadataU   s   ##),O
 {{e###3%y!!U***vvsCj!m$--666ww1vqy!**e333 wwqsAv''5000 ((7	
b,||y22222{{i00000r+   c                 J   [         R                  " / SQ/ SQ/ SQS./ SQS9nUR                  S S 2S4   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eUR                  S S 2S
4   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eUR                  S S 2S4   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eUR                  SS S 24   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eUR                  S
S S 24   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eUR                  SS S 24   n[         R                  " / SQ[	        S5      SS	9n[         R
                  " X#5        [        U[         R                  5      (       d   eg )Nr      rQ            	   r   r   Zr   r   r   abcr   namer   r   rx   r   )r   rq   rt   XYZ)r   rQ   ru   r   r   )r   rr   rv   )r   r   rf   SubclassedSerieslistassert_series_equalrX   rg   r   r   resexps       r   test_indexing_sliced-TestDataFrameSubclassing.test_indexing_slicedi   s    ##))<O
 ffQVn!!)4;SI
s(#r223333ggadm!!)4;SI
s(#r223333ffQVn!!)4;SI
s(#r223333ffS!Vn!!)4;SI
s(#r223333ggadm!!)4;SI
s(#r223333ffS!Vn!!)4;SI
s(#r223333r+   c                      " S S[         5      n[        R                  " [        SS9   U" 5       R                    S S S 5        g ! , (       d  f       g = f)Nc                   $    \ rS rSr\S 5       rSrg)FTestDataFrameSubclassing.test_subclass_attr_err_propagation.<locals>.A   c                     U R                   $ r&   )i_dont_existr/   s    r   nonexistenceSTestDataFrameSubclassing.test_subclass_attr_err_propagation.<locals>.A.nonexistence   s    (((r+   r'   N)r3   r4   r5   r6   r7   r   r8   r'   r+   r   rR   r      s    ) )r+   rR   z.*i_dont_exist.*)match)r   pytestraisesAttributeErrorr   )r   rR   s     r   "test_subclass_attr_err_propagation;TestDataFrameSubclassing.test_subclass_attr_err_propagation   s7    	)	 	)
 ]]>1CDC EDDs   A
Ac                 v   [         R                  " / SQ/ SQS.[        S5      S9n[         R                  " / SQ/ SQS.[        S5      S9nUR                  USS	9u  p4[         R                  " S
[        R
                  S[        R
                  S/S
[        R
                  S[        R
                  S/S.[        S5      S9n[         R                  " S
S[        R
                  S[        R
                  /S
S[        R
                  S[        R
                  /S.[        S5      S9n[        U[         R                  5      (       d   e[         R                  " X55        [        U[         R                  5      (       d   e[         R                  " XF5        UR                  R                  UR                  5      u  p4[        U[         R                  5      (       d   e[         R                  " X5R                  5        [        U[         R                  5      (       d   e[         R                  " XFR                  5        g )Nr   r   rQ   r   r   ACEr   r   r   rq   )r   dABDr   axisr   r   rQ   ABCDEr   rq   )r   r   r~   alignnpnanrX   ri   r   r   r}   r   )r   df1df2res1res2exp1exp2s          r   test_subclass_align,TestDataFrameSubclassing.test_subclass_align   s   $$),DK
 $$),DK
 YYsY+
%%bffa+1bffa2KLw-
 %%aBFF+1aBFF2KLw-
 $ 6 67777
d)$ 6 67777
d)UU[['
$ 3 34444
tVV,$ 3 34444
tVV,r+   c                    [         R                  " / SQ/ SQS.[        S5      S9n[         R                  " / SQ[        S5      SS9nUR	                  US	S
9u  p4[         R                  " S[
        R                  S[
        R                  S/S[
        R                  S[
        R                  S/S.[        S5      S9n[         R                  " SS[
        R                  S[
        R                  /[        S5      SS9n[        U[         R                  5      (       d   e[         R                  " X55        [        U[         R                  5      (       d   e[         R                  " XF5        UR	                  U5      u  p4[        U[         R                  5      (       d   e[         R                  " X65        [        U[         R                  5      (       d   e[         R                  " XE5        g )Nr   r   r   r   r   r   xrz   r   r   r   r   rQ   r   r   rq   )
r   r   r~   r}   r   r   r   rX   ri   r   )r   r   sr   r   r   r   s          r    test_subclass_align_combinations9TestDataFrameSubclassing.test_subclass_align_combinations   sp   ##))$DDQVKX	e3G XXaaX(
%%bffa+1bffa2KLw-

 ""2661bff%T']
 $ 6 67777
d)$ 3 34444
t* WWR[
$ 3 34444
t*$ 6 67777
d)r+   c                     [         R                  " SS/05      nUR                  5        HI  u  p#[        U[         R                  5      (       d   e[         R
                  " X1R                  U   5        MK     g )Nr   r   )r   r   iterrowsrX   r}   r   rf   )r   r   irows       r   test_subclass_iterrows/TestDataFrameSubclassing.test_subclass_iterrows   sY    ##S1#J/kkmFAc2#6#67777""3q	2 $r+   c                     [         R                  " / SQ/ SQ/ SQ// SQ/ SQS9nUR                  5       n[         R                  " / SQ[	        S5      [	        S	5      /S
9n[         R
                  " X#5        g )Nr   rp   rs   r   rw   r   rU   )	r   r   r   rq   rQ   rr   rt   ru   rv   	aaabbbccc	XYZXYZXYZr   )r   r   stackr}   r~   r   r   s       r   test_subclass_stack,TestDataFrameSubclassing.test_subclass_stack   sc    ##	9-!#
 hhj!!'[0A4CT/U
 	s(r+   c                    [         R                  " / SQ/ SQ/ SQ/ SQ/[        R                  " [	        [        [	        S5      [	        S5      5      5      SS/S	9[        R                  " [	        [        [	        S
5      [	        S5      5      5      SS/S	9S9n[         R                  " SS/SS/SS/SS/SS/SS/SS/SS//[        R                  " [	        [        [	        S5      [	        S 5      [	        S!5      5      5      / S"QS	9[        S#S$/SS%9S9nUR                  5       n[         R                  " X25        UR                  S5      n[         R                  " X25        [         R                  " SS/SS/SS/SS/SS/SS/SS/SS//[        R                  " [	        [        [	        S5      [	        S 5      [	        S&5      5      5      / S'QS	9[        S(S)/SS%9S9nUR                  S5      n[         R                  " X25        g )*NrN                                  !   (   )   r;   +   AABBcdcdaaacccnamesWWXXyzyzwwwyyyr   rN   r   r   r   r   r   r   r   r   r   r   r   r   r;   r   r   AAAABBBBccddccddyzyzyzyzr   r   r   Wr   r{   WXWXWXWXr   r   r   yz	r   r   r   rY   r~   zipr   r   ri   r   r   r   r   s       r   test_subclass_stack_multi2TestDataFrameSubclassing.test_subclass_stack_multi   s   ##/1ACST((SftF|45eU^ **SftF|45eU^
 $$RRRRRRRR	 ((Sj)4
+;T*=MNO+ 3*51
$ hhj
c'hhuo
c'$$RRRRRRRR	 ((Sj)4
+;T*=MNO+ 3*51
$ hhuo
c'r+   c                    [         R                  " / SQ/ SQ/ SQ/ SQ/[        R                  " [	        [        [	        S5      [	        S5      5      5      SS/S	9[        R                  " [	        [        [	        S
5      [	        S5      5      5      SS/S	9S9n[         R                  " SS/SS/SS/SS/SS/SS/SS/SS//[        R                  " [	        [        [	        S5      [	        S 5      [	        S!5      5      5      / S"QS	9[        S#S$/SS%9S9nUR                  5       n[         R                  " X25        UR                  S5      n[         R                  " X25        [         R                  " S&S'/SS/S(S)/SS/S*S+/SS/S,S-/SS//[        R                  " [	        [        [	        S5      [	        S 5      [	        S.5      5      5      / S/QS	9[        S0S1/SS%9S9nUR                  S5      n[         R                  " X25        g )2NrN   r         (@      *@r   r         6@      7@r   r         @@     @@r   r         E@     E@r   r   r   r   r   r   r   r   r   r   rN   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   g      $@g      &@g      4@      5@g      >@g      ?@g      D@g     D@r   r   r   r   r   r   s       r   test_subclass_stack_multi_mixed8TestDataFrameSubclassing.test_subclass_stack_multi_mixed  s   ##$$$$	 ((SftF|45eU^ **SftF|45eU^
 $$T
T
T
T
T
T
T
T
	 ((Sj)4
+;T*=MNO+ 3*51
$ hhj
c'hhuo
c'$$tttttttt	 ((Sj)4
+;T*=MNO+ 3*51
$ hhuo
c'r+   c                     [         R                  " / SQ/ SQ/ SQ// SQ/ SQS9nUR                  5       n[         R                  " / SQ[	        S5      [	        S	5      /S
9n[         R
                  " X#5        g )Nr   rp   rs   r   rw   r   )	r   rq   rt   r   rQ   ru   r   rr   rv   	XXXYYYZZZ	abcabcabcr   )r   r   unstackr}   r~   r   r   s       r   test_subclass_unstack.TestDataFrameSubclassing.test_subclass_unstack\  sc    ##	9-!#
 jjl!!'[0A4CT/U
 	s(r+   c                    [         R                  " / SQ/ SQ/ SQ/ SQ/[        R                  " [	        [        [	        S5      [	        S5      5      5      SS/S	9[        R                  " [	        [        [	        S
5      [	        S5      5      5      SS/S	9S9n[         R                  " / SQ/ SQ/[        SS/SS9[        R                  " [	        [        [	        S5      [	        S5      [	        S5      5      5      / SQS	9S9nUR                  5       n[         R                  " X25        UR                  S5      n[         R                  " X25        [         R                  " / SQ/ SQ/[        SS/SS9[        R                  " [	        [        [	        S5      [	        S5      [	        S5      5      5      / SQS	9S9nUR                  S5      n[         R                  " X25        g )Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   )rN   r   r   r   r   r   r   r   )r   r   r   r   r   r;   r   r   rR   rS   r   WWWWXXXXyyzzyyzzcdcdcdcdr   r   r   )rN   r   r   r   r   r   r   r   )r   r   r   r   r   r;   r   r   r   r   ABABABABr   r   r   	r   r   r   rY   r~   r   r   r   ri   r   s       r   test_subclass_unstack_multi4TestDataFrameSubclassing.test_subclass_unstack_multik  s   ##/1ACST((SftF|45eU^ **SftF|45eU^
 $$-/OPc
/**Sj)4
+;T*=MNO+
 jjl
c'jj
c'$$-/OPc
/**Sj)4
+;T*=MNO+
 jj
c'r+   c                    [         R                  " / SQ/ SQ/ SQ/ SQ/[        R                  " [	        [        [	        S5      [	        S5      5      5      SS/S	9[        R                  " [	        [        [	        S
5      [	        S5      5      5      SS/S	9S9n[         R                  " / SQ/ SQ/[        SS/SS9[        R                  " [	        [        [	        S5      [	        S5      [	        S5      5      5      / SQS	9S9nUR                  5       n[         R                  " X25        UR                  S5      n[         R                  " X25        [         R                  " / SQ/ SQ/[        SS/SS9[        R                  " [	        [        [	        S5      [	        S5      [	        S5      5      5      / SQS	9S9nUR                  S5      n[         R                  " X25        g )Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   )rN   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   rR   rS   r   r   r   r   r   )rN   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r  r  r  r   s       r   !test_subclass_unstack_multi_mixed:TestDataFrameSubclassing.test_subclass_unstack_multi_mixed  s   ##$$$$	 ((SftF|45eU^ **SftF|45eU^
 $$88 c
/**Sj)4
+;T*=MNO+

 jjl
c'jj
c'$$88 c
/**Sj)4
+;T*=MNO+

 jj
c'r+   c                    [         R                  " / SQ/ SQ/ SQS.5      nUR                  SSSS9n[         R                  " SS	S
S.SS	S
S.S.5      nSu  UR                  l        UR
                  l        [         R                  " X#5        g )N)rR   rS   Cr
  rS   rR   )Oner  r  Twor  r  )      ?       @      @r  r  r  )r   rU   valuesr   rU   r  r  r  r  rR   rS   r
  )r  r  r   )r   r   pivotr   r{   rU   ri   )r   r   pivotedexpecteds       r   test_subclass_pivot,TestDataFrameSubclassing.test_subclass_pivot  s    ##7E8
 (()H(M)) s5 s5
 6H2X--2
g0r+   c                     [         R                  " SS/SS/SS/SS/S	.5      n[        R                  " US
S/S9n[         R                  " / SQ/ SQ/ SQ/ SQ// SQS9n[         R                  " X#5        g )NJohnMaryDoeBo      @      @      )firstlastheightweightr   r!  )id_varsr  r  r"  r  r  r  r"  r  r  r  r#  r  r  r  r#  r  r   r!  variablevaluerT   )r   r   pdmeltri   )r   cheesemeltedr  s       r   test_subclassed_melt-TestDataFrameSubclassing.test_subclassed_melt  s    '' &)**	
 '6):;)).-.-	 ;
 	f/r+   c                 &   [         R                  R                  S5      R                  S5      n[        R
                  " SSSS.SSS	S.S
SSS.SSSS.[        [        [        S5      U5      5      S.5      nUR                  US'   UR                  5       UR                  5       -   / SQ/ SQ/ SQ/ SQS.n[        R
                  " U5      nUR                  SS/5      / SQ   n[        R                  " USS/SSS9n[        R                  " XT5        g )Nr   r   r   r   r   )r   r   r   r   ef      @333333?ffffff?皙	@?皙?)A1970A1980B1970B1980r   id)r   r   r   r   r3  r4  )r5  r6  r7  r8  r9  r:  )  r@  r@    rA  rA  )r   r   r   r   r   r   )r   rR   rS   yearr?  rB  )r   rR   rS   rR   rS   )r   j)r   randomdefault_rngstandard_normalr   r   dictr   rW   r   tolist	set_indexr,  wide_to_longri   )r   r   r   exp_datar  
long_frames         r   test_subclassed_wide_to_long5TestDataFrameSubclassing.test_subclassed_wide_to_long  s     II!!!$44Q7## SS1 SS1 SS1 SS1#eAh*+
 884ahhj(//8$
 ))(3%%tVn5oF__R#stvF

j3r+   c                   ^^ S mS m[         R                  " / SQ/ SQ/ SQ/ SQ// SQS9nUR                  U4S	 j5        UR                  U4S
 jSS9  [         R                  " / SQ/ SQ/ SQ/ SQ// SQS9nUR                  U4S jSS9n[        U[         R                  5      (       d   e[         R                  " X25        [         R                  " / SQ/ SQ/ SQ/ SQ/5      nUR                  S SS9n[        U[         R                  5      (       d   e[         R                  " X25        UR                  S SSS9n[        U[         R                  5      (       d   e[         R                  " X25        [         R
                  " / SQ/ SQ/ SQ/ SQ/5      nUR                  S SS9n[        U[         R                  5      (       a   e[         R                  " X25        g )Nc                 F    [        U [        R                  5      (       d   eg r&   )rX   r   r}   r   s    r   check_row_subclassJTestDataFrameSubclassing.test_subclassed_apply.<locals>.check_row_subclass  s    c2#6#67777r+   c                 2    U S   S:X  a  U S==   S-  ss'   U $ )Nr*  r"  r+  g      ?r'   rQ  s    r   stretch?TestDataFrameSubclassing.test_subclassed_apply.<locals>.stretch  s!    :(*G#Jr+   r%  r&  r'  r(  r)  rT   c                    > T" U 5      $ r&   r'   r   rR  s    r   <lambda>@TestDataFrameSubclassing.test_subclassed_apply.<locals>.<lambda>%      -a0r+   c                    > T" U 5      $ r&   r'   rX  s    r   rY  rZ  &  r[  r+   r   r   )r  r  r"  r  )r  r  r"  g      @c                    > T" U 5      $ r&   r'   )r   rU  s    r   rY  rZ  2  s	    GAJr+   r   c                 2    [         R                  " / SQ5      $ Nr   )r   r}   r   s    r   rY  rZ  8  s    B$7$7	$Br+   c                 
    / SQ$ r_  r'   r`  s    r   rY  rZ  <      Ir+   expand)r   result_typec                 
    / SQ$ r_  r'   r`  s    r   rY  rZ  B  rb  r+   )r   r   applyrX   ri   r}   r   )r   r   r  resultrR  rU  s       @@r   test_subclassed_apply.TestDataFrameSubclassing.test_subclassed_apply  s   	8	
 ##.-.-	 ;
 	01
0q9)).-.-	 ;
 .Q7&""8"89999
f/))9iI*VWBK&""8"89999
f/-A8L&""8"89999
f/&&	9i'ST-A6fb&<&<====
v0r+   c                     [         R                  " / SQ/ SQ/ SQS.5      n[        X!5      " 5       n[        U[         R                  5      (       d   eg Nr   rp   rs   r  r   r   getattrrX   r}   )r   all_reductionsr   rg  s       r   test_subclassed_reductions3TestDataFrameSubclassing.test_subclassed_reductionsF  sA     ##)))$TU,.&""5"56666r+   c                    [         R                  " / SQS[        R                  SSS// SQS.5      nUR	                  5       n[        U[         R                  5      (       d   e[         R                  " / SQ/ S	Q/ S
QS.5      nUR	                  5       n[        U[         R                  5      (       d   e[         R                  " / SQ/ SQ/ SQ/ SQ/[        R                  " [        [        [        S5      [        S5      5      5      SS/S9[        R                  " [        [        [        S5      [        S5      5      5      SS/S9S9nUR	                  5       n[        U[         R                  5      (       d   e[         R                  " 5       nUR	                  5       n[        U[         R                  5      (       d   eg )N)r  MylaLewisr  rr  g      8@r   r      )FTTTF)PersonAgeSingle)r   r   r   )r   rQ   rr   )rt   ru   r   r  r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   countrX   r}   r   rY   r~   r   r   r   rg  s      r   test_subclassed_count.TestDataFrameSubclassing.test_subclassed_countM  s_   ##CbffdB3:
 &""5"56666##)))$TU&""5"56666##/1ACST((SftF|45eU^ **SftF|45eU^
 &""5"56666##%&""5"56666r+   c                     [         R                  " SS/SS/S.SS/S9nUR                  SS/5      n[        U[         R                  5      (       d   eg )Nr   rq   r   )num_legs	num_wingsfalcondogr   )r   r   isinrX   ry  s      r   	test_isin"TestDataFrameSubclassing.test_isinl  sU    ##Qq!f5h=N
 !Q&""8"89999r+   c                 2   [         R                  " / SQ/ SQ/ SQS.5      nUR                  5       n[        U[         R                  5      (       d   e[         R                  " 5       nUR                  5       n[        U[         R                  5      (       d   eg rk  )r   r   
duplicatedrX   r}   ry  s      r   test_duplicated(TestDataFrameSubclassing.test_duplicateds  so    ##)))$TU&""5"56666##%&""5"56666r+   
idx_methodidxmaxidxminc                     [         R                  " / SQ/ SQ/ SQS.5      n[        X!5      " 5       n[        U[         R                  5      (       d   eg rk  rl  )r   r  r   rg  s       r   test_idx!TestDataFrameSubclassing.test_idx|  s?    ##)))$TU(*&""5"56666r+   c                    [         R                  " / SQ/ SQ/5      n[         R                  " / SQ5      nUR                  U5      n[	        U[         R                  5      (       d   e[         R                  " / SQ/ SQ/5      n[         R                  " / SQ5      nUR                  U5      n[	        U[         R                  5      (       d   eg )N)r   r   )r   r   r   r   )r   r   r   r   )r   r   r}   dotrX   )r   r   r   rg  s       r   test_dot!TestDataFrameSubclassing.test_dot  s    ##^\$BC-&""5"56666##^\$BC""<0&""8"89999r+   c                    [         R                  " / SQ/ SQ/ SQS.5      nUR                  5       n[        U[         R                  5      (       d   eUR                  SS9n[        U[         R                  5      (       d   eg )Nr   rp   rs   r  Fr   )r   r   memory_usagerX   r}   ry  s      r   test_memory_usage*TestDataFrameSubclassing.test_memory_usage  sg    ##)))$TU"&""5"56666u-&""5"56666r+   c                    [         R                  " S5        / SQn/ SQn[        R                  " [        R
                  R                  S5      R                  S5      UUS9n[        R                  " [        R
                  R                  S5      R                  S5      US S US9nUR                  US	S
SS9n[        U[        R                  5      (       d   eg )Nscipy)r   r   r   r   r3  )onetwothreefourr   )rQ   rq   r   )rq   rq   rq   r   Tkendall)r   dropmethod)r   importorskipr   r   r   rD  rE  rF  corrwithrX   r}   )r   r   rU   r   r   correlss         r   test_corrwith&TestDataFrameSubclassing.test_corrwith  s    G$)1$$II!!!$44V<

 $$II!!!$44V<)

 ,,si,H'B$7$79999r+   c                    Sn[         R                  " SUSS9n[        R                  " [        R
                  [        R
                  [        R
                  /[        R
                  [        R
                  [        R
                  /[        R
                  [        R
                  [        R
                  /S.US9nUR                  USS  5      n[        U[        R                  5      (       d   eUR                  US   5      n[        U[        R                  5      (       d   eUR                  S5      n[        U[        R                  5      (       d   eg )	Nr   z1/1/199053s)periodsfreqr  r   r  z
1989-12-31)	r,  
date_ranger   r   r   r   asofrX   r}   )r   Nrngr   rg  s        r   	test_asof"TestDataFrameSubclassing.test_asof  s    mmJ>##ffbffbff-ffbffbff-ffbffbff-
 
 RS"&""8"89999R!&""5"56666&&""5"56666r+   c                     [         R                  " / SQ/ SQ/ SQS.5      nUR                  5       n[        U[         R                  5      (       d   eg rk  )r   r   r  rX   r}   ry  s      r   test_idxmin_preserves_subclass7TestDataFrameSubclassing.test_idxmin_preserves_subclass  ?     ##)))$TU&""5"56666r+   c                     [         R                  " / SQ/ SQ/ SQS.5      nUR                  5       n[        U[         R                  5      (       d   eg rk  )r   r   r  rX   r}   ry  s      r   test_idxmax_preserves_subclass7TestDataFrameSubclassing.test_idxmax_preserves_subclass  r  r+   c                     [         R                  " / SQ/ SQ/ SQS.5      nUR                  5       n[        U[         R                  5      (       d   eg rk  )r   r   convert_dtypesrX   ry  s      r   &test_convert_dtypes_preserves_subclass?TestDataFrameSubclassing.test_convert_dtypes_preserves_subclass  s@    ##)))$TU""$&""8"89999r+   c                    ^  " U4S jS[         5      mT" S/ SQ05      nUR                  5       n[        UT5      (       d   eg )Nc                   ,   > \ rS rSr\U 4S j5       rSrg)mTestDataFrameSubclassing.test_convert_dtypes_preserves_subclass_with_constructor.<locals>.SubclassedDataFramei  c                    > T$ r&   r'   )r   r   s    r   r)   zTestDataFrameSubclassing.test_convert_dtypes_preserves_subclass_with_constructor.<locals>.SubclassedDataFrame._constructor  s	    **r+   r'   N)r3   r4   r5   r6   r7   r)   r8   )r   s   r   r   r    s    + +r+   r   r   r   )r   r  rX   )r   r   rg  r   s      @r   7test_convert_dtypes_preserves_subclass_with_constructorPTestDataFrameSubclassing.test_convert_dtypes_preserves_subclass_with_constructor  sB    	+) 	+
 !#y!12""$&"56666r+   c                    [         R                  " / SQ/ SQ/ SQS.5      nUR                  [        R                  [        R
                  [        R                  S.5      n[        U[         R                  5      (       d   eg rk  )r   r   astyper   int64int32float64rX   ry  s      r   test_astype_preserves_subclass7TestDataFrameSubclassing.test_astype_preserves_subclass  sS    ##)))$TUrzzJK&""8"89999r+   c                     [        S/ SQ05      n[        R                  " S/ SQ05      nUR                  U5      (       d   eUR                  U5      (       d   eg Nr   r   )r   r   r   equals)r   r   r   s      r   test_equals_subclass-TestDataFrameSubclassing.test_equals_subclass  sL     i()$$c9%56zz#zz#r+   r'   N))r3   r4   r5   r6   r   ra   rm   r   r   r   r   r   r   r   r   r   r  r  r  r0  rM  rh  ro  rz  r  r  r   markparametrizer  r  r  r  r  r  r  r  r  r  r  r8   r'   r+   r   r   r      s    	59n1(!4F-:*83)7(r<(|)%(N0(d1.024841l77>:7 [[\Hh+?@7 A7
	:7:$7*77:7:r+   r   c                   B   ^  \ rS rSrS/rSU 4S jjr\S 5       rSrU =r	$ )MySubclassWithMetadatai  my_metadatac                    > [         TU ]  " U0 UD6  UR                  SS 5      nU(       a'  [        US   [        5      (       a  US   R
                  nX0l        g )Nr  r   )r=   r>   poprX   r  r  )r   r?   kwargsr  rA   s       r   r>   MySubclassWithMetadata.__init__  sN    $)&)jj5JtAw(>??q'--K&r+   c                     [         $ r&   )r  r/   s    r   r)   #MySubclassWithMetadata._constructor  s    %%r+   )r  rI   )
r3   r4   r5   r6   rj   r>   r7   r)   r8   rM   )rA   s   @r   r  r    s#    I' & &r+   r  c                      [        [        R                  R                  S5      R                  S5      / SQS9n U SS/   n[	        U[         5      (       d   eg )Nr   )rQ   r   r  rT   rR   rS   )r  r   rD  rE  rX   )r   subsets     r   test_constructor_with_metadatar    sP     
 
		a ''/
B c
^Ff45555r+   c                  |    [         R                  SSS./5      n U R                  b   e[        U 5      [         L d   eg )Nr   r   r   )r  from_recordsr  type)r   s    r   +test_constructor_with_metadata_from_recordsr    s=    		,	,AA.>-?	@B>>!!!8----r+   c                       \ rS rSrSrSrg)SimpleDataFrameSubClassi  z;A subclass of DataFrame that does not define a constructor.r'   Nr3   r4   r5   r6   rK   r8   r'   r+   r   r  r    s    Er+   r  c                       \ rS rSrSrSrg)SimpleSeriesSubClassi  z8A subclass of Series that does not define a constructor.r'   Nr  r'   r+   r   r  r    s    Br+   r  c                   ,    \ rS rSrS rS rS rS rSrg)TestSubclassWithoutConstructori  c                     [        S/ SQ05      n[        U5      R                  5       n[        U5      [         L d   e[        R
                  " X!5        g r  )r   r  copyr  r   ri   r   r  rg  s      r   test_copy_df+TestSubclassWithoutConstructor.test_copy_df  sH    c9-.(2779 LI%	
%
f/r+   c                 |    [        / SQ5      n[        U5      R                  5       n[        R                  " X!5        g r_  )r   r  r  r   r   r  s      r   test_copy_series/TestSubclassWithoutConstructor.test_copy_series  s-    )$%h/446
v0r+   c                     [        / SQ5      nUR                  5       n[        U5      R                  5       n[        U5      [        L d   e[
        R                  " X25        g r_  )r   to_framer  r  r   r   ri   )r   origr  rg  s       r   test_series_to_frame3TestSubclassWithoutConstructor.test_series_to_frame#  sN    i ==?%d+446 LI%	
%
f/r+   c                     [        [        S/ SQ05      5      nUR                  S5       H  u  p#[        U5      [        L a  M   e   g r  )r  r   groupbyr  )r   r   _vs       r   test_groupby+TestSubclassWithoutConstructor.test_groupby-  s<    $YY/?%@AJJsODA7i''' $r+   r'   N)	r3   r4   r5   r6   r  r  r  r  r8   r'   r+   r   r  r    s    010(r+   r  )numpyr   r   pandasr,  r   r   r   r   pandas._testing_testingr   r  filterwarnings
pytestmarkr   r  r  r  r  r  r  r'   r+   r   <module>r      s}        [[''S

U Up&Y & 6.Fi FC6 C( (r+   