Ë
    u™ãj?  ã                  ó”  — d dl mZ d dlmZmZmZ d dlmZ d dlZd dlZ	d dl
Z
d dlmZ d dlZd dlmZ  e
j$                  d«      Zd dlmZ d„ Zd	„ Ze
j0                  j3                  d
g d¢«      d„ «       Zd„ Ze
j0                  j3                  dddg«      d„ «       Ze
j0                  j3                  dddg«      d„ «       Zd„ Zd„ Zd„ Z e
j0                  j3                  ddddgdd gfddgddgdd gfddgddgd dgfg«      d„ «       Z!d„ Z"d„ Z#d„ Z$d „ Z%e
j0                  j3                  d!ejL                  ejN                  z   «      d"„ «       Z(e
j0                  j3                  d!ejR                  «      d#„ «       Z*e
j0                  j3                  d!ejV                  «      d$„ «       Z,d%„ Z-d&„ Z.d'„ Z/e
j0                  j3                  d( eeja                  d)«      «      d*„  eeja                  d+«      «      f eejc                  d)«      «      d,„  eeje                  d+«      «      f eejg                  d-d«      «      d.„  eejg                  d-d«      «      fg«      d/„ «       Z4d0„ Z5e
j0                  j3                  d!ejR                  «      d1„ «       Z6d2„ Z7d3„ Z8d4„ Z9d5„ Z:d6„ Z;d7„ Z<e
j0                  j3                  d8d9d:g«      d;„ «       Z=d<„ Z>d=„ Z?y)>é    )Úannotations)ÚdatetimeÚtimeÚ	timedelta©ÚDecimalN)Ú
ArrowDtypeÚpyarrow)ÚArrowExtensionArrayc                 ó^  — t        j                  dd gt        t        j	                  «       «      ¬«      } | j                  t        j                  t        j                  dd¬«      «      «      }|j                  t        t        j	                  «       «      k(  sJ ‚|d   dk(  sJ ‚|d   dk(  sJ ‚y )	NÚa©Údtypeú
2016-01-01é   ©Úperiodsr   é   z2016-01-02 00:00:00.000000)ÚpdÚSeriesr	   ÚpaÚstringÚfillnaÚ
date_ranger   ©ÚserÚresults     úr/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/tests/arrays/arrow/test_function.pyÚ.test_fillna_temporal_into_string_self_acceptedr      s‡   € ô �)‰)�S˜$�K¤z´"·)±)³+Ó'>Ô
?€CØ�Z‰ZœŸ	™	¤"§-¡-°ÀaÔ"HÓIÓJ€FØ�<‰<œ:¤b§i¡i£kÓ2Ò2Ð2Ð2Ø�!‰9˜ÒÐÐØ�!‰9Ð4Ò4Ð4Ñ4ó    c                 ó  — t        j                  dd gt        t        j	                  «       «      ¬«      } t        j                  t        d¬«      5  | j                  t        j                  d«      «       d d d «       y # 1 sw Y   y xY w)Nr   r   úInvalid value©Úmatchr   )
r   r   r	   r   r   ÚpytestÚraisesÚ	TypeErrorr   Ú	Timestamp)r   s    r   Ú3test_fillna_temporal_scalar_into_string_self_raisesr)   $   s[   € ô �)‰)�S˜$�K¤z´"·)±)³+Ó'>Ô
?€CÜ	�‰”y¨Ô	8ñ /Ø�
‰
”2—<‘< Ó-Ô.÷/÷ /ñ /ús   Á%A>Á>BÚother_dtype)Úfloat64ÚFloat64údouble[pyarrow]c                ó   — t        j                  t        j                  dd¬«      d¬«      }|j                  t	        j
                  g d¢«      t        j                  d gdz  | ¬«      «      }|j                  dk(  sJ ‚|j                  «       j                  «       g d¢k(  sJ ‚t        j                  t        j                  d«      d gd¬«      }|j                  t        j                  d gdz  | ¬«      «      }t        j                  ||«       y )	Nr   é   r   útimestamp[ns][pyarrow]r   ©TFT)FTFr   )r   r   r   ÚwhereÚnpÚarrayr   ÚisnaÚtolistr(   r   ÚtmÚassert_series_equal)r*   r   r   s      r   Ú1test_where_fillna_all_na_float_other_not_rejectedr9   ,   sÔ   € ô �)‰)Ü
�‰�l¨AÔ.Ð6Nô€Cð
 �Y‰YÜ
�‰Ò$Ó%¤r§y¡y°$°¸!±À;Ô'Oó€Fð �<‰<Ð3Ò3Ð3Ð3Ø�;‰;‹=×ÑÓ!Ò%9Ò9Ð9Ð9ä
�)‰)”R—\‘\ ,Ó/°Ð6Ð>VÔ
W€CØ�Z‰ZœŸ	™	 4 &¨1¡*°KÔ@ÓA€FÜ×Ñ˜6 3Õ'r    c            	     óÔ  — t        j                  dd gd¬«      } t        j                  t        d¬«      5  | j                  t        j                  t        j                  dd¬«      «      «       d d d «       t        j                  t        j                  d«      d gd	¬«      } t        j                  t        d¬«      5  | j                  d«       d d d «       | j                  t        j                  d
«      «      }t        j                  t        j                  d«      t        j                  d
«      gd	¬«      }t        j                  ||«       y # 1 sw Y   ŒäxY w# 1 sw Y   Œ�xY w)Nr   úint64[pyarrow]r   r"   r#   r   r   r   r0   z
2017-01-01)
r   r   r%   r&   r'   r   r   r(   r7   r8   ©r   r   Úexpecteds      r   Ú,test_fillna_temporal_reinterpretation_raisesr>   @   s  € ô �)‰)�Q˜�IÐ%5Ô
6€CÜ	�‰”y¨Ô	8ñ FØ�
‰
”2—9‘9œRŸ]™]¨<ÀÔCÓDÔE÷Fô �)‰)”R—\‘\ ,Ó/°Ð6Ð>VÔ
W€CÜ	�‰”y¨Ô	8ñ Ø�
‰
�1Œ÷ð �Z‰ZœŸ™ \Ó2Ó3€FÜ�y‰yÜ	�‰�lÓ	#¤R§\¡\°,Ó%?Ð@Ø&ô€Hô ×Ñ˜6 8Õ,÷Fð Fú÷ð ús   µ:EÂ>EÅEÅE'Úmethr2   Úmaskc                ó:  — t        j                  g d¢d¬«      }t        j                  t        j                  dd¬«      «      }t        j                  t
        d¬«      5   t        || «      t        j                  g d	¢«      |«       d d d «       y # 1 sw Y   y xY w)
N©r   r   r/   r;   r   r   r/   r   r"   r#   r1   )	r   r   r   r%   r&   r'   Úgetattrr3   r4   )r?   r   Úothers      r   Ú0test_where_mask_temporal_reinterpretation_raisesrE   S   sr   € ô �)‰)’IÐ%5Ô
6€CÜ�I‰I”b—m‘m L¸!Ô<Ó=€EÜ	�‰”y¨Ô	8ñ AØŒ��TÓœ2Ÿ8™8Ò$7Ó8¸%Ô@÷A÷ Añ Aús   Á)BÂBÚlimitr   c                ó,  — t        j                  dd gt        j                  dt        j                  ¬«      ¬«      }t        j                  t        d¬«      5  |j                  t        j                  ddg«      | ¬	«       d d d «       y # 1 sw Y   y xY w)
Nr   r
   )Úna_valuer   zInvalid value for dtyper#   r   r   )rF   )	r   r4   ÚStringDtyper3   Únanr%   r&   r'   r   )rF   Úarrs     r   Ú.test_fillna_string_self_agrees_with_limit_pathrL   \   sh   € ô �(‰(�C˜�;¤b§n¡n°YÌÏÉÔ&PÔ
Q€CÜ	�‰”yÐ(AÔ	Bñ 2Ø�
‰
”2—8‘8˜Q ˜FÓ#¨5ˆ
Ô1÷2÷ 2ñ 2ús   Á)B
Â
Bc                 óè  — d} t        j                  dddt         j                  g| ¬«      }|j                  d«      }t        j                  dddt         j                  g| ¬«      }t	        j
                  ||«       t        j                  d	t         j                  d
g| ¬«      }|j                  d«      }t        j                  dt         j                  dg| ¬«      }t	        j
                  ||«       y )Núfloat64[pyarrow]g        g®Gáz®ó?g{®Gáz@r   r   g333333ó?gÍÌÌÌÌÌ@gš™™™™Ù^@g¤p=
×cL@éÿÿÿÿg      ^@g      N@)r   r   ÚNAÚroundr7   r8   ©r   r   r   r=   s       r   Ú
test_roundrS   e   s±   € Ø€Eä
�)‰)�S˜$ ¤b§e¡eÐ,°EÔ
:€CØ�Y‰Y�q‹\€FÜ�y‰y˜#˜s C¬¯©Ð/°uÔ=€HÜ×Ñ˜6 8Ô,ä
�)‰)�UœBŸE™E 5Ð)°Ô
7€CØ�Y‰Y�r‹]€FÜ�y‰y˜%¤§¡¨Ð-°UÔ;€HÜ×Ñ˜6 8Õ,r    c                ó  — | \  }}}| j                  g d¢«      }t        j                  |d<   |rt        j                  |«      }d}t	        j
                  t        |¬«      5  |j                  |«       d d d «       y # 1 sw Y   y xY w)N)r   r   r   rO   zOsearchsorted requires array to be sorted, which is impossible with NAs present.r#   )Útaker   rP   r   r%   r&   Ú
ValueErrorÚsearchsorted)Údata_for_sortingÚ	as_seriesÚbÚcr   rK   Úmsgs          r   Ú test_searchsorted_with_na_raisesr]   s   sw   € à�G€A€qˆ!Ø
×
Ñ
¢	Ó
*€CÜ�e‰e€Cˆ�GáÜ�i‰i˜‹nˆð	0ð ô 
�‰”z¨Ô	-ñ Ø×Ñ˜Ô÷÷ ñ ús   Á!A<Á<Bc                 ó\  — t        j                  t        j                  ddgt        t        j                  t        j                  «       t        j                  «       «      «      ¬«      ddgdœ«      } | j                  «       }| j                  ddg¬	«      }t        j                  ||«       y )
NÚxÚyr   r   r   ©r   rZ   r   rZ   ©Úby)r   Ú	DataFramer   r	   r   Ú
dictionaryÚint32r   ÚcopyÚsort_valuesr7   Úassert_frame_equal)Údfr=   r   s      r   Útest_sort_values_dictionaryrk   „   s€   € Ü	�‰ä—‘Ø�c�
¤*¬R¯]©]¼2¿8¹8»:ÄrÇyÁyÃ{Ó-SÓ"Tôð �Q�ñ		
ó
€Bð �w‰w‹y€HØ�^‰^  S˜zˆ^Ó*€FÜ×Ñ˜& (Õ+r    z%ascending, expected_b, expected_indexTr   Fc                ó  — t        j                  t        j                  d d gd¬«      ddgdœ«      }|j                  ddg| ¬«      }t        j                  t        j                  d d gd¬«      |dœ|¬	«      }t	        j
                  ||«       y )
Núnull[pyarrow]r   r   r   ra   r   rZ   )Ú	ascending)Úindex©r   rd   r   rh   r7   ri   )rn   Ú
expected_bÚexpected_indexrj   r   r=   s         r   Útest_sort_values_nullrs   ’   s‡   € ô 
�‰ä—‘˜D $˜<¨Ô?Ø�Q�ñ	
ó
€Bð �^‰^˜S #˜J°)ˆ^Ó<€FÜ�|‰|ä—‘˜D $˜<¨Ô?Øñ	
ð ô€Hô ×Ñ˜& (Õ+r    c                 ó¬   — t        j                  dt        j                  g d¬«      i«      } | j                  d¬«      }t	        j
                  || «       y )Nr   rm   r   rb   rp   )rj   r   s     r   Útest_sort_values_null_emptyru   ­   s@   € ä	�‰�sœBŸI™I b°Ô@ÐAÓ	B€BØ�^‰^˜sˆ^Ó#€FÜ×Ñ˜& "Õ%r    c                 ó‚   — t        j                  d d gd¬«      } | j                  «       }t        j                  || «       y )Nrm   r   )r   r   rh   r7   r8   r   s     r   Útest_sort_values_null_seriesrw   ´   s2   € ä
�)‰)�T˜4�L¨Ô
8€CØ�_‰_Ó€FÜ×Ñ˜6 3Õ'r    c                 óÚ   — t        j                  ddddt         j                  dgd¬«      } | j                  d«      }t        j                  g d	¢d¬«      }t	        j
                  ||«       y )
Nr   r   r/   é   é   r;   r   r   )r   r   r/   ry   r   rz   )r   r   rP   r   r7   r8   r<   s      r   Útest_fillna_zeror{   »   sS   € ä
�)‰)�Q˜˜1˜a¤§¡¨Ð*Ð2BÔ
C€CØ�Z‰Z˜‹]€FÜ�y‰yÒ+Ð3CÔD€HÜ×Ñ˜6 8Õ,r    c                 ó  — t        j                  g d¢d¬«      } d| _        t        j                  t
        d¬«      5  | j                  «        d d d «       t        j                  | t        j                  g d¢d¬«      «       y # 1 sw Y   Œ7xY w)N)r/   r   r   r;   r   TzCannot modify read-only arrayr#   )	r   r4   Ú	_readonlyr%   r&   rV   Úsortr7   Úassert_extension_array_equal)rK   s    r   Útest_sort_readonlyr€   Ã   se   € Ü
�(‰(’9Ð$4Ô
5€CØ€C„MÜ	�‰”zÐ)HÔ	Iñ Ø�‰Œ
÷ô ×#Ñ# C¬¯©²)ÐCSÔ)TÕU÷ð ús   ¼BÂBÚpa_typec                ó  — t        j                  g d¢t        | «      ¬«      }|j                  «       }t        j                  g d¢t        t        j                  «       «      g d¢¬«      }t        j                  ||«       y )NrB   r   )r/   r   r   r   ç      ø?ç       @g      @r/   ©ÚcountÚmeanÚstdÚminú25%ú50%ú75%Úmax©r   ro   )r   r   r	   Údescriber   r+   r7   r8   ©r�   Údatar   r=   s       r   Útest_describe_numeric_datar’   Ì   sX   € ô �9‰9’Y¤j°Ó&9Ô:€DØ�]‰]‹_€FÜ�y‰yÚ&ÜœŸ™›Ó&ÚIô€Hô
 ×Ñ˜6 8Õ,r    c                óD  — t        j                  t        dd«      t        | «      ¬«      }|j	                  «       }t        j                  dgt        j
                  g d¢| j                  ¬«      j                  «       ¢t        g d¢¬«      }t        j                  ||«       y )	Nr   é
   r   é	   )é   r   r   r/   r–   é   r•   )Úunitr…   rŽ   )r   r   Úranger	   r�   Úto_timedeltar˜   r6   Úobjectr7   r8   r�   s       r   Útest_describe_timedelta_datarœ   Ù   st   € ô �9‰9”U˜1˜b“\¬°GÓ)<Ô=€DØ�]‰]‹_€FÜ�y‰yØ	
ÐPŒR�_‰_Ò2¸¿¹ÔF×MÑMÓOÐPÜÚIô€Hô
 ×Ñ˜6 8Õ,r    c                ób  — t        j                  t        dd«      t        | «      ¬«      }|j	                  «       }t        j                  dgdD �cg c].  }t        j
                  || j                  | j                  ¬«      ‘Œ0 c}z   t        g d¢¬«      }t        j                  ||«       y c c}w )	Nr   r”   r   r•   )r–   r   r/   r–   r—   r•   )Útzr˜   )r†   r‡   r‰   rŠ   r‹   rŒ   r�   rŽ   )r   r   r™   r	   r�   r(   rž   r˜   r›   r7   r8   )r�   r‘   r   Úvr=   s        r   Útest_describe_datetime_datar    æ   sŽ   € ô �9‰9”U˜1˜b“\¬°GÓ)<Ô=€DØ�]‰]‹_€FÜ�y‰yØ	
ˆð (ö
àô �L‰L˜˜wŸz™z°·±Ö=ò
ñ	
ô
 ÚBô€Hô ×Ñ˜6 8Õ,ùò
s   Á3B,
c                 ó  — t        j                  dt         j                  gd¬«      } t        j                  | «      }t        j                  t        j                  d«      t         j                  gd¬«      }t        j                  ||«       y )Ngš™™™™™¹?rN   r   )r   r   rP   r3   Úsinr7   r8   r<   s      r   Útest_ufunc_retains_missingr£   ÷   sZ   € ä
�)‰)�Sœ"Ÿ%™%�LÐ(:Ô
;€Cä�V‰V�C‹[€Fä�y‰yœ"Ÿ&™& ›+¤r§u¡uÐ-Ð5GÔH€HÜ×Ñ˜6 8Õ,r    c                 ó  — t        j                  dd«      5  t        j                  dt        d«      d gd¬«      } t	        j
                  | «      }t        j                  ddt         j                  gd¬«      }t        j                  ||«       t	        j                  | «      }t        j                  ddt         j                  gd¬«      }t        j                  ||«       t	        j                  t        j                  g d	¢d¬«      «      }t        j                  dd
t         j                  gd¬«      }t        j                  ||«       t        j                  g d¢d¬«      } t	        j                  | «      \  }}t        j                  ddt         j                  gd¬«      }t        j                  dd
t         j                  gd¬«      }t        j                  ||«       t        j                  ||«       d d d «       y # 1 sw Y   y xY w)Nzfuture.distinguish_nan_and_naTç      ð?rJ   r-   r   Fzbool[pyarrow])r¥   ç      @Nr„   )rƒ   gš™™™™™@Ng      à?gffffffæ?)r   Úoption_contextr   Úfloatr3   ÚisnanrP   r7   r8   ÚisfiniteÚsqrtÚmodf)r   r   r=   ÚfracÚintegÚexpected_fracÚexpected_integs          r   Ú(test_np_ufunc_pyarrow_distinguish_nan_nar±     s{  € ô 
×	Ñ	Ð:¸DÓ	Añ 6Ü�i‰i˜œe E›l¨DÐ1Ð9JÔKˆä—‘˜#“ˆÜ—9‘9˜e T¬2¯5©5Ð1¸ÔIˆÜ
×Ñ˜v xÔ0ä—‘˜SÓ!ˆÜ—9‘9˜d E¬2¯5©5Ð1¸ÔIˆÜ
×Ñ˜v xÔ0ä—‘œŸ™Ò#3Ð;LÔMÓNˆÜ—9‘9˜c 3¬¯©Ð.Ð6GÔHˆÜ
×Ñ˜v xÔ0ô �i‰iÒ(Ð0AÔBˆÜ—g‘g˜c“l‰ˆˆeÜŸ	™	 3¨¬R¯U©UÐ"3Ð;LÔMˆÜŸ™ C¨¬b¯e©eÐ#4Ð<MÔNˆÜ
×Ñ˜t ]Ô3Ü
×Ñ˜u nÔ5÷+6÷ 6ñ 6ús   —G!HÈH
c                 ó¼   — t        j                  g d¢d¬«      } | j                  d„ d¬«      }t        j                  g d¢d¬«      }t        j                  ||«       y )N)é    é(   Nr;   r   c                 ó   — y)Né*   © ©r_   s    r   ú<lambda>z,test_map_numeric_na_action.<locals>.<lambda>  s   � r    Úignore)Ú	na_action)r¶   r¶   N)r   r   Úmapr7   r8   r<   s      r   Útest_map_numeric_na_actionr½     sF   € ä
�)‰)’NÐ*:Ô
;€CØ�W‰W‘\¨XˆWÓ6€FÜ�y‰yšÐ/?Ô@€HÜ×Ñ˜6 8Õ,r    zdtype, func, expected_dtypeÚsc                ó    — | t        d¬«      z   S )Né@â )Úmicroseconds)r   r¸   s    r   r¹   r¹   )  s   € �aœ)°Ô8Ñ8€ r    Úusc                ó&   — | j                  d¬«      S )NrÀ   )Úmicrosecond)Úreplacer¸   s    r   r¹   r¹   .  s   € �a—i‘i¨F�iÓ3€ r    r/   c                ó   — | t        d«      z   S )Nz0.01r   r¸   s    r   r¹   r¹   3  s   € �aœ' &›/Ñ)€ r    c                ó>  — t         j                  j                  | j                  «      rt	        ddd«      t	        ddd«      g}nZt         j                  j                  | j                  «      rt        ddd«      t        ddd«      g}nt        d«      t        d	«      g}t        j                  || ¬
«      }|j                  |«      }|j                  |k(  sJ ‚t        j                  |D �cg c]
  } ||«      ‘Œ c}|¬
«      }t        j                  ||«       y c c}w )Niä  r   r   r/   ry   r–   rz   z1.5z2.5r   )r   ÚtypesÚis_timestampÚpyarrow_dtyper   Úis_timer   r   r   r   r¼   r   r7   r8   )r   ÚfuncÚexpected_dtyper‘   r   r   r_   r=   s           r   Ú)test_map_finer_resolution_no_arrowinvalidrÎ   $  sß   € ô0 
‡x�x×Ñ˜U×0Ñ0Ô1Ü˜˜q !Ó$¤h¨t°Q¸Ó&:Ð;‰Ü	�‰×	Ñ	˜%×-Ñ-Ô	.Ü�Q˜˜1“œt A q¨!›}Ð-‰ä˜“¤¨£Ð/ˆä
�)‰)�D Ô
&€CØ�W‰W�T‹]€FØ�<‰<˜>Ò)Ð)Ð)Ü�y‰y¨4Ö0 a™$˜q�'Ò0¸ÔG€HÜ×Ñ˜6 8Õ,ùò 1s   Ã+Dc                 óò   — t        j                  g d¬«      } | j                  }t        d«      }|j	                  |g«      }|j
                  j                  }t        j                  j                  |«      sJ ‚y )NrN   r   ÚNaN)
r   r   r4   r   Ú_cast_pointwise_resultr   rÊ   r   rÈ   Ú
is_decimal)r   rK   Úitemr   r�   s        r   Ú%test_cast_pontwise_result_decimal_nanrÔ   J  s^   € ä
�)‰)�BÐ0Ô
1€CØ
�)‰)€CÜ�5‹>€Dà×'Ñ'¨¨Ó/€Fà�l‰l×(Ñ(€GÜ�8‰8×Ñ˜wÔ'Ð'Ñ'r    c                óN  — t        j                  d dgt        | «      ¬«      }t        j                  t        j                  ddgd| j
                  › d�¬«      «      }|j                  |«      }t        j                  ddgt        | «      ¬«      }t        j                  ||«       y )Nr   r   r   r/   zm8[ú])	r   r   r	   r3   r4   r˜   r   r7   r8   )r�   Úser1Úser2r   r=   s        r   Útest_duration_fillna_numpyrÙ   V  s~   € ô �9‰9�d˜A�Y¤j°Ó&9Ô:€DÜ�9‰9”R—X‘X˜q !˜f¨c°'·,±,°¸qÐ,AÔBÓC€DØ�[‰[˜Ó€FÜ�y‰y˜!˜Q˜¤z°'Ó':Ô;€HÜ×Ñ˜6 8Õ,r    c                 ó  — t         j                  t         j                  dg«      j                  «       t         j                  dg«      j                  «       g«      } t	        j
                  t        | «      «      }|j                  «       \  }}t        j                  ddgt        j                  ¬«      }t	        j                  t        | j                  «       «      «      }t        j                  ||«       t        j                  ||«       y )Nr   rZ   r   r   r   )r   Úchunked_arrayr4   Údictionary_encoder   r   r   Ú	factorizer3   ÚintpÚIndexÚcombine_chunksr7   Úassert_numpy_array_equalÚassert_index_equal)Úpa_arrayr   Úres_indicesÚres_uniquesÚexp_indicesÚexp_uniquess         r   Ú!test_factorize_chunked_dictionaryrè   `  s»   € ä×ÑÜ	�‰�3�%‹×	*Ñ	*Ó	,¬b¯h©h¸°u«o×.OÑ.OÓ.QÐRó€Hô �)‰)Ô'¨Ó1Ó
2€CØ"Ÿ}™}›Ñ€K�Ü—(‘(˜A˜q˜6¬¯©Ô1€KÜ—(‘(Ô.¨x×/FÑ/FÓ/HÓIÓJ€KÜ×Ñ ¨[Ô9Ü×Ñ˜+ {Õ3r    c            
     ó  — t        j                  dt         j                  gt        t        j                  t        j                  «       t        j                  «       «      «      ¬«      } | j                  d¬«      \  }}t        j                  ddgt        j                  ¬«      }t        j                  dd gt        t        j                  «       «      ¬«      }t        j                  ||«       t        j                  ||«       y )NÚa1r   F©Úuse_na_sentinelr   r   )r   r4   rP   r	   r   re   rf   Úutf8rÝ   r3   rÞ   r   r7   rá   r   ©rK   ÚindicesÚuniquesÚexpected_indicesÚexpected_uniquess        r   Ú!test_factorize_dictionary_with_naró   m  s«   € ä
�(‰(Ø	Œr�u‰uˆœZ¬¯©´b·h±h³jÄ"Ç'Á'Ã)Ó(LÓMô€Cð —}‘}°U�}Ó;Ñ€GˆWÜ—x‘x  A ¬b¯g©gÔ6ÐÜ—x‘x  t ´J¼r¿y¹y»{Ó4KÔLÐÜ×Ñ Ð)9Ô:Ü×#Ñ# GÐ-=Õ>r    c                 óÖ  — t        t        j                  d d gt        j                  «       ¬«      «      } | j	                  d¬«      \  }}t        j                  ddgt
        j                  ¬«      }t        t        j                  g t        j                  «       ¬«      «      }t        j                  ||«       t        j                  ||«       | j	                  d¬«      \  }}t        j                  ddgt
        j                  ¬«      }t        t        j                  d gt        j                  «       ¬«      «      }t        j                  ||«       t        j                  ||«       y )N©ÚtypeTrë   rO   r   Fr   ©r   r   r4   ÚnullrÝ   r3   rÞ   rÛ   r7   rá   r   rî   s        r   Útest_factorize_nullrù   y  s  € ä
œbŸh™h¨¨d |¼"¿'¹'»)˜hÓDÓ
E€CØ—}‘}°T�}Ó:Ñ€GˆWÜ—x‘x  R ´·±Ô8ÐÜ*¬2×+;Ñ+;¸BÄRÇWÁWÃYÐ+;Ó+OÓPÐÜ×Ñ Ð)9Ô:Ü×#Ñ# GÐ-=Ô>à—}‘}°U�}Ó;Ñ€GˆWÜ—x‘x  A ¬b¯g©gÔ6ÐÜ*¬2¯8©8°T°FÄÇÁÃ¨8Ó+KÓLÐÜ×Ñ Ð)9Ô:Ü×#Ñ# GÐ-=Õ>r    c                 óÈ  — t        t        j                  g t        j                  «       ¬«      «      } | j	                  d¬«      \  }}t        j                  g t
        j                  ¬«      }t        t        j                  g t        j                  «       ¬«      «      }t        j                  ||«       t        j                  ||«       | j	                  d¬«      \  }}t        j                  g t
        j                  ¬«      }t        t        j                  g t        j                  «       ¬«      «      }t        j                  ||«       t        j                  ||«       y )Nrõ   Trë   r   Fr÷   rî   s        r   Útest_factorize_null_emptyrû   ‰  sù   € ä
œbŸh™h r´·±³	˜hÓ:Ó
;€CØ—}‘}°T�}Ó:Ñ€GˆWÜ—x‘x ¬"¯'©'Ô2ÐÜ*¬2×+;Ñ+;¸BÄRÇWÁWÃYÐ+;Ó+OÓPÐÜ×Ñ Ð)9Ô:Ü×#Ñ# GÐ-=Ô>à—}‘}°U�}Ó;Ñ€GˆWÜ—x‘x ¬"¯'©'Ô2ÐÜ*¬2×+;Ñ+;¸BÄRÇWÁWÃYÐ+;Ó+OÓPÐÜ×Ñ Ð)9Ô:Ü×#Ñ# GÐ-=Õ>r    c                ó†   — | d d } | j                  «       }|j                  t        t        j	                  «       «      k(  sJ ‚y )Nr”   )Úvalue_countsr   r	   r   Úint64)r‘   r   s     r   Ú'test_value_counts_returns_pyarrow_int64rÿ   ™  s8   € à��ˆ9€DØ×ÑÓ €FØ�<‰<œ:¤b§h¡h£jÓ1Ò1Ð1Ñ1r    c                óH  — | j                   j                  s€t        j                  | «      }t	        j
                  d|j                   › d�«      }t        j                  t        |¬«      5  t        j                  | «      j                  «        d d d «       y y # 1 sw Y   y xY w)NzCannot interpolate with z dtyper#   )
r   Ú_is_numericr   r   ÚreÚescaper%   r&   r'   Úinterpolate)r‘   r   r\   s      r   Útest_interpolate_not_numericr     sy   € Ø�:‰:×!Ò!Ü�i‰i˜‹oˆÜ�i‰iÐ2°3·9±9°+¸VÐDÓEˆÜ�]‰]œ9¨CÔ0ñ 	*Ü�I‰I�d‹O×'Ñ'Ô)÷	*ð 	*ð "÷	*ð 	*ús   Á*$BÂB!r   r;   rN   c                ó´   — t        j                  g d¢| ¬«      }|j                  «       }t        j                  g d¢d¬«      }t        j                  ||«       y )N)Nr   r   Nry   Nr   )Nr¥   r„   ç      @r¦   r¦   rN   ©r   r   r  r7   r8   rR   s       r   Útest_interpolate_linearr	  ¨  sC   € ô �)‰)Ò/°uÔ
=€CØ�_‰_Ó€FÜ�y‰yÒ8Ð@RÔS€HÜ×Ñ˜6 8Õ,r    c                 óº   — t        j                  g d¢d¬«      } | j                  dd¬«      }t        j                  g d¢d¬«      }t        j                  ||«       y )	N)r   r   r/   NNrz   r—   r;   r   ÚlinearÚforward)ÚmethodÚlimit_direction)r¥   r„   r  r¦   g      @g      @g      @rN   r  r<   s      r   Ú&test_interpolate_linear_consecutive_nar  ²  sH   € ä
�)‰)Ò/Ð7GÔ
H€CØ�_‰_ H¸iˆ_ÓH€FÜ�y‰yÒ<ÐDVÔW€HÜ×Ñ˜6 8Õ,r    c                 ó¸   — t        j                  g d¢d¬«      } | j                  d¬«      }t        j                  g d¢d¬«      }t        j                  ||«       y )N)r   Nr   r;   r   r  )r  )r¥   rƒ   r„   rN   r  r<   s      r   Ú&test_interpolate_linear_int_fractionalr  º  sD   € ä
�)‰)’LÐ(8Ô
9€CØ�_‰_ Hˆ_Ó-€FÜ�y‰yšÐ0BÔC€HÜ×Ñ˜6 8Õ,r    )@Ú
__future__r   r   r   r   Údecimalr   r  Únumpyr3   r%   Úpandas.core.dtypes.dtypesr	   Úpandasr   Úpandas._testingÚ_testingr7   Úimportorskipr   Úpandas.core.arrays.arrow.arrayr   r   r)   ÚmarkÚparametrizer9   r>   rE   rL   rS   r]   rk   rs   ru   rw   r{   r€   ÚALL_INT_PYARROW_DTYPESÚFLOAT_PYARROW_DTYPESr’   ÚTIMEDELTA_PYARROW_DTYPESrœ   ÚDATETIME_PYARROW_DTYPESr    r£   r±   r½   Ú	timestampÚtime32Útime64Ú
decimal128rÎ   rÔ   rÙ   rè   ró   rù   rû   rÿ   r  r	  r  r  r·   r    r   ú<module>r%     s/  ðÝ "÷ñ õ
 Û 	ã Û õó Ý à€V×Ñ˜Ó#€å >ò5ò/ð ‡�×Ñ˜Ò(QÓRñ(ó Sð(ò&-ð& ‡�×Ñ˜ '¨6Ð!2Ó3ñAó 4ðAð ‡�×Ñ˜ 4¨ )Ó,ñ2ó -ð2ò-òò",ð ‡�×ÑØ+à	��1ˆv˜˜1�vÐØ
�ˆ˜˜A˜  A Ð'Ø
�ˆ˜˜A˜  A Ð'ðóñ,óð,ò&&ò(ò-òVð ‡�×Ñ˜ B×$=Ñ$=À×@WÑ@WÑ$WÓXñ	-ó Yð	-ð ‡�×Ñ˜ B×$?Ñ$?Ó@ñ	-ó Að	-ð ‡�×Ñ˜ B×$>Ñ$>Ó?ñ-ó @ð-ò -ò6ò6-ð ‡�×ÑØ!ñ �r—|‘| CÓ(Ó)Ù8Ù�r—|‘| DÓ)Ó*ð	
ñ �r—y‘y “~Ó&Ù3Ù�r—y‘y “Ó'ð	
ñ �r—}‘} Q¨Ó*Ó+Ù)Ù�r—}‘} Q¨Ó*Ó+ð	
ðóñ(-ó)ð(-ò$	(ð ‡�×Ñ˜ B×$?Ñ$?Ó@ñ-ó Að-ò
4ò	?ò?ò ?ò 2ò*ð ‡�×Ñ˜Ð#3Ð5GÐ"HÓIñ-ó Jð-ò-ó-r    