
    A>i6%              
           S SK rS SKrS SKrS SKJr  \R                  R                  S/ SQ5      S 5       r
\R                  R                  S/ SQ5      S 5       rS rS	 r\R                  R                  SS S
/5      S 5       rS rS rS r\R                  R                  SS
S/SSSS.SS/5      S 5       r\R                  R                  SS\R&                  4\R&                  \R&                  4\R&                  S4/5      S 5       r\R                  R                  SSSS\R&                  \R&                  4S\R&                  S\R&                  4\R&                  \R&                  \R&                  \R&                  4/5      S 5       rg)    N
align_axis)r      indexcolumnsc                    [         R                  " / SQSS[        R                  // SQS./ SQS9nUR	                  5       nSUR
                  S'   S	UR
                  S
'   UR                  X S9nU S;   a  [         R                  " SSS5      n[         R                  R                  SS/SS//5      n[         R                  " SS[        R                  [        R                  /[        R                  [        R                  SS	//UUS9nO[         R                  R                  [        SSS5      SS//5      n[         R                  " SS/5      n[         R                  " S[        R                  /S[        R                  /[        R                  S/[        R                  S	//UUS9n[        R                  " X65        g )Nabc      ?       @r   r         @col1col2col3r   r   r   r         @   r   r   )r   r   r      r   r   r   selfotherr	   r   r   r   )pd	DataFramenpnancopyloccompare
RangeIndex
MultiIndexfrom_productrangeIndextmassert_frame_equal)r   dfdf2resultindicesr   expecteds          f/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/frame/methods/test_compare.pytest_compare_axisr2      si    
 3RVV*<oV(
B '')CCGGICGGIZZZ3F^#--1a(--,,vv.>@Q-RS<<3'"&&"&&#s)CD
 --,,eAq!nvw>O-PQ((FF+,<<266]S"&&MBFFC=2663-H

 &+    zkeep_shape, keep_equal))TF)FT)TTc           
         [         R                  " / SQSS[        R                  // SQS./ SQS9nUR	                  5       nSUR
                  S'   S	UR
                  S
'   UR                  X0US9nU (       Gas  [         R                  " S5      n[         R                  R                  / SQSS//5      nU(       aA  [         R                  " / SQ/ SQSS[        R                  [        R                  SS	//UUS9nGOH[         R                  " SS[        R                  [        R                  [        R                  [        R                  /[        R                  [        R                  [        R                  [        R                  [        R                  [        R                  /[        R                  [        R                  [        R                  [        R                  SS	//UUS9nOX[         R                  " SSS5      n[         R                  R                  SS/SS//5      n[         R                  " / SQ/ SQ/XVS9n[        R                  " XG5        g )Nr   r   r   r   r   r   r   r   r   r   )
keep_shape
keep_equal   r   r   )r	   r   r   r   r   r   )r
   r
   r   r   r   r   r   r   r	   r   r   r   r   r   )r	   r   r   r   )r   r   r   r   )r   r   r    r!   r"   r#   r$   r%   r&   r'   r*   r+   )r5   r6   r,   r-   r.   r/   r   r0   s           r1   test_compare_various_formatsr8   (   s    
 3RVV*<oV(
B '')CCGGICGGIZZzZJF--"--,,%'89
 ||22#rvvrvvsC8
 H ||#rvvrvvrvvrvv>VVRVVRVVRVVRVVRVVDVVRVVRVVRVVS#>
 H --1a(--,,vv.>@Q-RS<<!#78
 &+r3   c                     [         R                  " / SQSS[        R                  // SQS./ SQS9n U R	                  5       nSUR
                  S'   U R                  U5      n[         R                  " S	/5      n[         R                  R                  S
/SS//5      n[         R                  " SS//X4S9n[        R                  " X%5        g )Nr   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   r    r!   r"   r#   r$   r)   r&   r'   r*   r+   r,   r-   r.   r/   r   r0   s         r1   test_compare_with_equal_nullsr<   ^   s     
 3RVV*<oV(
B '')CCGGIZZ_FhhsmGmm((6(VW4E)FGG||c3ZLIH&+r3   c                  p   [         R                  " / SQSS[        R                  // SQS./ SQS9n U R	                  5       nSUR
                  S'   [        R                  UR
                  S	'   U R                  U5      n[         R                  " S
S/5      n[         R                  R                  SS/SS//5      n[         R                  " SS[        R                  [        R                  /[        R                  [        R                  S[        R                  //UUS9n[        R                  " X%5        g )Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	   r   r   r:   r;   s         r1   !test_compare_with_non_equal_nullsr>   o   s     
 3RVV*<oV(
B '')CCGGICGGIZZ_Fhh1vGmm((66*:VW<M)NOG||
sBFFBFF	#bffbffc266%BCH
 &+r3   r   c                 0   [         R                  " / SQSS[        R                  // SQS.5      n[         R                  R                  / SQ/ SQ/5      Ul        [         R                  R                  / SQ/ SQ/5      Ul        UR                  5       nS	UR                  S
'   SUR                  S'   UR                  X S9nU S:X  a  [         R                  R                  / SQ/ SQ/ SQ/5      n[         R                  R                  SS/SS//5      nS[        R                  /S	[        R                  /[        R                  S/[        R                  S//nO[         R                  R                  SS/SS//5      n[         R                  R                  / SQ/ SQ/ SQ/5      nSS	[        R                  [        R                  /[        R                  [        R                  SS//n[         R                  " XdUS9n[        R                  " X75        g )Nr   r   r   r   r   )r	   r	   r
   )xr@   y)r   r   r   r   )r   r   r   )r   r   r   r   )r@   r@   rA   rA   )r   r   r   r   )r   r   r   r   r	   r
   r   r   r   r@   rA   r   )r	   r	   r
   r
   )r   r   r   r   )datar   r   )r   r   r    r!   r&   from_arraysr   r   r"   ilocr$   r*   r+   )r   r,   r-   r.   r/   r   rB   r0   s           r1   test_compare_multi_indexrE      s   	 3RVV*<oV
B **O=U+VWBJ}}((/9)EFBH
'')CCHHTNCHHTNZZZ3FQ--++!<1ST
 --++c3Z&&9I,JKbffRVV}rvvsmbffc]K--++c3Z!Q,@A--++$02
 c266266*RVVRVVS#,FG||gFH&+r3   c                      Sn [         R                  " / SQ/ SQS9n[         R                  " / SQ/ SQS9n[        R                  " [        U S9   UR                  U5        S S S 5        g ! , (       d  f       g = f)NQCan only compare identically-labeled \(both index and columns\) DataFrame objects)r   r   r7   r   )r   )r	   r
   dmatch)r   r   pytestraises
ValueErrorr$   msgdf1r-   s      r1   test_compare_different_indicesrQ      sT    	  ,,y
8C
,,y
8C	z	-C 
.	-	-s   A))
A7c                  8   Sn [         R                  " [        R                  " S5      5      n[         R                  " [        R                  " S5      5      n[
        R                  " [        U S9   UR                  U5        S S S 5        g ! , (       d  f       g = f)NrG   )r7   r7   )r   r   rI   )	r   r   r    oneszerosrK   rL   rM   r$   rN   s      r1   test_compare_different_shapesrU      sa    	  ,,rwwv
'C
,,rxx'
(C	z	-C 
.	-	-s   0B
Bc                  >   [         R                  " / SQSS[        R                  // SQS.5      n [         R                  " / SQSS[        R                  /SS[        R                  /S.5      nU R	                  USS9n[         R
                  " S	S
/5      Ul        [         R                  " S[        R                  S.S[        R                  S.[        R                  SS.[        R                  [        R                  S.S.5      n[        R                  " X#5        g )Nr   r   r   r   r   r   r
   r   )leftrightresult_namesr   r   r	   )r   r   r   r   ))r   rX   )r   rY   )r   rX   )r   rY   )	r   r   r    r!   r$   r)   r   r*   r+   )rP   r-   r.   r0   s       r1   test_compare_result_namesr\      s    
,, 3RVV*<oVC ,,##rvv&#rvv&	
C [[+<[=F88QF#FL||"%"&&1#&2662"$&&S1#%66bff5		
H &+r3   r[   r   HKr7   )23r   c                 |   [         R                  " / SQSS[        R                  // SQS.5      n[         R                  " / SQSS[        R                  /SS[        R                  /S.5      n[        R
                  " [        S[        U 5       S3S	9   UR                  X S
9  S S S 5        g ! , (       d  f       g = f)Nr   r   r   r   r   rW   zPassing 'result_names' as a z= is not supported. Provide 'result_names' as a tuple instead.rI   rZ   )	r   r   r    r!   rK   rL   	TypeErrortyper$   )r[   rP   r-   s      r1   test_invalid_input_result_namesrc      s     ,, 3RVV*<oVC ,,##rvv&#rvv&	
C 
*4+=*> ?D D
 	C3
 
 
s   B--
B;z	val1,val2r   c                    SU /n[         R                  " SU/SS9n[         R                  " USS/S.5      n[         R                  " USS/S.5      n[         R                  " UU[        R                  [        R                  S.5      nU [         R
                  L a0  U[         R
                  L a  [        R                  UR                  S	'   U [         R
                  L a3  [        R                  " [        S
S9   UR                  USS9nS S S 5        g UR                  USS9n[        R                  " Xv5        g ! , (       d  f       g = f)Nr   r   Int64dtyper   r   r	   r
   r	   r   )r	   r   )r
   r   )r
   r   )r   rj   z boolean value of NA is ambiguousrI   Tr5   )r   Seriesr   r    r!   NAr#   rK   rL   ra   r$   r*   r+   )val1val2arrserrP   r-   r0   r.   s           r1   test_compare_ea_and_np_dtyperr      s    +C
))QIW
-C
,,SQx0
1C
,,SQx0
1C||66FF		
H ruu})+%&ruu}]]9,NO[[[6F PO ST2
f/	 POs   8D99
Ez$df1_val,df2_val,diff_self,diff_other)r   r7   r   r7   c                    [         R                  " [         R                  " U [         R                  /SS9SS/S.5      nUR	                  5       nXR
                  S'   [         R                  " [         R                  " U[         R                  /SS9[         R                  " U[         R                  /SS9[        R                  [        R                  S.5      nUR                  USS	9n[        R                  " Xv5        g )
Nre   rf   r   r   rh   )r   r	   ri   Trk   )r   r   rl   rm   r"   r#   r    r!   r$   r*   r+   )df1_valdf2_val	diff_self
diff_otherrP   r-   r0   r.   s           r1   !test_compare_nullable_int64_dtyperx     s     ,,RYY'7wGsTUhW
XC
((*CGGFO||99i%7wGIIz255&9I66FF		
H [[[.F&+r3   )numpyr    rK   pandasr   pandas._testing_testingr*   markparametrizer2   r8   r<   r>   rE   rQ   rU   r\   rc   rm   rr   rx    r3   r1   <module>r      s       'AB, C,> *,*,Z,",. 1v., /,D,2 	
Aa		4	4, Z"%%"%%,0	08 *	
Aruubee	
BEE1bee	ruubee$	,,r3   