Ë
    ¤ehs'  ã                   óT   — d dl Zd dlZd dlZd dlmZmZmZmZ d dl	m
Z  G d„ d«      Zy)é    N)Ú	DataFrameÚSeriesÚ	TimestampÚ
date_rangec                   ó®  — e Zd Zd„ Zej
                  j                  dd ej                  d«      g«      d„ «       Z	d„ Z
d„ Zd„ Zd„ Zej
                  j                  d	d
dg«      d„ «       Zej
                  j                  d	d
dg«      d„ «       Zej
                  j                  d	d
dg«      d„ «       Zej
                  j                  d	d
dg«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej
                  j                  dd eej:                  dddej:                  ej:                  ej:                  dgej:                  dej:                  ej:                  ddej:                  ej:                  g ej<                  ej:                  d«      ej:                  ddd d!d"d#d$gd%œd&¬'«      fd e ej<                  ej:                  d«      ddej:                  dej:                  ej:                  ej:                  dg ej<                  ej:                  d«       ej<                  ej:                  d«      d%œd&¬'«      fg«      d(„ «       Zd)„ Z d*„ Z!y
)+ÚTestDataFrameDiffc                 óô   — t        t        j                  j                  d«      j	                  d«      «      }t        j                  t        d¬«      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)Né   )r
   r
   zperiods must be an integer)Úmatchg      ø?)	r   ÚnpÚrandomÚdefault_rngÚstandard_normalÚpytestÚraisesÚ
ValueErrorÚdiff©ÚselfÚdfs     úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_diff.pyÚtest_diff_requires_integerz,TestDataFrameDiff.test_diff_requires_integer   sU   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆÜ�]‰]œ:Ð-IÔJñ 	Ø�G‰G�CŒL÷	÷ 	ñ 	ús   ÁA.Á.A7Únumé   c                 ó�   — |}|j                  |«      }|d   |d   j                  |«      z
  }t        j                  |d   |«       y )NÚA)r   ÚshiftÚtmÚassert_series_equal)r   Údatetime_framer   r   Úthe_diffÚexpecteds         r   Ú	test_diffzTestDataFrameDiff.test_diff   sC   € àˆØ—7‘7˜3“<ˆà�c‘7˜R ™WŸ]™]¨3Ó/Ñ/ˆÜ
×Ñ˜x¨™}¨hÕ7ó    c                 óŠ   — d}|dz   }t        ||g«      }t        d|i«      j                  «       }|j                  d   dk(  sJ ‚y )Nl     ‚_Ér   Ús)r   r   r   r&   )r   ÚaÚbÚserÚrss        r   Útest_diff_int_dtypez%TestDataFrameDiff.test_diff_int_dtype   sH   € à"ˆØ�‰EˆÜ�a˜�V‹nˆä˜˜S�zÓ"×'Ñ'Ó)ˆØ�t‰t�A‰w˜!Š|Ð‰|r$   c                 óª   — |j                  d«      }|j                  d«      }t        j                  |d   |d   |d   j	                  d«      z
  «       y )NÚfloat32r   r   )Úastyper   r   r   r   )r   r    Útfr!   s       r   Útest_diff_mixed_numericz)TestDataFrameDiff.test_diff_mixed_numeric&   sI   € à×"Ñ" 9Ó-ˆØ—7‘7˜1“:ˆÜ
×Ñ˜x¨™}¨b°©g¸¸3¹¿¹ÀaÓ8HÑ.HÕIr$   c                 ó  — t        t        dg«      t        dg«      dœ«      }|j                  ddd«       |j                  d¬«      }t        t        j
                  t        d«      t        d«      dœ«      }t        j                  ||«       y )	Nr
   é   )ÚyÚzr   Úxr   ©Úaxis)r5   r3   r4   )r   r   Úinsertr   r   Únanr   Úassert_frame_equal)r   r   Úresultr"   s       r   Útest_diff_axis1_nonconsolidatedz1TestDataFrameDiff.test_diff_axis1_nonconsolidated,   si   € äœV Q C›[¬v°q°c«{Ñ;Ó<ˆØ
�	‰	�!�S˜!ÔØ—‘˜a�“ˆÜ¤2§6¡6´°q³	ÄÀqÃ	ÑJÓKˆÜ
×Ñ˜f hÕ/r$   c                 ó´  — t        j                  d«      j                  dd«      j                  d«      }t        j                  dd«      |d d …df<   t        |«      }|j                  dd¬	«      }t        |d   t        j                  t        j                  d«      t        j                  d«      gd
œ«      }t        j                  ||«       |j                  d«      }||z
  }|d   j                  «       j                  «       sJ ‚t        j                  ||«       |j                  dd¬	«      }|t         j                  z  }t        j                  ||«       y )Né   r2   r
   ztimedelta64[ns]ÚNaTÚnsr   r   r6   ©r   r   éÿÿÿÿ)r   ÚarangeÚreshaper.   Útimedelta64r   r   Úpdr?   Ú	Timedeltar   Úassert_equalÚisnaÚallr9   ©r   Úarrr   r;   r"   s        r   Útest_diff_timedelta64_with_natz0TestDataFrameDiff.test_diff_timedelta64_with_nat4   s  € ä�i‰i˜‹l×"Ñ" 1 aÓ(×/Ñ/Ð0AÓBˆÜ—N‘N 5¨$Ó/ˆŠAˆqˆD‰	ä�s‹^ˆØ—‘˜ �Ó#ˆä  A¡¬B¯F©F´B·L±LÀ³OÄRÇ\Á\ÐRSÃ_Ð+UÑVÓWˆÜ
�‰˜ Ô)à—‘˜“ˆØ˜‘7ˆØ˜‰{×ÑÓ!×%Ñ%Ô'Ð'Ð'Ü
�‰˜ Ô)à—‘˜ !�Ó$ˆØœŸ™‘;ˆÜ
�‰˜ Õ)r$   ÚtzNÚUTCc                 ó¶  — t        j                  g d¢|¬«      j                  |«      }t        |«      }|j	                  «       }|j                  «       }t        j                  t         j                  t         j                  t        j                  d¬«      g«      j                  |«      }t        |«      j	                  «       }t        j                  ||«       y )N)r?   z
2019-01-01z
2019-01-02)rN   r   )Údays)rF   ÚDatetimeIndexÚas_unitr   Úto_framer   ÚTimedeltaIndexr?   rG   r   r:   )	r   rN   ÚunitÚdtir)   r   r;   Úex_indexr"   s	            r   Ú!test_diff_datetime_axis0_with_natz3TestDataFrameDiff.test_diff_datetime_axis0_with_natH   s�   € ô ×ÑÒBÀrÔJ×RÑRÐSWÓXˆÜ�S‹kˆà�\‰\‹^ˆà—‘“ˆÜ×$Ñ$¤b§f¡f¬b¯f©f´b·l±lÈÔ6JÐ%KÓL×TÑTØó
ˆô ˜(Ó#×,Ñ,Ó.ˆÜ
×Ñ˜f hÕ/r$   c                 óÎ  — t        dd|¬«      }t        |«      }|j                  «       j                  «       }|j                  «       |d<   t        j
                  |j                  d d …df<   ||z
  }|d   j                  «       j                  «       sJ ‚|j                  dd¬«      }t        j                  ||«       |j                  dd¬«      }t        j                  ||«       y )Nú
2016-01-01é   )ÚperiodsrN   r   r   r6   )r   r   rT   ÚcopyrF   r?   ÚilocrI   rJ   r   r   r:   )r   rN   rW   r)   r   r"   r;   s          r   Ú(test_diff_datetime_with_nat_zero_periodsz:TestDataFrameDiff.test_diff_datetime_with_nat_zero_periodsW   s¿   € ô ˜¨q°RÔ8ˆÜ�S‹kˆØ�\‰\‹^× Ñ Ó"ˆà—‘“
ˆˆ1‰äŸ™ˆ�‰’�1�‰à˜‘7ˆØ˜‰{×ÑÓ!×%Ñ%Ô'Ð'Ð'à—‘˜ �Ó#ˆÜ
×Ñ˜f hÔ/à—‘˜ �Ó#ˆÜ
×Ñ˜f hÕ/r$   c           	      ó  — t        t        ddd|¬«      t        ddd|¬«      dœ«      }|j                  d¬«      }t        t        j                  dd	g«      t        j                  dd	g«      dœ«      }t        j                  ||«       y )
NÚ2010ÚDr
   ©Úfreqr]   rN   rA   r   r6   r?   z1 days©r   r   r   rF   rU   r   r:   ©r   rN   r   r;   r"   s        r   Útest_diff_datetime_axis0z*TestDataFrameDiff.test_diff_datetime_axis0k   s‡   € ô ä˜f¨3¸¸bÔAÜ˜f¨3¸¸bÔAñó
ˆð —‘˜a�“ˆÜä×$Ñ$ e¨XÐ%6Ó7Ü×$Ñ$ e¨XÐ%6Ó7ñó
ˆô 	×Ñ˜f hÕ/r$   c           	      ó  — t        t        ddd|¬«      t        ddd|¬«      dœ«      }|j                  d¬«      }t        t        j                  ddg«      t        j                  d	d	g«      dœ«      }t        j                  ||«       y )
Nrb   rc   r
   rd   rA   r   r6   r?   z0 daysrf   rg   s        r   Útest_diff_datetime_axis1z*TestDataFrameDiff.test_diff_datetime_axis1~   s†   € ô ä˜f¨3¸¸bÔAÜ˜f¨3¸¸bÔAñó
ˆð —‘˜a�“ˆÜä×$Ñ$ e¨U ^Ó4Ü×$Ñ$ h°Ð%9Ó:ñó
ˆô 	×Ñ˜f hÕ/r$   c                 ó¤  — t        t        d«      t        d«      gddgdœ«      }|d   j                  j                  |«      |d<   |j	                  «       }t        t
        j                  t        j                  gt        j                  d«      dggdd	g¬
«      }|d   j                  j                  |«      |d<   t        j                  ||«       y )Nz20130101 9:01z20130101 9:02ç      ð?ç       @)ÚtimeÚvaluern   z00:01:00r   ro   )Úcolumns)r   r   ÚdtrS   r   rF   r?   r   r9   rG   r   r:   )r   rV   r   ÚresÚexps        r   Útest_diff_timedeltaz%TestDataFrameDiff.test_diff_timedelta‘   s¶   € ää" ?Ó3´Y¸Ó5OÐPØ˜s˜ñó
ˆð ˜‘Z—]‘]×*Ñ*¨4Ó0ˆˆ6‰
à�g‰g‹iˆÜÜ�f‰f”b—f‘fÐ¤§¡¨ZÓ 8¸!Ð<Ð=ÈÐPWÐGXô
ˆð ˜&‘k—n‘n×,Ñ,¨TÓ2ˆˆF‰Ü
×Ñ˜c 3Õ'r$   c                 ó  — t        t        j                  j                  d«      j	                  d«      «      }t        j
                  g d¢t        ¬«      |d<   |j                  «       }|d   j                  t        j                  k(  sJ ‚y )Nr
   )é   r2   )r   r
   r2   r\   rv   ©Údtyper   r   )
r   r   r   r   r   ÚarrayÚobjectr   rx   Úfloat64)r   r   r;   s      r   Útest_diff_mixed_dtypez'TestDataFrameDiff.test_diff_mixed_dtype¢   s_   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆÜ—(‘(š?´&Ô9ˆˆ3‰à—‘“ˆØ�a‰y�‰¤"§*¡*Ò,Ð,Ñ,r$   c                 óz   — |j                  d«      }||j                  d«      z
  }t        j                  ||«       y )NrB   )r   r   r   r:   ©r   r    r*   Úxps       r   Útest_diff_neg_nz!TestDataFrameDiff.test_diff_neg_n©   s7   € Ø× Ñ  Ó$ˆØ˜n×2Ñ2°2Ó6Ñ6ˆÜ
×Ñ˜b "Õ%r$   c                 ót   — |j                  d«      }|j                  d«      }t        j                  ||«       y )Nrl   r   )r   r   r:   r~   s       r   Útest_diff_float_nz#TestDataFrameDiff.test_diff_float_n®   s2   € Ø× Ñ  Ó%ˆØ× Ñ  Ó#ˆÜ
×Ñ˜b "Õ%r$   c                 ój  — t        ddgddgg«      }t        j                  |j                  d¬«      t        t        j
                  dgt        j
                  dgg«      «       t        j                  |j                  d¬«      t        t        j
                  t        j
                  gddgg«      «       y )Nrl   rm   g      @g      @r   r6   r   )r   r   r:   r   r   r9   r   s     r   Útest_diff_axisz TestDataFrameDiff.test_diff_axis³   sŠ   € ä˜˜c˜
 S¨# JÐ/Ó0ˆÜ
×ÑØ�G‰G˜ˆG‹OœY¬¯©°¨¼¿¹À°}Ð'EÓFô	
ô 	×ÑØ�G‰G˜ˆG‹OœY¬¯©´·±Ð(8¸3À¸*Ð'EÓFõ	
r$   c                 óô   — t        dd¬«      j                  d«      }t        d|i«      }|j                  dd¬«      }|t        j
                  z
  j                  t        «      }t        j                  ||«       y )Nr[   r2   )r]   rc   r   r   r6   )
r   Ú	to_periodr   r   rF   r?   r.   rz   r   r:   )r   Úpir   r;   r"   s        r   Útest_diff_periodz"TestDataFrameDiff.test_diff_period½   sa   € ä˜¨aÔ0×:Ñ:¸3Ó?ˆÜ˜˜R�yÓ!ˆà—‘˜ �Ó#ˆàœŸ™‘K×'Ñ'¬Ó/ˆÜ
×Ñ˜f hÕ/r$   c                 ó`  — t        t        d«      dt        j                  dt        j                  ¬«      z  dœ«      }t        t        j
                  t        j
                  t        j
                  g|d   dz  dœ«      }|j                  d¬«      }t        j                  ||«       t        t        j                  dd¬«      t        j                  dd	¬«      d
œ«      }|j                  d¬«      }t        |d   t        j
                  z  |d   dz  d
œ«      }t        j                  ||«       y )Nr2   r
   rw   ©r   ÚBr‹   r   r6   r-   r{   )r'   r(   r'   r(   r   ©	r   Úranger   rC   r{   r9   r   r   r:   ©r   r   r"   r;   s       r   Útest_diff_axis1_mixed_dtypesz.TestDataFrameDiff.test_diff_axis1_mixed_dtypesÇ   sá   € äœU 1›X¨A´·	±	¸!Ä2Ç:Á:Ô0NÑ,NÑOÓPˆä¤B§F¡F¬B¯F©F´B·F±FÐ#;À"ÀSÁ'ÈAÁ+ÑNÓOˆà—‘˜a�“ˆÜ
×Ñ˜f hÔ/ô Ü—)‘)˜A YÔ/´b·i±iÀÈÔ6SÑTó
ˆð —‘˜a�“ˆÜ 2 c¡7¬R¯V©VÑ#3¸"¸S¹'ÀA¹+ÑFÓGˆÜ
×Ñ˜f hÕ/r$   c                 óö   — t        t        d«      dt        j                  dt        j                  ¬«      z  dœ«      }|t        j
                  z  }|j                  dd¬«      }t        j                  ||«       y )Nr2   r
   rw   rŠ   r   ©r7   r]   rŒ   rŽ   s       r   Ú*test_diff_axis1_mixed_dtypes_large_periodsz<TestDataFrameDiff.test_diff_axis1_mixed_dtypes_large_periodsØ   sX   € äœU 1›X¨A´·	±	¸!Ä2Ç:Á:Ô0NÑ,NÑOÓPˆàœŸ™‘;ˆà—‘˜a¨�Ó+ˆÜ
×Ñ˜f hÕ/r$   c                 ó   — t        t        d«      dt        j                  dt        j                  ¬«      z  dœ«      }t        d|d   z  |d   t        j
                  z  dœ«      }|j                  dd	¬
«      }t        j                  ||«       y )Nr2   r
   rw   rŠ   ç      ð¿r   r‹   r   rB   r‘   rŒ   rŽ   s       r   Ú-test_diff_axis1_mixed_dtypes_negative_periodsz?TestDataFrameDiff.test_diff_axis1_mixed_dtypes_negative_periodsá   so   € äœU 1›X¨A´·	±	¸!Ä2Ç:Á:Ô0NÑ,NÑOÓPˆä 4¨"¨S©'¡>¸¸3¹Ä"Ç&Á&Ñ8HÑIÓJˆà—‘˜a¨�Ó,ˆÜ
×Ñ˜f hÕ/r$   c                 óü   — t        ddgddggd¬«      }|j                  «       }t        t        j                  t        j                  gddggt	        j
                  dd«      ¬«      }t        j                  ||«       y )	Nr   r   zSparse[int]rw   rl   r”   Úfloatg        )r   r   r   r9   rF   ÚSparseDtyper   r:   )r   Ú	sparse_dfr;   r"   s       r   Útest_diff_sparsez"TestDataFrameDiff.test_diff_sparseê   si   € ä  1˜v¨¨1 vÐ.°mÔDˆ	à—‘Ó!ˆÜÜ�f‰f”b—f‘fÐ  T˜{Ð+´2·>±>À'È3Ó3Oô
ˆô 	×Ñ˜f hÕ/r$   zaxis,expectedr   éþÿÿÿé   r2   rv   é   é	   é   é   é   ©r'   r(   ÚcÚdÚInt64rw   c           	      ó‚  — t        t        j                  ddt        j                  dgd«      t        j                  ddt        j                  dgd«      t        j                  t        j                  d«      t        j
                  dd«      dz  dœd¬«      }|j                  |¬	«      }t        j                  ||«       y )
Nr   r   r
   rœ   rž   r¢   r¥   rw   r6   )	r   r   Úrepeatr9   ÚtilerC   r   r   r:   )r   r7   r"   r   r;   s        r   Útest_diff_integer_naz&TestDataFrameDiff.test_diff_integer_naõ   s”   € ô> ä—Y‘Y  1¤b§f¡f¨aÐ0°!Ó4Ü—W‘W˜a ¤B§F¡F¨AÐ.°Ó2Ü—Y‘YœrŸv™v qÓ)Ü—Y‘Y˜q !“_¨Ñ)ñ	ð ô
ˆð —‘˜d�Ó#ˆÜ
×Ñ˜f hÕ/r$   c                 ó<  — t         j                  j                  d«      j                  d«      }d|j                  _        t        |«      }|j                  «       }t        t        j                  |«      «      j                  «       }t        j                  ||«       y )Nr
   )rv   r
   F)r   r   r   r   ÚflagsÚ	writeabler   r   ry   r   r:   rK   s        r   Útest_diff_readonlyz$TestDataFrameDiff.test_diff_readonly"  sl   € ä�i‰i×#Ñ# AÓ&×6Ñ6°vÓ>ˆØ#ˆ�	‰	ÔÜ�s‹^ˆØ—‘“ˆÜœRŸX™X b›\Ó*×/Ñ/Ó1ˆÜ
×Ñ˜f hÕ/r$   c                 óê   — t        t        d«      «      }|j                  |«      }|j                  «       }|dv rdnd}t        t        j
                  ddddg|¬«      }t        j                  ||«       y )Nrv   )Úint8Úint16r-   r{   rl   rw   )r   r�   r.   r   r   r9   r   r:   )r   Úany_int_numpy_dtyper   r;   Úexpected_dtyper"   s         r   Útest_diff_all_int_dtypez)TestDataFrameDiff.test_diff_all_int_dtype+  si   € ä”u˜Q“xÓ ˆØ�Y‰YÐ*Ó+ˆØ—‘“ˆà,Ð0AÑA‰IÀyð 	ô œbŸf™f c¨3°°SÐ9ÀÔPˆÜ
×Ñ˜f hÕ/r$   )"Ú__name__Ú
__module__Ú__qualname__r   r   ÚmarkÚparametrizer   Úint64r#   r+   r0   r<   rM   rY   r`   rh   rj   rt   r|   r€   r‚   r„   rˆ   r�   r’   r•   rš   r   r9   r§   r©   r­   r³   © r$   r   r   r      sk  „ òð ‡[�[×Ñ˜U Q¨¨¯©°«Ð$4Ó5ñ8ó 6ð8òòJò0ò*ð( ‡[�[×Ñ˜T D¨% =Ó1ñ0ó 2ð0ð ‡[�[×Ñ˜T D¨% =Ó1ñ0ó 2ð0ð& ‡[�[×Ñ˜T D¨% =Ó1ñ0ó 2ð0ð$ ‡[�[×Ñ˜T D¨% =Ó1ñ0ó 2ð0ò$(ò"-ò&ò
&ò

ò0ò0ò"0ò0ò	0ð ‡[�[×ÑØð Ùà Ÿf™f a¨¨A¨r¯v©v°r·v±v¸r¿v¹vÀqÐIØ Ÿf™f a¨¯©°·±¸¸QÀÇÁÈÏÉÐOØ&˜RŸY™Y r§v¡v¨qÓ1Ø Ÿf™f a¨¨A¨q°"°b¸"Ð=ñ	ð "ôðð Ùà&˜RŸY™Y r§v¡v¨qÓ1Ø  B§F¡F¨A¨r¯v©v°r·v±v¸r¿v¹vÀqÐIØ&˜RŸY™Y r§v¡v¨qÓ1Ø&˜RŸY™Y r§v¡v¨qÓ1ñ	ð "ôðð	
óñ:0ó;ð:0ò 0ó	0r$   r   )Únumpyr   r   ÚpandasrF   r   r   r   r   Úpandas._testingÚ_testingr   r   rº   r$   r   ú<module>r¿      s)   ðÛ Û ã ÷ó õ ÷f0ò f0r$   