+
    xȇi'                     V    ^ RI t^ RIt^ RIt^ RIHtHtHtHt ^ RI	H
t  ! R R4      tR# )    N)	DataFrameSeries	Timestamp
date_rangec                     a  ] tR t^t o R t]P                  P                  R^]P                  ! ^4      .4      R 4       t
R tR tR tR t]P                  P                  RR	R
.4      R 4       t]P                  P                  RR	R
.4      R 4       t]P                  P                  RR	R
.4      R 4       t]P                  P                  RR	R
.4      R 4       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]P>                  ^ ^^ ]P>                  ]P>                  ]P>                  ^ .R]P>                  ^]P>                  ]P>                  R$^]P>                  ]P>                  .R]P@                  ! ]P>                  ^4      R]P>                  ^^^^	^^^./RR7      3^]! R]P@                  ! ]P>                  ^4      R^ ^]P>                  ^]P>                  ]P>                  ]P>                  ^ .R]P@                  ! ]P>                  ^4      R]P@                  ! ]P>                  ^4      /RR7      3.4      R  4       t!R! t"R" t#R#t$V t%R	# )%TestDataFrameDiffc                   \        \        P                  P                  ^4      P	                  R4      4      p\
        P                  ! \        RR7      ;_uu_ 4        VP                  R4       RRR4       R#   + '       g   i     R# ; i)   zperiods must be an integer)matchg      ?N)r
   r
   )	r   nprandomdefault_rngstandard_normalpytestraises
ValueErrordiffselfdfs   & t/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/frame/methods/test_diff.pytest_diff_requires_integer,TestDataFrameDiff.test_diff_requires_integer   sS    ryy,,Q/??GH]]:-IJJGGCL KJJJs   A88B		numc                    TpVP                  V4      pVR ,          VR ,          P                  V4      ,
          p\        P                  ! VR ,          V4       R# )AN)r   shifttmassert_series_equal)r   datetime_framer   r   the_diffexpecteds   &&&   r   	test_diffTestDataFrameDiff.test_diff   sC    773<c7RW]]3//
x}h7    c                    R pV^,           p\        W.4      p\        RV/4      P                  4       pVP                  ^,          ^8X  g   Q hR# )l     _sN)r   r   r   r'   )r   abserrss   &    r   test_diff_int_dtype%TestDataFrameDiff.test_diff_int_dtype   sF    "EaVnSz"'')ttAw!||r%   c                    VP                  R 4      pVP                  ^4      p\        P                  ! VR,          VR,          VR,          P	                  ^4      ,
          4       R# )float32r   N)astyper   r   r   r   )r   r    tfr!   s   &&  r   test_diff_mixed_numeric)TestDataFrameDiff.test_diff_mixed_numeric&   sI    ""9-771:
x}bg3a8H.HIr%   c           
     $   \        R \        ^.4      R\        ^.4      /4      pVP                  ^ R^4       VP                  ^R7      p\        R\        P
                  R \        ^4      R\        ^4      /4      p\        P                  ! W#4       R# )yzxaxisN)r   r   insertr   r   nanr   assert_frame_equal)r   r   resultr"   s   &   r   test_diff_axis1_nonconsolidated1TestDataFrameDiff.test_diff_axis1_nonconsolidated,   sq    VQC[#vqc{;<
		!S!ac2663q	3q	JK
f/r%   c           
        \         P                  ! ^4      P                  ^^4      P                  R4      p\         P                  ! RR4      VR&   \        V4      pVP                  ^^ R7      p\        ^ V^ ,          ^\        P                  \        P                  ! ^4      \        P                  ! ^4      ./4      p\        P                  ! W44       VP                  ^ 4      pW",
          pV^ ,          P                  4       P                  4       '       g   Q h\        P                  ! W44       VP                  R^R7      pV\         P                  ,          p\        P                  ! W44       R# )   ztimedelta64[ns]NaTnsr8   N:NNNr   )r   arangereshaper0   timedelta64r   r   pdrB   	Timedeltar   assert_equalisnaallr;   r   arrr   r=   r"   s   &    r   test_diff_timedelta64_with_nat0TestDataFrameDiff.test_diff_timedelta64_with_nat4   s   iil""1a(//0ABNN5$/D	s^#aABFFBLLOR\\RS_+UVW
)7{!%%''''
)!$;
)r%   tzNUTCc                   \         P                  ! . ROVR7      P                  V4      p\        V4      pVP	                  4       pVP                  4       p\         P                  ! \         P                  \         P                  \         P                  ! ^R7      .4      P                  V4      p\        V4      P	                  4       p\        P                  ! Wh4       R# )rB   )rR   )daysN)rB   z
2019-01-01z
2019-01-02)rI   DatetimeIndexas_unitr   to_framer   TimedeltaIndexrB   rJ   r   r<   )	r   rR   unitdtir*   r   r=   ex_indexr"   s	   &&&      r   !test_diff_datetime_axis0_with_nat3TestDataFrameDiff.test_diff_datetime_axis0_with_natH   s     BrJRRSWXSk\\^$$bffbffbll6J%KLTT
 (#,,.
f/r%   c                   \        R ^VR7      p\        V4      pVP                  4       P                  4       pVP                  4       V^&   \        P
                  VP                  R&   WD,
          pV^ ,          P                  4       P                  4       '       g   Q hVP                  ^ ^ R7      p\        P                  ! We4       VP                  ^ ^R7      p\        P                  ! We4       R# )
2016-01-01)periodsrR   r8   NrD   )r   r   rX   copyrI   rB   ilocrL   rM   r   r   r<   )r   rR   r[   r*   r   r"   r=   s   &&     r   (test_diff_datetime_with_nat_zero_periods:TestDataFrameDiff.test_diff_datetime_with_nat_zero_periodsW   s     qR8Sk\\^  "
17{!%%''''#
f/#
f/r%   c                   \        ^ \        RR^VR7      ^\        RR^VR7      /4      pVP                  ^ R7      p\        ^ \        P                  ! RR.4      ^\        P                  ! RR.4      /4      p\
        P                  ! W44       R# )r   2010Dfreqra   rR   r8   rB   z1 daysNr   r   r   rI   rY   r   r<   r   rR   r   r=   r"   s   &&   r   test_diff_datetime_axis0*TestDataFrameDiff.test_diff_datetime_axis0k   s     :f3bA:f3bA
 a2$$eX%672$$eX%67
 	f/r%   c                "   \        ^ \        RR^VR7      ^\        RR^VR7      /4      pVP                  ^R7      p\        ^ \        P                  ! RR.RR7      ^\        P                  ! RR.4      /4      p\
        P                  ! W44       R	# )
r   rg   rh   ri   r8   rB   zm8[us]dtypez0 daysNrk   rl   s   &&   r   test_diff_datetime_axis1*TestDataFrameDiff.test_diff_datetime_axis1~   s     :f3bA:f3bA
 a2$$eU^8D2$$h%9:
 	f/r%   c                   \        R \        R4      \        R4      .RRR./4      pVR ,          P                  P                  V4      VR &   VP	                  4       p\        \
        P                  \        P                  .\
        P                  ! R4      ^..R R.R7      pVR ,          P                  P                  V4      VR &   \        P                  ! W44       R# )	timez20130101 9:01z20130101 9:02value      ?       @z00:01:00)columnsN)r   r   dtrW   r   rI   rB   r   r;   rJ   r   r<   )r   rZ   r   resexps   &&   r   test_diff_timedelta%TestDataFrameDiff.test_diff_timedelta   s    ?3Y5OP#s
 Z]]**406
ggiffbffZ 8!<=PWGX
 &knn,,T2F
c'r%   c                &   \        \        P                  P                  ^4      P	                  R4      4      p\        P
                  ! . RO\        R7      VR&   VP                  4       pV^ ,          P                  \        P                  8X  g   Q hR# )r
   rp   r   N)      )   r
   r      r   )
r   r   r   r   r   arrayobjectr   rq   float64)r   r   r=   s   &  r   test_diff_mixed_dtype'TestDataFrameDiff.test_diff_mixed_dtype   s_    ryy,,Q/??GH((?&93ay"**,,,r%   c                    VP                  R4      pWP                  R4      ,
          p\        P                  ! W#4       R# )r   NrE   )r   r   r   r<   r   r    r+   xps   &&  r   test_diff_neg_n!TestDataFrameDiff.test_diff_neg_n   s3      $22266
b%r%   c                v    VP                  R 4      pVP                  ^4      p\        P                  ! W#4       R# )rw   N)r   r   r<   r   s   &&  r   test_diff_float_n#TestDataFrameDiff.test_diff_float_n   s0      %  #
b%r%   c                p   \        R R.RR..4      p\        P                  ! VP                  ^R7      \        \        P
                  R .\        P
                  R ..4      4       \        P                  ! VP                  ^ R7      \        \        P
                  \        P
                  .RR..4      4       R# )rw   rx   g      @g      @r8   N)r   r   r<   r   r   r;   r   s   & r   test_diff_axis TestDataFrameDiff.test_diff_axis   s    c
S#J/0
GGGOY}'EF	
 	GGGOY(83*'EF	
r%   c                    \        R ^R7      P                  R4      p\        RV/4      pVP                  ^^R7      pV\        P
                  ,
          P                  \        4      p\        P                  ! W44       R# )r`   )ra   rh   r   r8   N)
r   	to_periodr   r   rI   rB   r0   r   r   r<   )r   pir   r=   r"   s   &    r   test_diff_period"TestDataFrameDiff.test_diff_period   s_    a0::3?Ry!#K''/
f/r%   c                   \        R \        ^4      R^\        P                  ! ^\        P                  R7      ,          /4      p\        R \        P
                  \        P
                  \        P
                  .RVR,          ^,          /4      pVP                  ^R7      p\        P                  ! W24       \        R\        P                  ! ^RR7      R\        P                  ! ^RR7      /4      pVP                  ^R7      p\        RVR,          \        P
                  ,          RVR,          ^ ,          /4      p\        P                  ! W24       R# )	r   Brp   r8   r(   r/   r)   r   N	r   ranger   rF   r   r;   r   r   r<   r   r   r"   r=   s   &   r   test_diff_axis1_mixed_dtypes.TestDataFrameDiff.test_diff_axis1_mixed_dtypes   s    U1XsA		!2::0N,NOPcBFFBFFBFF#;S"S'A+NOa
f/ "))AY/bii6ST
 ac2c7RVV#3S"S'A+FG
f/r%   c                   \        R \        ^4      R^\        P                  ! ^\        P                  R7      ,          /4      pV\        P
                  ,          pVP                  ^^R7      p\        P                  ! W24       R# )r   r   rp   r9   ra   Nr   r   s   &   r   *test_diff_axis1_mixed_dtypes_large_periods<TestDataFrameDiff.test_diff_axis1_mixed_dtypes_large_periods   sZ    U1XsA		!2::0N,NOP;a+
f/r%   c                P   \        R \        ^4      R^\        P                  ! ^\        P                  R7      ,          /4      p\        R RVR ,          ,          RVR,          \        P
                  ,          /4      pVP                  ^RR7      p\        P                  ! W24       R# )r   r   rp   r   N      rE   r   r   s   &   r   -test_diff_axis1_mixed_dtypes_negative_periods?TestDataFrameDiff.test_diff_axis1_mixed_dtypes_negative_periods   su    U1XsA		!2::0N,NOPc4"S'>33"&&8HIJa,
f/r%   c                    \        ^ ^.^^ ..RR7      pVP                  4       p\        \        P                  \        P                  .RR..\        P
                  ! RR4      R7      p\        P                  ! W#4       R# )r   zSparse[int]rp   rw   floatg        Nr   )r   r   r   r;   rI   SparseDtyper   r<   )r   	sparse_dfr=   r"   s   &   r   test_diff_sparse"TestDataFrameDiff.test_diff_sparse   sg    1v1v.mD	!ffbffT{+2>>'33O
 	f/r%   zaxis,expectedr(   r)   cdInt64rp   c                   \        R \        P                  ! ^ ^\        P                  ^.^4      R\        P
                  ! ^ ^\        P                  ^.^4      R\        P                  ! \        P                  ^4      R\        P                  ! ^^	4      ^,          /RR7      pVP                  VR7      p\        P                  ! WB4       R# )r(   r)   r   r   r   rp   r8   N)
r   r   repeatrI   NAtilerF   r   r   r<   )r   r9   r"   r   r=   s   &&&  r   test_diff_integer_na&TestDataFrameDiff.test_diff_integer_na   s    > RYY1beeQ/3RWWaBEE1-q1RYYruua(RYYq!_)	 
 d#
f/r%   c                @   \         P                  P                  ^4      P                  R4      pRVP                  n        \        V4      pVP                  4       p\        \         P                  ! V4      4      P                  4       p\        P                  ! W44       R# )r
   FN)r   r
   )r   r   r   r   flags	writeabler   r   r   r   r<   rN   s   &    r   test_diff_readonly$TestDataFrameDiff.test_diff_readonly"  sj    ii##A&66v>#		s^RXXb\*//1
f/r%   c                    \        \        ^4      4      pVP                  V4      pVP                  4       pVR9   d   RMRp\        \        P
                  RRRR.VR7      p\        P                  ! W54       R# )r   r/   r   rw   rp   N)int8int16)r   r   r0   r   r   r;   r   r<   )r   any_int_numpy_dtyper   r=   expected_dtyper"   s   &&    r   test_diff_all_int_dtype)TestDataFrameDiff.test_diff_all_int_dtype+  sg    uQx YY*+,0AAIy 	 bffc3S9P
f/r%    )&__name__
__module____qualname____firstlineno__r   r   markparametrizer   int64r#   r,   r2   r>   rP   r]   rd   rm   rr   r}   r   r   r   r   r   r   r   r   r   r   rI   r   r   r   r   r   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sy     [[UQ$458 68J0*( [[TD%=10 20 [[TD%=10 20& [[TD%=10 20$ [[TD%=10 20$("-&
&

00"00	0 [[ beeQ1beeRUUBEE1EbeeQruub!RUUBEEJRYYruua0beeQ1aR<	 " RYYruua0aBEE1beeRUUBEE1ERYYruua0RYYruua0	 "	
:0;:0 0	0 	0r%   r   )numpyr   r   pandasrI   r   r   r   r   pandas._testing_testingr   r   r   r%   r   <module>r      s)        f0 f0r%   