Ë
    ¤ehNý  ã                  óä   — d dl 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mZmZmZmZ d dlmZ ej&                  dd„«       Zej&                  dd„«       Z G d„ d	«      Z G d
„ d«      Zy)é    )Úannotations)ÚdatetimeN)Úusing_pyarrow_string_dtype)Ú	DataFrameÚIndexÚSeriesÚ	TimestampÚ
date_rangec                 óB   — t        t        d«      «      t        d«      dœS )Né   úab..©ÚaÚb)ÚlistÚrange© ó    úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_replace.pyÚmix_abr      s   € ä”e˜A“h“¤d¨6£lÑ3Ð3r   c                 óh   — t        t        d«      «      t        d«      ddt        j                  dgdœS )Nr   r   r   r   Úd©r   r   Úc)r   r   ÚnpÚnanr   r   r   Úmix_abcr      s(   € ä”e˜A“h“¤d¨6£l¸#¸sÄBÇFÁFÈCÐ9PÑQÐQr   c                  ó$  — e Zd Zej                  j                   e«       d¬«      d„ «       Zej                  j                  dddge	j                  dgdd	e	j                  e	j                  gdgd
z  dgz   g d¢dœfddgddgg d¢g d¢g d¢dœfddgddgg d¢g d¢g d¢dœfg«      ej                  j                  dddg«      ej                  j                  dddg«      d„ «       «       «       Zd„ Zd„ Zd„ Zd„ Zd „ Zej                  j                   e«       d¬«      d!„ «       Zej                  j                   e«       d¬«      d"„ «       Zej                  j                   e«       d¬«      d#„ «       Zej                  j                   e«       d¬«      d$„ «       Zd%„ Zd&„ Zej                  j                  d'e	j                  d(d)œd(e	j                  d*œg«      d+„ «       Zej                  j                  d,g d-¢«      d.„ «       Zej                  j                  d/d0d1gd2d3d4œd5d6gfg d7¢d8ej4                  id3ej4                  ej4                  gfg«      d9„ «       Zd:„ Zd;„ Zd<„ Zd=„ Zej                  j                   e«       d¬«      d>„ «       Z ej                  j                   e«       d¬«      d?„ «       Z!d@„ Z"dA„ Z#dB„ Z$dC„ Z%dD„ Z&ej                  j                  dEg dF¢«      dG„ «       Z'dH„ Z(dI„ Z)dJ„ Z*dK„ Z+dL„ Z,dM„ Z-dN„ Z.ej                  j                  dO e/dPg dQ¢i«      dRdS e/dPg dT¢i«      f e/dPg dQ¢ie	j`                  ¬U«      dRdS e/dPg dT¢ie	j`                  ¬U«      f e/dPg dQ¢ie	jb                  ¬U«      dRdS e/dPg dT¢ie	jb                  ¬U«      f e/dVg dW¢i«      dd e/dVg dX¢i«      f e/dYg dZ¢i«      d[dS e/dYg d\¢i«      f e/d] e2 e3d^d_d`«       e3d^dad`«       e3d^d_d`«      g«      i«       e3d^d_d`«       e3d^dad`«       e/d] e2 e3d^dad`«      gd
z  «      i«      f e/ e3dbdcdd«      gdegdfœ«      dedg e/ e3dbdcdd«      gdggdfœ«      f e/dh e3didjdR«      gi«       e3didjdR«       e3dkdjdR«       e/dh e3dkdjdR«      gi«      f e/ e4dld
dm¬n«      dSe	j                  dogdpœ«       e5dqdm¬r«       e5dsdm¬r«       e/ ejl                   e5dldm¬r«       e5dsdm¬r«       e5dtdm¬r«      g«      jo                  du«      dSe	j                  dogdpœ«      f e/dRdvgdodwgg«      dvd_ e/d_dxgdodwgg«      f e/dRdvgdodwgg«      dRd_ e/d_dxgdodwgg«      f e/dRdvgdodwgg«      dvdx e/d_dxgdodwgg«      f e/dRdvgdodwgg«      dRdx e/d_dxgdodwgg«      fg«      dy„ «       Z8dz„ Z9ej                  j                   e«       d¬«      d{„ «       Z:d|„ Z;ej                  j                   e«       d¬«      d}„ «       Z<ej                  j                   e«       d¬«      d~„ «       Z=d„ Z>d€„ Z?d�„ Z@d‚„ ZAdƒ„ ZBd„„ ZCd…„ ZDd†„ ZEd‡„ ZFdˆ„ ZGej                  j                   e«       d¬«      d‰„ «       ZHej                  j                   e«       d¬«      dŠ„ «       ZIej                  j                   e«       d¬«      d‹„ «       ZJdŒ„ ZKd�„ ZLej                  j                  dŽdSd�g d�¢d_e	j                  dagg d¢d‘œfe	j                  d�g d’¢g d“¢g d¢d‘œfd3d”g d’¢d_e	j                  dagg d¢d‘œfdSdogd�g d�¢d_e	j                  dagg d¢d‘œfdRdogd•g d–¢d_e	j                  dagg d¢d‘œfd—d�g d˜¢d_e	j                  dagg d¢d‘œfd	d2gd”g d’¢d_e	j                  dagg d™¢d‘œfg«      dš„ «       ZMej                  j                  d›dRdRd4œd
d
gdodoggfdRdod4œd
dRgdod
ggfg«      dœ„ «       ZNej                  j                  d�g dQ¢g dž¢dŸœd_d dadžœg dQ¢g d¡¢dŸœfg dQ¢g d¢¢dŸœd£d¤d¥d¢œg dQ¢g d¦¢dŸœfg«      d§„ «       ZOej                  j                   e«       d¬«      ej                  j                  d¨ e5d©«       e	j                   dR«       e	jb                  dR«       e	j¢                  dR«       e	j¤                  dR«      g«      dª„ «       «       ZSd«„ ZTd¬„ ZUej                  j                  dEg d­¢«      ej                  j                  d®e	j                  ej4                  g«      d¯„ «       «       ZVej                  j                  d°e	j                  d_g«      d±„ «       ZWej                  j                  d® ej°                  d²«       ej²                  dSd_«      g«      d³„ «       ZZd´„ Z[dµ„ Z\d¶„ Z]d·„ Z^d¸„ Z_d¹„ Z`ej                  j                  dºdRgdvgdSgdSgfdRgdRgdSgdSgfdvgdvgdSgd»gfdvgdRgdSgd»gfg«      ej                  j                  d¼eaebe	jÆ                  g«      d½„ «       «       Zdej                  j                  d¾doe	j                  dwg«      d¿„ «       ZedÀ„ ZfyÁ)ÂÚTestDataFrameReplaceúcan't set float into string©Úreasonc                ó   — t         j                  |j                  |j                  d d df<   t         j                  |j                  |j                  dd  df<   |j	                  «       }|j                  t         j                  dd¬«      }|�J ‚t        j                  ||j                  d«      «       |}t         j                  |j                  dd…|j                  j                  d«      f<   t         j                  |j                  d	d …|j                  j                  d«      f<   |j                  t         j                  d«      }|j                  d¬
«      }t        j                  ||«       |j	                  «       }|j                  t         j                  gdgd¬«      }|�J ‚t        j                  ||j                  d«      «       y )Né   ÚAéûÿÿÿr   T©Úinplaceé   Úfooéöÿÿÿ©Úvalue)r   r   ÚlocÚindexÚcopyÚreplaceÚtmÚassert_frame_equalÚfillnaÚilocÚcolumnsÚget_loc)ÚselfÚdatetime_frameÚfloat_string_frameÚtsframeÚreturn_valueÚmfÚresultÚexpecteds           r   Útest_replace_inplacez)TestDataFrameReplace.test_replace_inplace!   s€  € ô =?¿F¹Fˆ×Ñ˜>×/Ñ/°°Ð3°SÐ8Ñ9Ü=?¿V¹Vˆ×Ñ˜>×/Ñ/°°Ð4°cÐ9Ñ:à ×%Ñ%Ó'ˆØ—‘¤r§v¡v¨q¸$�Ó?ˆØÐ#Ð#Ð#Ü
×Ñ˜g ~×'<Ñ'<¸QÓ'?Ô@ð  ˆÜ35·6±6ˆ�‰��"��b—j‘j×(Ñ(¨Ó/Ð/Ñ0Ü13·±ˆ�‰�‘�b—j‘j×(Ñ(¨Ó-Ð-Ñ.à#×+Ñ+¬B¯F©F°AÓ6ˆØ%×,Ñ,°1Ð,Ó5ˆÜ
×Ñ˜f hÔ/à ×%Ñ%Ó'ˆØ—‘¬¯© x°!°¸d�ÓCˆØÐ#Ð#Ð#Ü
×Ñ˜g ~×'<Ñ'<¸QÓ'?Õ@r   zto_replace,values,expectedú\s*\.\s*ze|f|gÚcrapr   r   é   Úh©rD   rB   ÚlÚor   ú
\s*(\.)\s*z(e|f|g)ú\1\1ú\1_crap©r   r   ú..rL   )Úe_crapÚf_crapÚg_craprD   )rD   rM   rF   rG   Úe©rB   ÚfÚgrD   r(   TFÚuse_value_regex_argsc                ó  — t        t        d«      t        d«      t        d«      dœ«      }|r|j                  |||¬«      }n|j                  ||d|¬«      }|r|�J ‚|}t        |«      }t        j                  ||«       y )Nr   ÚefghÚhelor   )r-   Úregexr(   T©rX   r(   )r   r   r1   r2   r3   )r8   Ú
to_replaceÚvaluesr?   r(   rT   Údfr>   s           r   Útest_regex_replace_list_objz0TestDataFrameReplace.test_regex_replace_list_obj;   s{   € ôT œT &›\´°V³Ä4ÈÃ<ÑPÓQˆáØ—Z‘Z f°JÈ�ZÓP‰Fà—Z‘Z 
¨F¸$È�ZÓPˆFáØ�>Ð!�>ØˆFä˜XÓ&ˆÜ
×Ñ˜f hÕ/r   c                ó  — t        |«      }ddg}t        j                  dg}t        t	        d«      «      t        d«      t        d«      dœ}t        |«      }|j                  ||d¬	«      }t        |d   dd
t        j                  t        j                  gg d¢dœ«      }t        j                  ||«       ddg}ddg}|j                  ||d¬	«      }t        |d   g d¢dœ«      }t        j                  ||«       g d¢}g d¢}|j                  ||d¬	«      }t        |d   g d¢dœ«      }t        j                  ||«       g d¢}g d¢}|j                  ||¬«      }t        |d   g d¢dœ«      }t        j                  ||«       y )NrA   r   rB   r   r   Úhalor   T©rX   r   rE   rH   ú(a|b)rI   rJ   ©Úa_crapÚb_craprL   rL   r   ©rH   r   z(b)©rI   rB   rJ   ©rB   rd   rL   rL   ©rX   r-   )r   r   r   r   r   r1   r2   r3   )	r8   r   ÚdfmixÚto_replace_resr[   Úmix2Údfmix2ÚresÚexpecs	            r   Útest_regex_replace_list_mixedz2TestDataFrameReplace.test_regex_replace_list_mixeds   sp  € ä˜&Ó!ˆð & tÐ,ˆÜ—&‘&˜&Ð!ˆÜœ% ›(“^¬$¨v«,¼TÀ&»\ÑJˆÜ˜4“ˆØ�n‰n˜^¨V¸4ˆnÓ@ˆÜà˜#‘YØ˜c¤2§6¡6¬2¯6©6Ð2Ú,ñó
ˆô 	×Ñ˜c 5Ô)ð (¨Ð2ˆØ˜:Ð&ˆØ�m‰m˜N¨F¸$ˆmÓ?ˆÜ  s¡Ò2RÑSÓTˆÜ
×Ñ˜c 5Ô)ò 7ˆÚ/ˆØ�m‰m˜N¨F¸$ˆmÓ?ˆÜ  s¡Ò2PÑQÓRˆÜ
×Ñ˜c 5Ô)â6ˆÚ/ˆØ�m‰m .¸ˆmÓ?ˆÜ  s¡Ò2PÑQÓRˆÜ
×Ñ˜c 5Õ)r   c                ó@  — t        |«      }ddg}t        j                  dg}|j                  «       }|j	                  ||dd¬«      }|�J ‚t        |d   ddt        j                  t        j                  gdœ«      }t        j                  ||«       dd	g}d
dg}|j                  «       }|j	                  ||dd¬«      }|�J ‚t        |d   g d¢dœ«      }t        j                  ||«       g d¢}g d¢}|j                  «       }|j	                  ||dd¬«      }|�J ‚t        |d   g d¢dœ«      }t        j                  ||«       g d¢}g d¢}|j                  «       }|j	                  ||d¬«      }|�J ‚t        |d   g d¢dœ«      }t        j                  ||«       y )NrA   r   rB   T©r(   rX   r   r   rH   ra   rI   rJ   rb   re   rf   rg   ©rX   r-   r(   )r   r   r   r0   r1   r2   r3   )r8   r   ri   rj   r[   rm   r<   rn   s           r   Ú%test_regex_replace_list_mixed_inplacez:TestDataFrameReplace.test_regex_replace_list_mixed_inplaceœ   s¤  € Ü˜&Ó!ˆð & tÐ,ˆÜ—&‘&˜&Ð!ˆØ�j‰j‹lˆØ—{‘{ >°6À4Èt�{ÓTˆØÐ#Ð#Ð#Ü  s¡°6¸3ÄÇÁÌÏÉÐ2OÑPÓQˆÜ
×Ñ˜c 5Ô)ð (¨Ð2ˆØ˜:Ð&ˆØ�j‰j‹lˆØ—{‘{ >°6À4Èt�{ÓTˆØÐ#Ð#Ð#Ü  s¡Ò2RÑSÓTˆÜ
×Ñ˜c 5Ô)ò 7ˆÚ/ˆØ�j‰j‹lˆØ—{‘{ >°6À4Èt�{ÓTˆØÐ#Ð#Ð#Ü  s¡Ò2PÑQÓRˆÜ
×Ñ˜c 5Ô)â6ˆÚ/ˆØ�j‰j‹lˆØ—{‘{¨¸vÈt�{ÓTˆØÐ#Ð#Ð#Ü  s¡Ò2PÑQÓRˆÜ
×Ñ˜c 5Õ)r   c                óx  — t        |«      }|j                  ddidt        j                  id¬«      }|j	                  «       }|j                  ddidt        j                  idd¬«      }|�J ‚t        |d   ddt        j                  t        j                  g|d   dœ«      }t        j                  ||«       t        j                  ||«       |j                  dd	idd
id¬«      }|j	                  «       }|j                  dd	idd
idd¬«      }|�J ‚t        |d   g d¢|d   dœ«      }t        j                  ||«       t        j                  ||«       |j                  dd	idd
i¬«      }|j	                  «       }|j                  dd	idd
id¬«      }|�J ‚t        |d   g d¢|d   dœ«      }t        j                  ||«       t        j                  ||«       t        |d   t        j                  dddg|d   dœ«      }|j                  ddt        j                  id¬«      }|j	                  «       }|j                  ddt        j                  idd¬«      }|�J ‚t        j                  ||«       t        j                  ||«       |j                  ddt        j                  id¬«      }|j	                  «       }|j                  ddt        j                  id¬«      }|�J ‚t        |d   t        j                  dddg|d   dœ«      }t        j                  ||«       t        j                  ||«       y )Nr   rA   Tr`   rq   r   r   r   rH   z\1ty)r   r   ú.tyru   rh   rr   ú.rY   ©r   r1   r   r   r0   r2   r3   )r8   r   ri   rm   Úres2r<   rn   s          r   Útest_regex_replace_dict_mixedz2TestDataFrameReplace.test_regex_replace_dict_mixedÄ   s*  € Ü˜'Ó"ˆð �m‰m˜S +Ð.°´b·f±f°ÀTˆmÓJˆØ�z‰z‹|ˆØ—|‘|Ø�+Ð ¤b§f¡f °tÀ4ð $ó 
ˆð Ð#Ð#Ð#ÜØ˜#‘, c¨3´·±¼¿¹Ð%?ÀgÈcÁlÑSó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*ð �m‰m˜S -Ð0°3¸°.ÈˆmÓMˆØ�z‰z‹|ˆØ—|‘|Ø�-Ð  3¨ .¸$Àdð $ó 
ˆð Ð#Ð#Ð#ÜØ˜#‘,Ò%=ÀGÈCÁLÑQó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*à�m‰m 3¨Ð"6¸sÀG¸nˆmÓMˆØ�z‰z‹|ˆØ—|‘|Ø˜Ð&¨s°G¨nÀdð $ó 
ˆð Ð#Ð#Ð#ÜØ˜#‘,Ò%=ÀGÈCÁLÑQó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*ô Ø˜#‘,¤b§f¡f¨c°3¸Ð%<À7È3Á<ÑPó
ˆð �m‰m˜C #¤r§v¡v °dˆmÓ;ˆØ�z‰z‹|ˆØ—|‘| C¨#¬r¯v©v¨¸dÈD�|ÓQˆØÐ#Ð#Ð#Ü
×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*à�m‰m˜C #¤r§v¡v °dˆmÓ;ˆØ�z‰z‹|ˆØ—|‘|¨#°c¼2¿6¹6°]ÈD�|ÓQˆØÐ#Ð#Ð#ÜØ˜#‘,¤b§f¡f¨c°3¸Ð%<À7È3Á<ÑPó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÕ*r   c                ó¬  — t        |«      }|j                  ddt        j                  iid¬«      }|j	                  «       }|j	                  «       }|j                  ddt        j                  iidd¬«      }|�J ‚|j                  ddt        j                  ii¬«      }|j                  ddt        j                  iid¬«      }|�J ‚t        |d   ddt        j                  t        j                  g|d   d	œ«      }t        j                  ||«       t        j                  ||«       t        j                  ||«       t        j                  ||«       y )
Nr   rA   Tr`   rq   rY   r   r   r   rw   )	r8   r   ri   rm   rx   Úres4r<   Úres3rn   s	            r   Útest_regex_replace_dict_nestedz3TestDataFrameReplace.test_regex_replace_dict_nested	  s2  € ä˜'Ó"ˆØ�m‰m˜S ;´·±Ð"7Ð8ÀˆmÓEˆØ�z‰z‹|ˆØ�z‰z‹|ˆØ—|‘|Ø�;¤§¡Ð'Ð(°$¸dð $ó 
ˆð Ð#Ð#Ð#Ø�}‰} C¨+´r·v±vÐ)>Ð#?ˆ}Ó@ˆØ—|‘|¨3°¼b¿f¹fÐ0EÐ*FÐPT�|ÓUˆØÐ#Ð#Ð#ÜØ˜#‘, c¨3´·±¼¿¹Ð%?ÀgÈcÁlÑSó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÕ*r   c                óZ  — |}t        dg d¢i|¬«      }|rN|dk(  rIt        j                  t        d¬«      5  |j	                  ddid	¬
«      }d d d «       t        dg d¢i«      }n&|j	                  ddid	¬
«      }t        dg d¢i|¬«      }t        j
                  |«       y # 1 sw Y   ŒVxY w)NÚfirst)ÚabcÚbcaÚcab©ÚdtypeÚobjectÚDowncasting©Úmatchr   rv   Tr`   )z.bczbc.zc.b©r   r2   Úassert_produces_warningÚFutureWarningr1   r3   )r8   Úany_string_dtypeÚusing_infer_stringr„   r\   r>   r?   s          r   Ú2test_regex_replace_dict_nested_non_first_characterzGTestDataFrameReplace.test_regex_replace_dict_nested_non_first_character  s«   € ð !ˆÜ˜Ò!6Ð7¸uÔEˆÙÐ"2°hÒ">Ü×+Ñ+¬MÀÔOñ <ØŸ™ S¨# J°d˜Ó;�÷<ä  'Ò+@Ð!AÓB‰Hð —Z‘Z  c 
°$�ZÓ7ˆFÜ  'Ò+@Ð!AÈÔOˆHÜ
×Ñ˜f hÕ/÷<ð <ús   ¶B!Â!B*c                ó   — t        g d¢ddœ«      }t        g d¢ddœ«      }d}t        j                  t        |¬«      5  |j	                  ddd	d
œi«      }d d d «       t        j
                  |«       y # 1 sw Y   Œ xY w)N)ÚQÚTr�   r�   r‘   é   )ÚTypeÚtmp)r   é   r   r   r•   ú!Downcasting behavior in `replace`r‡   r“   r   r•   )r�   r‘   r‰   )r8   r\   r?   Úmsgr>   s        r   Ú%test_regex_replace_dict_nested_gh4115z:TestDataFrameReplace.test_regex_replace_dict_nested_gh4115.  su   € ô Ò 9À!ÑDÓEˆÜ¢o¸aÑ@ÓAˆØ1ˆÜ×'Ñ'¬¸SÔAñ 	<Ø—Z‘Z ¨q°qÑ)9Ð :Ó;ˆF÷	<ä
×Ñ˜f hÕ/÷	<ð 	<ús   ¾A4Á4A=c                ó¸  — t        |«      }t        |d   t        j                  t        j                  gdz  «      t        j                  t        j                  t        j                  dgdœ«      }d}t	        j
                  t        |¬«      5  |j                  ddgt        j                  d	¬
«      }d d d «       |j                  «       }|j                  «       }t	        j
                  t        |¬«      5  |j                  ddgt        j                  d	d	¬«      }d d d «       �J ‚t	        j
                  t        |¬«      5  |j                  ddgt        j                  d	¬«      }d d d «       |�J ‚t	        j                  |«       t	        j                  ||«       t	        j                  ||«       y # 1 sw Y   �ŒxY w# 1 sw Y   Œ©xY w# 1 sw Y   ŒixY w)Nr   r   r   r   r–   r‡   rA   za|bTr`   rY   rr   )
r   r   Úarrayr   r2   rŠ   r‹   r1   r0   r3   )	r8   r   r\   rn   r—   rm   rx   r|   r<   s	            r   Ú!test_regex_replace_list_to_scalarz6TestDataFrameReplace.test_regex_replace_list_to_scalar9  s“  € ô �wÓˆÜà˜S‘\Ü—X‘XœrŸv™v˜h¨™lÓ+Ü—f‘fœbŸf™f¤b§f¡f¨cÐ2ñó
ˆð 2ˆÜ×'Ñ'¬¸SÔAñ 	GØ—*‘*˜k¨5Ð1´2·6±6À�*ÓFˆC÷	Gà�w‰w‹yˆØ�w‰w‹yˆÜ×'Ñ'¬¸SÔAñ 	ØŸ<™<Ø˜eÐ$¤b§f¡f°DÀ$ð (ó ˆL÷	ð Ð#Ð#Ð#Ü×'Ñ'¬¸SÔAñ 	ØŸ<™<Ø" EÐ*´"·&±&À$ð (ó ˆL÷	ð Ð#Ð#Ð#Ü
×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÕ*÷!	Gñ 	Gú÷	ð 	ú÷
	ð 	ús$   Â%F7Ã6&GÅ%GÆ7GÇGÇGc                ó–  — t        |«      }|j                  ddd¬«      }|j                  «       }|j                  dddd¬«      }|�J ‚|j                  «       }|j                  ddd¬«      }|�J ‚t        |d   g d¢|d	   d
œ«      }t        j                  ||«       t        j                  ||«       t        j                  ||«       y )NrA   r   Tr`   rq   rr   r   )r   r   r   r   r   r   )r   r1   r0   r2   r3   ©r8   r   r\   rm   rx   r<   r|   rn   s           r   Ú!test_regex_replace_str_to_numericz6TestDataFrameReplace.test_regex_replace_str_to_numericX  sÅ   € ô
 �wÓˆØ�j‰j˜ a¨tˆjÓ4ˆØ�w‰w‹yˆØ—|‘| K°¸DÈ�|ÓMˆØÐ#Ð#Ð#Ø�w‰w‹yˆØ—|‘|¨+¸QÈ�|ÓMˆØÐ#Ð#Ð#Ü ¨¡Ò3CÈ'ÐRUÉ,ÑWÓXˆÜ
×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÕ*r   c                óÀ  — t        |«      }|j                  ddgdd¬«      }|j                  «       }|j                  ddgddd¬«      }|�J ‚|j                  «       }|j                  ddgdd¬«      }|�J ‚t        |d   g d	¢ddt        j                  d
gdœ«      }t        j                  ||«       t        j                  ||«       t        j                  ||«       y )NrA   r   r   Tr`   rY   rr   r   )r   r   r   r   r   r   )r   r1   r0   r   r   r2   r3   r�   s           r   Ú(test_regex_replace_regex_list_to_numericz=TestDataFrameReplace.test_regex_replace_regex_list_to_numericj  sà   € ô �wÓˆØ�j‰j˜+ sÐ+¨Q°dˆjÓ;ˆØ�w‰w‹yˆØ—|‘| [°#Ð$6¸ÀÈt�|ÓTˆØÐ#Ð#Ð#Ø�w‰w‹yˆØ—|‘|¨;¸Ð*<ÀAÈt�|ÓTˆØÐ#Ð#Ð#ÜØ˜#‘,¢^¸3ÀÄ2Ç6Á6È3Ð:OÑPó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÕ*r   c                ó"  — t        |«      }t        ddi«      }t        dt        j                  i«      }|j	                  ||d¬«      }|j                  «       }|j	                  ||dd¬«      }|�J ‚|j                  «       }|j	                  ||d¬«      }|�J ‚t        |d   ddt        j                  t        j                  g|d   d	œ«      }	t        j                  ||	«       t        j                  ||	«       t        j                  ||	«       y )
Nr   rA   Tr`   rq   rr   r   r   r   )r   r   r   r   r1   r0   r2   r3   )
r8   r   r\   Ús1Ús2rm   rx   r<   r|   rn   s
             r   Ú$test_regex_replace_series_of_regexesz9TestDataFrameReplace.test_regex_replace_series_of_regexes}  sø   € Ü�wÓˆÜ�S˜+Ð&Ó'ˆÜ�Sœ"Ÿ&™&�MÓ"ˆØ�j‰j˜˜R tˆjÓ,ˆØ�w‰w‹yˆØ—|‘| B¨°DÀ�|ÓEˆØÐ#Ð#Ð#Ø�w‰w‹yˆØ—|‘|¨"°BÀ�|ÓEˆØÐ#Ð#Ð#ÜØ˜#‘, c¨3´·±¼¿¹Ð%?ÀgÈcÁlÑSó
ˆô 	×Ñ˜c 5Ô)Ü
×Ñ˜d EÔ*Ü
×Ñ˜d EÕ*r   c                óê   — t        |«      }t        g d¢|d   |d   dœ«      }|j                  dd«      }t        j                  ||«       |j                  j
                  t        j                  k(  sJ ‚y )N)r   r•   r’   rC   r   r   r   r   r   )r   r1   r2   r3   r   r„   r   Úobject_)r8   r   r\   rn   rm   s        r   Ú/test_regex_replace_numeric_to_object_conversionzDTestDataFrameReplace.test_regex_replace_numeric_to_object_conversion�  s`   € Ü�wÓˆÜ¢°W¸S±\ÈÐPSÉÑUÓVˆØ�j‰j˜˜CÓ ˆÜ
×Ñ˜c 5Ô)Ø�u‰u�{‰{œbŸj™jÒ(Ð(Ñ(r   rZ   Ú )r¨   ú,)r©   r¨   c                óÆ   — t        g d¢g d¢g d¢dœ«      }|j                  |¬«      }t        g d¢dt        j                  dgg d¢dœ«      }t	        j
                  ||«       y )	N)z1,000r   Ú3)r   r¨   r   r   ©Úcol1Úcol2Úcol3r`   )Ú1000r   r«   r   r   ©r   r1   r   r   r2   r3   )r8   rZ   r\   r>   r?   s        r   Ú+test_joint_simple_replace_and_regex_replacez@TestDataFrameReplace.test_joint_simple_replace_and_regex_replace–  sc   € ô
 â+Ú&Ú'ñó
ˆð —‘ *�Ó-ˆÜâ*ØœbŸf™f cÐ*Ú'ñó
ˆô 	×Ñ˜f hÕ/r   Úmetachar)z[]z()z\dz\wz\sc                ó–   — t        d|dgi«      }|j                  d|dii«      }t        dddgi«      }t        j                  ||«       y )Nr   ÚelseÚparen©r   r1   r2   r3   )r8   r³   r\   r>   r?   s        r   Útest_replace_regex_metacharz0TestDataFrameReplace.test_replace_regex_metachar¬  sR   € ä˜˜h¨Ð/Ð0Ó1ˆØ—‘˜S 8¨WÐ"5Ð6Ó7ˆÜ˜c G¨VÐ#4Ð5Ó6ˆÜ
×Ñ˜f hÕ/r   zdata,to_replace,expectedÚxaxÚxbxr   r   r   ÚxcxÚxdx)r   r¨   r¨   ú^\s*$c                óÊ  — |} |||¬«      }	|r–|dk(  r‘t        |«      dkD  rIt        |	t        «      r9|j                  j	                  t
        j                  j                  d¬«      «       t        j                  t        d¬«      5  |	j                  |d¬	«      }
d
}d d d «       n|	j                  |d¬	«      }
 |||¬«      }t        j                  
|«       y # 1 sw Y   Œ*xY w)Nrƒ   r…   r•   z=object input array that gets downcasted raises on second passr!   r†   r‡   Tr`   zstring[pyarrow_numpy])ÚlenÚ
isinstancer   ÚnodeÚ
add_markerÚpytestÚmarkÚxfailr2   rŠ   r‹   r1   Úassert_equal)r8   ÚdatarZ   r?   Úframe_or_seriesrŒ   r�   Úrequestr„   Úobjr>   s              r   Útest_regex_replace_string_typesz4TestDataFrameReplace.test_regex_replace_string_types³  sÔ   € ð$ !ˆÙ˜d¨%Ô0ˆÙÐ"2°hÒ">Ü�:‹ Ò"¤z°#´yÔ'AØ—‘×'Ñ'Ü—K‘K×%Ñ%ð &ð &ó ôô ×+Ñ+¬MÀÔOñ 0ØŸ™ Z°t˜Ó<�Ø/�÷0ð 0ð —[‘[ °4�[Ó8ˆFÙ" 8°5Ô9ˆä
�‰˜ Õ)÷0ð 0ús   ÂCÃC"c                ó^  — t         j                  |j                  |j                  d d df<   t         j                  |j                  |j                  dd  df<   |j	                  t         j                  d«      }t        j                  ||j                  d«      «       t        j                  |j	                  dt         j                  «      |«       t         j                  |j                  |j                  d d df<   t         j                  |j                  |j                  dd  df<   d|j                  |j                  d d df<   t        ddg¬«      }t        j                  ||j	                  dd	«      «       t        d
t        j                  d«      fdt        j                  d«      fg«      }|j	                  d
t         j                  «      }t        t         j                  t        j                  d«      fdt        j                  d«      fg«      }t        j                  ||«       y )Nr$   r%   r&   ç    „×—ÁÚBr   r   ©r/   é   ú-Ú20150101Ú20150102)r   r   r.   r/   r1   r2   r3   r4   r   ÚpdÚto_datetime)r8   r9   Úzero_filledr\   Údf1Úexpected_dfs         r   Útest_replacez!TestDataFrameReplace.test_replaceØ  sÃ  € Ü<>¿F¹Fˆ×Ñ˜>×/Ñ/°°Ð3°SÐ8Ñ9Ü=?¿V¹Vˆ×Ñ˜>×/Ñ/°°Ð4°cÐ9Ñ:à$×,Ñ,¬R¯V©V°TÓ:ˆÜ
×Ñ˜k¨>×+@Ñ+@ÀÓ+FÔGÜ
×Ñ˜k×1Ñ1°$¼¿¹Ó?ÀÔPä<>¿F¹Fˆ×Ñ˜>×/Ñ/°°Ð3°SÐ8Ñ9Ü=?¿V¹Vˆ×Ñ˜>×/Ñ/°°Ð4°cÐ9Ñ:Ø<@ˆ×Ñ˜>×/Ñ/°°Ð3°SÐ8Ñ9ô ˜c 3˜ZÔ(ˆÜ
×Ñ˜b "§*¡*¨Q°Ó"2Ô3ô Ø”2—>‘> *Ó-Ð.°´b·n±nÀZÓ6PÐ0QÐRó
ˆð �j‰j˜œbŸf™fÓ%ˆÜÜ�f‰f”b—n‘n ZÓ0Ð1°C¼¿¹È
Ó9SÐ3TÐUó
ˆô 	×Ñ˜c ;Õ/r   c                óÈ  — t        d«      t        d«      t        d«      dœ}t        |«      }ddg}t        j                  dg}|j	                  ||«      }t        dd	t        j                  t        j                  gg d
¢g d¢dœ«      }t        j                  ||«       ddg}ddg}|j	                  ||«      }t        g d¢g d¢g d¢dœ«      }t        j                  ||«       y )Nr   rV   rW   r   rv   rP   rB   r   r   rQ   rE   rR   rL   rK   )rP   rB   rS   rD   )rD   rP   rF   rG   )r   r   r   r   r1   r2   r3   )r8   rÊ   Údfobjrj   r[   rm   rn   s          r   Útest_replace_listz&TestDataFrameReplace.test_replace_listó  sÖ   € Ü˜“L¤t¨F£|¼$¸v»,ÑGˆÜ˜#“ˆð  ˜ˆÜ—&‘&˜&Ð!ˆØ�m‰m˜N¨FÓ3ˆÜà˜3¤§¡¬¯©Ð/Ú,Ú,ñó
ˆô 	×Ñ˜c 5Ô)ð  ˜ˆØ˜Ð!ˆØ�m‰m˜N¨FÓ3ˆÜâ+Ú,Ú)ñó
ˆô 	×Ñ˜c 5Õ)r   c                ó†  — t        ddgg t        j                  dgg«      }t        d|i«      }t	        j
                  ||«      }|}|j                  g t        j                  «      }t	        j                  ||«       d}t        j                  t        |j                  d¬«      ¬«      5  |j                  t        j                  g i«       d d d «       t        j                  t        |j                  d	¬«      ¬«      5  |j                  t        j                  d
dgi«       d d d «       y # 1 sw Y   ŒaxY w# 1 sw Y   y xY w)Nr   r   r•   ÚcolzwNumPy boolean array indexing assignment cannot assign {size} input values to the 1 output values where the mask is truer   )Úsizer‡   r’   ÚdummyÚalt)r   r   r   r   r2   Úget_objr1   rÆ   rÃ   ÚraisesÚ
ValueErrorÚformat)r8   rÈ   ÚserrÊ   r?   r>   r—   s          r   Útest_replace_with_empty_listz1TestDataFrameReplace.test_replace_with_empty_list  s   € ä�s˜C�j "¤b§f¡f¨q¨cÐ2Ó3ˆÜ˜ ˜Ó%ˆÜ�j‰j˜˜oÓ.ˆØˆØ—‘˜R¤§¡Ó(ˆÜ
�‰˜ Ô)ðIð 	ô �]‰]œ:¨S¯Z©Z¸Q¨ZÓ-?Ô@ñ 	&Ø�K‰KœŸ™ ˜Ô%÷	&ä�]‰]œ:¨S¯Z©Z¸Q¨ZÓ-?Ô@ñ 	4Ø�K‰KœŸ™ '¨5Ð!1Ð2Ô3÷	4ð 	4÷	&ð 	&ú÷	4ð 	4ús   Â)"D+Ã>$D7Ä+D4Ä7E c                óD  — t        dddœdddœdœ«      }|j                  ddddœ«      }t        dddœdddœdœ«      }t        j                  ||«       |j                  d|j	                  «       «      }t        j                  ||«       t        dddœdddœdœ«      }t        dddœ«      }|j                  |dddœ«      }t        dddœdddœdœ«      }t        j                  ||«       |j                  ||j	                  «       «      }t        j                  ||«       y )	Nç        r•   r   ç       @r   )ÚzeroÚoneç      à?ç      ð?)r   r1   r2   r3   Úmeanr   )r8   r\   r>   r?   Úss        r   Útest_replace_series_dictz-TestDataFrameReplace.test_replace_series_dict%  s  € ä c°Ñ 2ÀÈ1Ñ;MÑNÓOˆØ—‘˜A¨°CÑ8Ó9ˆÜ¨C°aÑ&8ÀsÐQTÑAUÑVÓWˆÜ
×Ñ˜f hÔ/à—‘˜A˜rŸw™w›yÓ)ˆÜ
×Ñ˜f hÔ/ô  c°Ñ 2ÀÈ1Ñ;MÑNÓOˆÜ˜C¨Ñ,Ó-ˆØ—‘˜A¨°CÑ8Ó9ˆÜ¨C°aÑ&8ÀsÐQTÑAUÑVÓWˆÜ
×Ñ˜f hÔ/à—‘˜A˜rŸw™w›yÓ)ˆÜ
×Ñ˜f hÕ/r   c                ó6  — t        g d¢g d¢g«      }ddddœ}d}t        j                  t        |¬«      5  |j	                  |«      }d d d «       t        t        j                  gdz  «      }j                  }t        j                  ||«       y # 1 sw Y   ŒIxY w)N)r*   ÚbarÚbah)ró   r*   rô   r•   r’   rC   ú"Downcasting behavior in `replace` r‡   )
r   r2   rŠ   r‹   r1   r   r   Úint64ÚdtypesÚassert_series_equal)r8   r\   Úmr—   Úreprn   rm   s          r   Útest_replace_convertz)TestDataFrameReplace.test_replace_convert9  s…   € ô
 Ò-Ò/DÐEÓFˆØ˜a¨Ñ*ˆØ2ˆÜ×'Ñ'¬¸SÔAñ 	 Ø—*‘*˜Q“-ˆC÷	 äœŸ™�z A‘~Ó&ˆØ�j‰jˆÜ
×Ñ˜u cÕ*÷		 ð 	 ús   µBÂBc                óà  — |}t         j                  |j                  dd…|j                  j	                  d«      f<   t         j                  |j                  dd …|j                  j	                  d«      f<   |j                  t         j                  d«      }|j                  d¬«      }t        j                  ||«       t        j                  |j                  dt         j                  «      |«       |j                  t         j                  d«      }|j                  d¬«      }t        j                  ||«       t        j                  |j                  dt         j                  «      |«       y )	Nr$   r)   r*   r+   r%   iîÿÿÿr,   rÍ   )	r   r   r5   r6   r7   r1   r4   r2   r3   )r8   r:   r=   r>   r?   s        r   Útest_replace_mixedz'TestDataFrameReplace.test_replace_mixedG  s  € ð  ˆÜ35·6±6ˆ�‰��"��b—j‘j×(Ñ(¨Ó/Ð/Ñ0Ü13·±ˆ�‰�‘�b—j‘j×(Ñ(¨Ó-Ð-Ñ.à#×+Ñ+¬B¯F©F°CÓ8ˆØ%×,Ñ,°3Ð,Ó7ˆÜ
×Ñ˜f hÔ/Ü
×Ñ˜fŸn™n¨S´"·&±&Ó9Ð;MÔNà#×+Ñ+¬B¯F©F°DÓ9ˆØ%×,Ñ,°4Ð,Ó8ˆÜ
×Ñ˜f hÔ/Ü
×Ñ˜fŸn™n¨T´2·6±6Ó:Ð<NÕOr   c                óP  — t        t        ddgd¬«      t        ddgd¬«      dœ«      }t        t        ddgd¬«      t        d	dgd¬«      dœ«      }|j                  dd	«      }t        j                  ||«       |j                  dd	d
¬«      }|�J ‚t        j                  ||«       y )Nrî   rê   Úfloat64rƒ   r   r•   rö   ©r%   rÎ   rí   Tr'   ©r   r   r1   r2   r3   )r8   r\   r?   r>   r<   s        r   Ú&test_replace_mixed_int_block_upcastingz;TestDataFrameReplace.test_replace_mixed_int_block_upcastingY  s¬   € ää˜S #˜J¨iÔ8Ü˜Q ˜F¨'Ô2ñó
ˆô ä˜S #˜J¨iÔ8Ü˜S !˜H¨IÔ6ñó
ˆð —‘˜A˜sÓ#ˆÜ
×Ñ˜f hÔ/à—z‘z ! S°$�zÓ7ˆØÐ#Ð#Ð#Ü
×Ñ˜b (Õ+r   c                ó,  — t        t        ddgd¬«      t        ddgd¬«      t        ddgd¬«      d	œ«      }t        t        ddgd¬«      t        d
dgd¬«      t        ddgd¬«      d	œ«      }|j                  dd
«      }t        j                  ||«       y )Nrî   rê   rÿ   rƒ   r   r•   rö   r’   ©r%   rÎ   ÚCrí   r  ©r8   r\   r?   r>   s       r   Ú&test_replace_mixed_int_block_splittingz;TestDataFrameReplace.test_replace_mixed_int_block_splittingn  s˜   € ää˜S #˜J¨iÔ8Ü˜Q ˜F¨'Ô2Ü˜Q ˜F¨'Ô2ñó
ˆô ä˜S #˜J¨iÔ8Ü˜S !˜H¨IÔ6Ü˜Q ˜F¨'Ô2ñó
ˆð —‘˜A˜sÓ#ˆÜ
×Ñ˜f hÕ/r   c                ó*  — t        t        ddgd¬«      t        ddgd¬«      dœ«      }t        t        dd	gd
¬«      t        ddgd¬«      dœ«      }|j                  dd	«      }t        j                  ||«       t        t        d	dg«      t        dd	gd
¬«      dœ«      }|r;t        j
                  t        d¬«      5  |j                  ddgd	dg«      }d d d «       n|j                  ddgd	dg«      }t        j                  ||«       y # 1 sw Y   Œ xY w)Nrî   rê   rÿ   rƒ   r   r•   rö   r   r*   r…   r’   ró   r†   r‡   )r   r   r1   r2   r3   rŠ   r‹   )r8   r�   r\   r?   r>   s        r   Útest_replace_mixed2z(TestDataFrameReplace.test_replace_mixed2�  s  € ää˜S #˜J¨iÔ8Ü˜Q ˜F¨'Ô2ñó
ˆô ä˜Q ˜J¨hÔ7Ü˜Q ˜F¨'Ô2ñó
ˆð —‘˜A˜uÓ%ˆÜ
×Ñ˜f hÔ/ää˜U E˜NÓ+Ü˜Q ˜J¨hÔ7ñó
ˆñ Ü×+Ñ+¬MÀÔOñ <ØŸ™ Q¨ F¨U°E¨NÓ;�÷<ð <ð —Z‘Z  A ¨°¨Ó7ˆFÜ
×Ñ˜f hÕ/÷	<ð <ús   Â<D	Ä	Dc                óª  — t        t        ddgd¬«      t        ddgd¬«      dœ«      }|j                  d|j                  «       j	                  «       «      }|j                  «       j                  d«      }|j                  «       }|j                  d   |j                  d<   |j                  d   |j                  d	<   t        j                  ||«       y )
NrC   r   rö   rƒ   r   rÿ   ©r   r   r•   )r•   r•   )
r   r   r1   rï   Úto_dictr0   Úastyper5   r2   r3   )r8   r\   r>   r?   rù   s        r   Útest_replace_mixed3z(TestDataFrameReplace.test_replace_mixed3Ÿ  s¨   € äÜ˜!˜Q˜ wÔ/´f¸aÀ¸VÈ7Ô6SÑTó
ˆð —‘˜A˜rŸw™w›y×0Ñ0Ó2Ó3ˆØ—7‘7“9×#Ñ# IÓ.ˆØ�G‰G‹IˆØŸf™f Q™iˆ�‰�dÑØŸf™f Q™iˆ�‰�dÑÜ
×Ñ˜f hÕ/r   c                óî   — t        dddt        j                  gg d¢dœ«      }|d   j                  d«      |d<   |j	                  dt        j                  «      }t        j                  |d   |d   «       y )	Nr•   r’   rC   )ÚsomeÚstringsÚhereÚher   r   ÚInt64r¨   )r   r   r   r  r1   r2   rø   ©r8   r\   rm   s      r   Ú1test_replace_nullable_int_with_string_doesnt_castzFTestDataFrameReplace.test_replace_nullable_int_with_string_doesnt_cast«  sa   € ä˜a  A¤r§v¡vÐ.Ò5VÑWÓXˆØ�S‘'—.‘. Ó)ˆˆ3‰à�j‰j˜œRŸV™VÓ$ˆÜ
×Ñ˜s 3™x¨¨C©Õ1r   r„   )Úbooleanr  ÚFloat64c                ó²   — t        g d¢|¬«      }t        g d¢|dœ«      }|j                  dd«      }t        g d¢|dœ«      }t        j                  ||«       y )N)r•   r   r•   rƒ   )r%   rÎ   Úxr   r  ÚX)r%   rÎ   r  ©r   r   r1   r2   r3   )r8   r„   Únullable_serr\   r>   r?   s         r   Ú!test_replace_with_nullable_columnz6TestDataFrameReplace.test_replace_with_nullable_column³  sN   € ô ši¨uÔ5ˆÜš_°<Ñ@ÓAˆØ—‘˜C Ó%ˆÜ¢?¸ÑFÓGˆÜ
×Ñ˜f hÕ/r   c                óü   — t        dt        dd«      i«      }t        dg d¢i«      }|j                  ddddœi«      }t        j                  ||«       |j                  dddœ«      }t        j                  ||«       y )NrÞ   r•   r$   ©r   r’   rC   r   r   r   )r•   r   ©r   r   r1   r2   r3   r  s       r   Útest_replace_simple_nested_dictz4TestDataFrameReplace.test_replace_simple_nested_dict¼  st   € Ü˜œu Q¨›{Ð+Ó,ˆÜ˜eÒ%5Ð6Ó7ˆà—‘˜U¨°Ñ$4Ð5Ó6ˆÜ
×Ñ˜h¨Ô/ð —‘ ¨Ñ,Ó-ˆÜ
×Ñ˜h¨Õ/r   c                ó   — t        dt        dd«      i«      }t        dg d¢i«      }|j                  ddddœ«      }t        j                  ||«       |j                  dddddœi«      }t        j                  ||«       y )	NrÞ   r•   r$   r   rÑ   r   r   )éÿÿÿÿr•   r   r!  r  s       r   Ú6test_replace_simple_nested_dict_with_nonexistent_valuezKTestDataFrameReplace.test_replace_simple_nested_dict_with_nonexistent_valueÇ  sv   € Ü˜œu Q¨›{Ð+Ó,ˆÜ˜eÒ%5Ð6Ó7ˆà—‘ ¨°Ñ5Ó6ˆÜ
×Ñ˜h¨Ô/à—‘˜U¨°¸Ñ$=Ð>Ó?ˆÜ
×Ñ˜h¨Õ/r   c                óÜ   — t        ddd gi«      j                  ddi«      }|j                  t        j                  d i«      }t        ddd git
        ¬«      }t        j                  ||«       y )Nr-   é*   r  rƒ   )r   r  r1   rÔ   ÚNAr…   r2   r3   ©r8   r\   r>   r?   s       r   Útest_replace_NA_with_Nonez.TestDataFrameReplace.test_replace_NA_with_NoneÑ  s`   € ä˜ " d Ð,Ó-×4Ñ4°g¸wÐ5GÓHˆØ—‘œRŸU™U D˜MÓ*ˆÜ˜g¨¨D zÐ2¼&ÔAˆÜ
×Ñ˜f hÕ/r   c                óþ   — t        t        j                  t        j                  g«      }|j                  t        j                  d t        j
                  d i«      }t        d d g«      }t        j                  ||«       y ©N)r   rÔ   ÚNaTr1   r   r   r2   r3   r)  s       r   Útest_replace_NAT_with_Nonez/TestDataFrameReplace.test_replace_NAT_with_NoneØ  sV   € äœŸ™¤§¡Ð'Ó(ˆØ—‘œRŸV™V T¬2¯6©6°4Ð8Ó9ˆÜ˜d D˜\Ó*ˆÜ
×Ñ˜f hÕ/r   c                óà   — t        g d¢d¬«      }t        t        g d¢d¬«      |dœ«      }|j                  dd i«      }t        t        g d¢d	¬«      |dœ«      }t        j                  ||«       y )
N)r   r   r   r   Úcategoryrƒ   )r$   r   rC   r’   rÿ   )ÚidrÞ   rC   )ç      @g      @Nrê   r…   r  )r8   Ú
cat_seriesr\   r>   r?   s        r   Ú(test_replace_with_None_keeps_categoricalz=TestDataFrameReplace.test_replace_with_None_keeps_categoricalß  sn   € äÒ0¸
ÔCˆ
Üäš\°Ô;Ø!ñó
ˆð —‘˜Q ˜IÓ&ˆääÒ2¸(ÔCØ!ñó
ˆô 	×Ñ˜f hÕ/r   c                ó„  — |j                   d   }|j                   d   }t        j                  |j                   d<   d|j                   d<   |j                  t        j                  di¬«      }|j                  j                  t        j                  di¬«      j                  }t        j                  ||«       |j                  t        j                  dddi¬«      }|j                  «       }d|j                   d<   d|j                   d<   |}t        j                  ||«       ||j                   d<   ||j                   d<   y )Nr  ©r•   r   r•   r   ©rZ   rÍ   )r5   r   r   r1   r‘   r2   r3   r0   )r8   r9   Ú
orig_valueÚorig2r>   r?   r;   s          r   Útest_replace_value_is_nonez/TestDataFrameReplace.test_replace_value_is_noneò  s  € Ø#×(Ñ(¨Ñ.ˆ
Ø×#Ñ# DÑ)ˆä$&§F¡Fˆ×Ñ˜DÑ!Ø$%ˆ×Ñ˜DÑ!à×'Ñ'´B·F±F¸A°;Ð'Ó?ˆØ!×#Ñ#×+Ñ+¼¿¹À°{Ð+ÓC×EÑEˆÜ
×Ñ˜f hÔ/à×'Ñ'´B·F±F¸A¸qÀ$Ð3GÐ'ÓHˆØ ×%Ñ%Ó'ˆØˆ�‰�TÑØ!ˆ�‰�TÑØˆÜ
×Ñ˜h¨Ô/Ø$.ˆ×Ñ˜DÑ!Ø$)ˆ×Ñ˜DÒ!r   c                óÜ  — |j                  «       j                  t        j                  «      }t        j                  |j
                  |j                  d d df<   t        j                  |j
                  |j                  dd  df<   |j                  t        j                  d«      }t        j                  ||j                  d«      «       t        j                  |j                  dt        j                  «      |«       t        j                  |j
                  |j                  d d df<   t        j                  |j
                  |j                  dd  df<   t        j                  |j
                  |j                  d d df<   d}t        j                  t        |¬«      5  |j                  d¬	«      }t        j                  ||j                  d¬	«      «       d d d «       y # 1 sw Y   y xY w)
Nr$   r%   r&   rÍ   rÎ   z,DataFrame.fillna with 'method' is deprecatedr‡   Úbfill)Úmethod)r0   r  r   Úfloat32r   r.   r/   r1   r2   r3   r4   rŠ   r‹   )r8   r9   r;   rÖ   r—   r>   s         r   Útest_replace_for_new_dtypesz0TestDataFrameReplace.test_replace_for_new_dtypes  sp  € à ×%Ñ%Ó'×.Ñ.¬r¯z©zÓ:ˆÜ.0¯f©fˆ�‰�G—M‘M " 1Ð% sÐ*Ñ+Ü/1¯v©vˆ�‰�G—M‘M " #Ð&¨Ð+Ñ,à—o‘o¤b§f¡f¨dÓ3ˆÜ
×Ñ˜k¨7¯>©>¸$Ó+?Ô@Ü
×Ñ˜k×1Ñ1°$¼¿¹Ó?ÀÔIä.0¯f©fˆ�‰�G—M‘M " 1Ð% sÐ*Ñ+Ü/1¯v©vˆ�‰�G—M‘M " #Ð&¨Ð+Ñ,Ü.0¯f©fˆ�‰�G—M‘M " 1Ð% sÐ*Ñ+Ø<ˆÜ×'Ñ'¬¸SÔAñ 	Jà—^‘^¨7�^Ó3ˆFÜ×!Ñ! &¨'¯.©.À¨.Ó*HÔI÷	J÷ 	Jñ 	Jús   Æ 9G"Ç"G+z"frame, to_replace, value, expectedÚints©r•   r’   rC   r•   r   )r   r’   rC   rƒ   Úbools©TFT)TTTÚcomplex)ù              ð?ù               @ù              @rE  )y                rF  rG  Ú
datetime64iâ  r$   é   rÐ   iÉ  é   r)   r*   )ÚdtÚstrró   rK  éh  é
   iä  Ú20130101ú
US/Eastern©ÚperiodsÚtzr’   r   Ú20130102©rS  Ú20130104Ú20130103Únsrî   rê   r2  c                óþ   — d }t        |t        «      r|j                  dk(  rt        }d}t	        j
                  ||¬«      5  |j                  ||«      }d d d «       t	        j                  |«       y # 1 sw Y   Œ xY w)NrM  rõ   r‡   )rÀ   r   Úyearr‹   r2   rŠ   r1   r3   )r8   ÚframerZ   r-   r?   Úwarnr—   r>   s           r   Útest_replace_dtypesz(TestDataFrameReplace.test_replace_dtypes  sn   € ðX ˆÜ�j¤(Ô+°
·±À4Ò0GÜ ˆDØ2ˆÜ×'Ñ'¨°CÔ8ñ 	6Ø—]‘] :¨uÓ5ˆF÷	6ä
×Ñ˜f hÕ/÷	6ð 	6ús   ÁA3Á3A<c           
     ó>  — t         j                  dddœ}ddddœ}t        t         j                  dt         j                  gg d¢g d¢dœ«      }|j	                  ||«      }|j                  «       D ��ci c]  \  }}||j	                  ||   ||   «      “Œ  }}}t        j                  |t        |«      «       |j	                  g d¢g d¢«      }t        t         j                  d	t         j                  gg d¢g d¢dœ«      }t        j                  ||«       ddddœ}t        t         j                  dt         j                  gg d¢g d¢dœ«      }|j	                  t         j                  |«      }|j                  «       D ��ci c])  \  }}||j	                  t         j                  ||   «      “Œ+ }}}t        j                  |t        |«      «       t         j                  ddg}g d
¢}|j	                  ||«      }|j                  «       }t        ||«      D ]  \  }	}
|j	                  |	|
d¬«      }|€ŒJ ‚ t        j                  ||«       d}t        j                  t        |¬«      5  |j	                  ||dd  «       d d d «       y c c}}w c c}}w # 1 sw Y   y xY w)Nr   r¨   r  r$  Úmissing©r   r’   r$   ©r¨   ÚasdfÚfd)r$   r’   r   r$   )éþÿÿÿr$  r_  Tr'   z:Replacement lists must match in length\. Expecting 3 got 2r‡   r•   )r   r   r   Úinfr1   Úitemsr2   r3   r0   ÚziprÃ   rã   rä   )r8   Úto_repr[   r\   ÚfilledÚkÚvr?   r>   rú   r-   r<   r—   s                r   Ú#test_replace_input_formats_listlikez8TestDataFrameReplace.test_replace_input_formats_listlike�  sC  € ä—v‘v A¨BÑ/ˆØ˜r¨	Ñ2ˆÜÜ—6‘6˜1œbŸf™fÐ%ªIÒ<NÑOó
ˆð —‘˜F FÓ+ˆØCEÇ8Á8Ã:×N¹4¸1¸a�A�q—y‘y ¨¡¨F°1©IÓ6Ñ6ÐNˆÑNÜ
×Ñ˜f¤i°Ó&9Ô:à—‘šI¢yÓ1ˆÜÜ—6‘6˜1œbŸf™fÐ%ªIÒ<NÑOó
ˆô 	×Ñ˜f hÔ/ð ˜r¨	Ñ2ˆÜÜ—6‘6˜1œbŸf™fÐ%ªIÒ<NÑOó
ˆð —‘œBŸF™F FÓ+ˆØ@BÇÁÃ
×K¹¸¸1�A�q—y‘y¤§¡¨°©Ó3Ñ3ÐKˆÑKÜ
×Ñ˜f¤i°Ó&9Ô:ô —&‘&˜!˜R�ˆÚ$ˆØ—‘˜F FÓ+ˆØ—7‘7“9ˆÜ˜f fÓ-ò 	(‰JˆC�Ø#×+Ñ+¨C°ÀÐ+ÓEˆLØÑ'Ð'Ð'ð	(ô 	×Ñ˜f hÔ/àKˆÜ�]‰]œ:¨SÔ1ñ 	+Ø�J‰J�v˜v a b˜zÔ*÷	+ð 	+ùó; Oùó L÷	+ð 	+ús   Á2#JÆ .JÉ(JÊJc           	     óè  — t        t        j                  dt        j                  gg d¢g d¢dœ«      }t        j                  dddœ}|j	                  |d«      }|j                  «       D ��ci c]  \  }}||j	                  ||   d«      “Œ }}}t        j                  |t        |«      «       d}t        j                  t        |¬«      5  |j	                  |t        j                  ddg«       d d d «       t        j                  ddg}|j	                  |d«      }|j                  «       }|D ]  }	|j	                  |	dd	¬
«      }
|
€ŒJ ‚ t        j                  ||«       y c c}}w # 1 sw Y   ŒzxY w)Nr   r`  ra  r  r¨   z.value argument must be scalar, dict, or Seriesr‡   r$  Tr'   )r   r   r   re  r1   rf  r2   r3   rÃ   rã   Ú	TypeErrorr0   )r8   r\   rh  ri  rj  rk  r?   r—   r>   rú   r<   s              r   Ú!test_replace_input_formats_scalarz6TestDataFrameReplace.test_replace_input_formats_scalarµ  sF  € ô Ü—6‘6˜1œbŸf™fÐ%ªIÒ<NÑOó
ˆô
 —v‘v A¨BÑ/ˆØ—‘˜F AÓ&ˆØ;=¿8¹8»:×F±4°1°a�A�q—y‘y ¨¡¨AÓ.Ñ.ÐFˆÑFÜ
×Ñ˜f¤i°Ó&9Ô:à>ˆÜ�]‰]œ9¨CÔ0ñ 	0Ø�J‰J�v¤§¡¨¨2˜Ô/÷	0ô —&‘&˜!˜R�ˆØ—‘˜F BÓ'ˆØ—7‘7“9ˆØò 	(ˆCØ#×+Ñ+¨C°¸TÐ+ÓBˆLØÑ'Ð'Ð'ð	(ô 	×Ñ˜f hÕ/ùó G÷	0ð 	0ús   Á, E"Ã$E(Å(E1c                 ó   — y r,  r   )r8   s    r   Útest_replace_limitz'TestDataFrameReplace.test_replace_limitÐ  s   € àr   c                ó
  — t        ddddddœ«      }ddd	d
ddœ}t        d
dd	dddœ«      }d}t        j                  t        |¬«      5  |j	                  |«      }d d d «       t        j
                  |«       y # 1 sw Y   Œ xY w©NúStrongly AgreeÚAgreeÚNeutralÚDisagreeúStrongly Disagree)r   r•   r’   rC   r   r   r’   rC   r$   r•   )ru  rw  rv  rt  rx  rõ   r‡   ©r   r2   rŠ   r‹   r1   rø   ©r8   ÚanswerÚweightsr?   r—   r>   s         r   Útest_replace_dict_no_regexz/TestDataFrameReplace.test_replace_dict_no_regexÔ  s™   € ô à#ØØØØ&ñó
ˆð ØØØØ!"ñ
ˆô ˜a A¨!°°aÑ8Ó9ˆØ2ˆÜ×'Ñ'¬¸SÔAñ 	-Ø—^‘^ GÓ,ˆF÷	-ä
×Ñ˜v xÕ0÷	-ð 	-ús   ÁA9Á9Bc                ó  — t        ddddddœ«      }t        ddd	d
ddœ«      }t        d
dd	dddœ«      }d}t        j                  t        |¬«      5  |j	                  |«      }d d d «       t        j
                  |«       y # 1 sw Y   Œ xY wrs  ry  rz  s         r   Útest_replace_series_no_regexz1TestDataFrameReplace.test_replace_series_no_regexî  s¡   € ô à#ØØØØ&ñó
ˆô àØØØ"#Ø%&ñó
ˆô ˜a A¨!°°aÑ8Ó9ˆØ2ˆÜ×'Ñ'¬¸SÔAñ 	-Ø—^‘^ GÓ,ˆF÷	-ä
×Ñ˜v xÕ0÷	-ð 	-ús   ÁBÂBc                ó¼  — t        dt        j                  dgi«      }|j                  t        j                  dddi¬«      }|j                  dt        j                  fddg¬«      }|j                  dt        j                  gddg¬«      }t        dddgi«      }t	        j
                  ||«       t	        j
                  ||«       t	        j
                  ||«       y )Nr%   r•   r   rÍ   r7  ©rZ   r-   )r   r   r   r1   r2   r3   )r8   r\   Úres1rx   r|   r?   s         r   Ú6test_replace_dict_tuple_list_ordering_remains_the_samezKTestDataFrameReplace.test_replace_dict_tuple_list_ordering_remains_the_same
  sµ   € Ü˜œbŸf™f a˜[Ð)Ó*ˆØ�z‰z¤b§f¡f¨a°°DÐ%9ˆzÓ:ˆØ�z‰z a¬¯© [¸¸q¸	ˆzÓBˆØ�z‰z a¬¯© [¸¸q¸	ˆzÓBˆä˜c A t 9Ð-Ó.ˆÜ
×Ñ˜d DÔ)Ü
×Ñ˜d DÔ)Ü
×Ñ˜d HÕ-r   c                ó†   — t        g d¢g d¢g d¢g d¢dœ«      }|j                  ddi«      }t        j                  ||«       y )N)r•   r’   r’   rC   )Ú0Úvrr…  r…  )r…  r…  r…  Úbt)Úvor…  r…  r…  )ÚfolÚT_oppÚT_DirÚT_Enhz\Dr•   r·   r  s      r   Ú)test_replace_doesnt_replace_without_regexz>TestDataFrameReplace.test_replace_doesnt_replace_without_regex  sA   € Üâ#Ú.Ú.Ú.ñ	ó
ˆð �j‰j˜% ˜Ó$ˆÜ
×Ñ˜b #Õ&r   c                óº   — t        ddgt        d«      dœ«      }|j                  dd«      }t        ddg|j                  dœ«      }t	        j
                  ||«       y )NTFÚabr   r   )r   r   r1   r   r2   r3   r)  s       r   Útest_replace_bool_with_stringz2TestDataFrameReplace.test_replace_bool_with_string!  sP   € Ü˜d E˜]´°d³Ñ<Ó=ˆØ—‘˜D #Ó&ˆÜ C¨ <°b·d±dÑ;Ó<ˆÜ
×Ñ˜f hÕ/r   c                óÈ   — t        t        j                  j                  d«      j                  d«      dkD  «      }|j	                  dd«      }t        j                  ||«       y )Nr’   ©r’   r’   rí   rb  Úfdsa)r   r   ÚrandomÚdefault_rngr1   r2   r3   ©r8   r\   r>   s      r   Ú(test_replace_pure_bool_with_string_no_opz=TestDataFrameReplace.test_replace_pure_bool_with_string_no_op'  sK   € Ü”r—y‘y×,Ñ,¨QÓ/×6Ñ6°vÓ>ÀÑDÓEˆØ—‘˜F FÓ+ˆÜ
×Ñ˜b &Õ)r   c                ó  — t        t        j                  j                  d«      j                  d«      dkD  «      }|j	                  dd«      }t        t        j
                  dt        ¬«      «      }t        j                  ||«       y )Nr’   r’  rí   FTrƒ   )	r   r   r”  r•  r1   ÚonesÚboolr2   r3   r)  s       r   Útest_replace_bool_with_boolz0TestDataFrameReplace.test_replace_bool_with_bool,  s`   € Ü”r—y‘y×,Ñ,¨QÓ/×6Ñ6°vÓ>ÀÑDÓEˆØ—‘˜E 4Ó(ˆÜœRŸW™W V´4Ô8Ó9ˆÜ
×Ñ˜f hÕ/r   c                ó    — t        ddgddgdœ«      }|j                  dddœ«      }t        ddgddgdœ«      }t        j                  ||«       y )NTF©r   r•   ÚasdbÚyes)rb  Tr·   r)  s       r   Ú%test_replace_with_dict_with_bool_keysz:TestDataFrameReplace.test_replace_with_dict_with_bool_keys2  sS   € Ü˜D %˜=¨e°T¨]Ñ;Ó<ˆØ—‘ V°5Ñ9Ó:ˆÜ %¨ °U¸E°NÑCÓDˆÜ
×Ñ˜f hÕ/r   c                óØ   — t        ddgddgdœ«      }|j                  ddi«      }t        j                  ||«       |d   j                  ddi«      }t        j                  ||d   «       y )	Nr•   r’   rC   r   )ÚY0ÚY1Úreplace_stringÚtestr¢  )r   r1   r2   r3   rø   r–  s      r   Ú!test_replace_dict_strings_vs_intsz6TestDataFrameReplace.test_replace_dict_strings_vs_ints8  sk   € ä˜q !˜f¨Q°¨FÑ3Ó4ˆØ—‘Ð-¨vÐ6Ó7ˆä
×Ñ˜f bÔ)à�D‘×!Ñ!Ð#3°VÐ"<Ó=ˆÜ
×Ñ˜v r¨$¡xÕ0r   c                óÐ   — t        dddgi«      }|j                  t        j                  t        j                   gt        j                  «      }|}t        j                  ||«       y )Nr   T)r   r1   r   re  r   r2   r3   )r8   r\   ÚrrP   s       r   Útest_replace_truthyz(TestDataFrameReplace.test_replace_truthyB  sM   € Ü˜˜d D˜\Ð*Ó+ˆØ�J‰JœŸ™¤§¡ Ð(¬"¯&©&Ó1ˆØˆÜ
×Ñ˜a Õ#r   c                óT  — t        dt        t        dd«      «      i«      }|j                  dt	        t        t        dd«      t        dd«      «      «      i«      }|j                  t	        t        t        dd«      t        dd«      «      «      «      }t        j                  ||«       y )Nr   r•   r$   r’   é   )r   r   r   r1   Údictrg  r2   r3   r)  s       r   Ú-test_nested_dict_overlapping_keys_replace_intzBTestDataFrameReplace.test_nested_dict_overlapping_keys_replace_intH  s   € ô ˜œT¤%¨¨1£+Ó.Ð/Ó0ˆà—‘˜S¤$¤s¬5°°A«;¼¸aÀ»Ó'DÓ"EÐFÓGˆØ—:‘:œd¤3¤u¨Q°£{´E¸!¸Q³KÓ#@ÓAÓBˆÜ
×Ñ˜f hÕ/r   c           	     ó†  — t        j                  dd«      }|j                  t        «      }t        j                  dd«      j                  t        «      }t	        d|i«      }|j                  t        t        ||«      «      «      }|j                  dt        t        ||«      «      i«      }t        j                  ||«       y )Nr•   r$   r’   r«  r   )
r   Úaranger  rL  r   r1   r¬  rg  r2   r3   )r8   r   ÚastrÚbstrr\   r>   r?   s          r   Ú-test_nested_dict_overlapping_keys_replace_strzBTestDataFrameReplace.test_nested_dict_overlapping_keys_replace_strQ  s�   € ä�I‰I�a˜‹OˆØ�x‰xœ‹}ˆÜ�y‰y˜˜A‹×%Ñ%¤cÓ*ˆÜ˜˜T�{Ó#ˆØ—‘œD¤ T¨4£Ó1Ó2ˆØ—:‘:˜s¤D¬¨T°4«Ó$9Ð:Ó;ˆÜ
×Ñ˜f hÕ/r   c                ó,  — t        dg d¢i«      }|j                  ddddœi«      }t        dg d¢i«      }t        j                  ||«       t        dg d¢i«      }|j                  ddddœi«      }t        dg d¢i«      }t        j                  ||«       y )	Nr   rC  ÚYÚN)TF)r´  rµ  r´  )r   r•   r   r�  r·   )r8   r�   r\   rm   Úexpects        r   Útest_replace_swapping_bugz.TestDataFrameReplace.test_replace_swapping_bug[  s‘   € ô ˜Ò0Ð1Ó2ˆØ�j‰j˜# c°#Ñ6Ð7Ó8ˆÜ˜C¢Ð1Ó2ˆÜ
×Ñ˜c 6Ô*ä˜šYÐ'Ó(ˆØ�j‰j˜# 3¨3Ñ/Ð0Ó1ˆÜ˜C¢Ð1Ó2ˆÜ
×Ñ˜c 6Õ*r   c                óN  — dt        j                  ddd¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  dd	d¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  d
dd¬«      dœi}t        g d¢dg¬«      }t        |j                  j
                  «      t        |d   j                  «       «      k(  sJ ‚t        d|j                  j
                  D �cg c]
  }|d   |   ‘Œ c}i«      }|j                  j                  d   dk(  sJ ‚d}t        j                  t        |¬«      5  |j                  |«      }d d d «       t        j                  |«       y c c}w # 1 sw Y   Œ%xY w)NÚfnameiÛ  é   ÚM)rZ  ÚmonthÚfreqr•   iÜ  r$   r   iÝ  é	   ©úout_augmented_AUG_2011.jsonúout_augmented_JAN_2011.jsonúout_augmented_MAY_2012.jsonúout_augmented_SUBSIDY_WEEK.jsonúout_augmented_AUG_2012.jsonúout_augmented_MAY_2011.jsonúout_augmented_SEP_2013.json©rÄ  rÆ  rÃ  rÂ  rÅ  rÀ  rÁ  ©r6   r   z	Period[M]rõ   r‡   )rÔ   ÚPeriodr   Úsetr¹  r[   Úkeysr÷   r5   r2   rŠ   r‹   r1   r3   ©r8   r   r\   rj  r?   r—   r>   s          r   Útest_replace_periodz(TestDataFrameReplace.test_replace_periodi  sg  € ð
 Ü/1¯y©y¸dÈ!ÐRUÔ/VÜ/1¯y©y¸dÈ!ÐRUÔ/VÜ/1¯y©y¸dÈ!ÐRUÔ/VÜ35·9±9Ø Q¨Sô4ô 02¯y©y¸dÈ!ÐRUÔ/VÜ/1¯y©y¸dÈ!ÐRUÔ/VÜ/1¯y©y¸dÈ!ÐRUÔ/Vñ
ð
ˆô òð �Iô
ˆô �2—8‘8—?‘?Ó#¤s¨1¨W©:¯?©?Ó+<Ó'=Ò=Ð=Ð=ä˜g¸r¿x¹x¿¹Ö'O¸!¨¨'©
°1«Ò'OÐPÓQˆØ�‰×#Ñ# AÑ&¨+Ò5Ð5Ð5Ø2ˆÜ×'Ñ'¬¸SÔAñ 	#Ø—Z‘Z “]ˆF÷	#ä
×Ñ˜f hÕ/ùò (P÷	#ð 	#ús   ÄF
Å%FÆF$c           
     ó\  — dt        d«      t        d«      t        d«      t        d«      t        d«      t        d«      t        d«      d	œi}t        g d
¢dg¬«      }t        |j                  j                  «      t        |d   j                  «       «      k(  sJ ‚t        d|j                  j                  D �cg c]
  }|d   |   ‘Œ c}i«      }d}t        j                  t        |¬«      5  |j                  |«      }d d d «       t        j                  |«       y c c}w # 1 sw Y   Œ%xY w)Nr¹  z2011-08z2011-01z2012-05z2011-04z2012-08z2011-05z2013-09r¿  rÇ  rÈ  rõ   r‡   )r	   r   rÊ  r¹  r[   rË  r2   rŠ   r‹   r1   r3   rÌ  s          r   Útest_replace_datetimez*TestDataFrameReplace.test_replace_datetime�  s  € ð
 Ü/8¸Ó/CÜ/8¸Ó/CÜ/8¸Ó/CÜ3<¸YÓ3GÜ/8¸Ó/CÜ/8¸Ó/CÜ/8¸Ó/Cñð

ˆô òð �Iô
ˆô �2—8‘8—?‘?Ó#¤s¨1¨W©:¯?©?Ó+<Ó'=Ò=Ð=Ð=Ü˜g¸r¿x¹x¿¹Ö'O¸!¨¨'©
°1«Ò'OÐPÓQˆØ2ˆÜ×'Ñ'¬¸SÔAñ 	#Ø—Z‘Z “]ˆF÷	#ä
×Ñ˜f hÕ/ùò	 (P÷	#ð 	#ús   Â8D
Ã,D"Ä"D+c                óˆ  — t        t        ddd¬«      dt        j                  dgdœ«      }|j	                  t        j                  d«      }t        t        ddd¬«      t        g d	¢d
¬«      dœ«      }t        j                  ||«       |j                  d«      }t        j                  ||«       |j	                  dt        j                  «      }t        t        ddd¬«      t        j                  t        j                  dgdœ«      }t        j                  ||«       |j	                  t        dd¬«      t        dd¬«      «      }t        t        dd¬«      t        dd¬«      t        dd¬«      gdt        j                  dgdœ«      }|d   j                  j                  d«      |d<   t        j                  ||«       |j                  «       }t        j                  |j                  d<   |j	                  dt        j                  it        dd¬«      «      }t        j                  ||«       |j                  «       }t        j                  |j                  d<   |j	                  dt        j                  it        dd¬«      «      }t        t        dd¬«      t        dd¬«      j!                  d«      t        dd¬«      gdt        j                  dgdœ«      }|d   j                  j                  d«      |d<   t        j                  ||«       |j                  «       }t        j                  |j                  d<   |j	                  dt        j                  it        d«      «      }t        t        dd¬«      t        d«      t        dd¬«      gdt        j                  dgdœ«      }t        j                  ||«       y )NrO  rC   rP  rQ  r   r’   r   r•   ©r   r•   r’   rÿ   rƒ   rT  rU  rV  rW  r%   rX  r6  z
US/Pacific)r   r
   r   r   r1   r   r2   r3   r4   r	   rK  Úas_unitr0   r5   rÔ   r-  Ú
tz_convertr)  s       r   Útest_replace_datetimetzz,TestDataFrameReplace.test_replace_datetimetz³  s  € ô ä 
°A¸,ÔGØœŸ™ �^ñó
ˆð —‘œBŸF™F AÓ&ˆÜä 
°A¸,ÔGÜšI¨YÔ7ñó
ˆô 	×Ñ˜f hÔ/à—‘˜1“ˆÜ
×Ñ˜f hÔ/à—‘˜AœrŸv™vÓ&ˆÜä 
°A¸,ÔGÜ—f‘fœbŸf™f aÐ(ñó
ˆô 	×Ñ˜f hÔ/à—‘Ü�j \Ô2Ü�j \Ô2ó
ˆô ô ˜j¨\Ô:Ü˜j¨\Ô:Ü˜j¨\Ô:ðð
 œŸ™ �^ñó	
ˆð ! ™×(Ñ(×0Ñ0°Ó6ˆ�‰Ü
×Ñ˜f hÔ/à—‘“ˆÜŸF™Fˆ�‰�DÑØ—‘ ¤b§f¡f ¬y¸ÈÔ/UÓVˆÜ
×Ñ˜f hÔ/ð —‘“ˆÜŸF™Fˆ�‰�DÑØ—‘ ¤b§f¡f ¬y¸ÈÔ/UÓVˆÜô ˜j¨\Ô:Ü˜j¨\Ô:×EÑEÀlÓSÜ˜j¨\Ô:ðð
 œŸ™ �^ñó	
ˆð ! ™×(Ñ(×0Ñ0°Ó6ˆ�‰Ü
×Ñ˜f hÔ/à—‘“ˆÜŸF™Fˆ�‰�DÑØ—‘ ¤b§f¡f ¬y¸Ó/DÓEˆÜô ˜j¨\Ô:Ü˜jÓ)Ü˜j¨\Ô:ðð
 œŸ™ �^ñó	
ˆô 	×Ñ˜f hÕ/r   c           	     óz  — t        |«      }t        j                  ||j                  i «      «       t        j                  ||j                  t	        g t
        ¬«      «      «       t        j                  ||j                  di i«      «       t        j                  ||j                  t	        di i«      «      «       y )Nrƒ   r   )r   r2   r3   r1   r   r…   )r8   r   r\   s      r   Ú test_replace_with_empty_dictlikez5TestDataFrameReplace.test_replace_with_empty_dictlike  sƒ   € ä�wÓˆÜ
×Ñ˜b "§*¡*¨R£.Ô1Ü
×Ñ˜b "§*¡*¬V°B¼fÔ-EÓ"FÔGä
×Ñ˜b "§*¡*¨c°2¨YÓ"7Ô8Ü
×Ñ˜b "§*¡*¬V°S¸"°IÓ->Ó"?Õ@r   zto_replace, method, expectedr<  )r•   r•   r’   r  rÑ  )r2  ç      @r×  ÚffillÚpad)r   r   r   )r•   r’   )r   r’   r’   )r   r   r   c                ó  — t        g d¢dt        j                  dgg d¢dœ«      }d}t        j                  t
        |¬«      5  |j                  |d |¬«      }d d d «       t        |«      }t        j                  |«       y # 1 sw Y   Œ+xY w)	NrÑ  r$   rÐ   r   r  z7The 'method' keyword in DataFrame.replace is deprecatedr‡   )rZ   r-   r=  )r   r   r   r2   rŠ   r‹   r1   r3   )r8   rZ   r=  r?   r\   r—   r>   s          r   Útest_replace_methodz(TestDataFrameReplace.test_replace_method  s|   € ôD šY¨a´·±¸¨^Â/ÑRÓSˆàGˆÜ×'Ñ'¬¸SÔAñ 	RØ—Z‘Z¨:¸TÈ&�ZÓQˆF÷	Rä˜XÓ&ˆÜ
×Ñ˜f hÕ/÷	Rð 	Rús   ÁBÂB
zreplace_dict, final_datac                ó  — t        ddgddggddgd¬«      }t        j                  |«      }t        j                  |d d …df   ddg¬	«      }|d   dk(  rddgnddg}t        j                  |d d …df   |¬	«      }t        ||d
œ«      }d}t        j                  t        |¬«      5  |j                  |d«      }	d d d «       t        j                  	|«       d}
t        j                  t        |
¬«      5  t        j                  ||«       d d d «       t        j                  t        |¬«      5  |j                  |dd¬«      }d d d «       �J ‚t        j                  ||«       y # 1 sw Y   Œ®xY w# 1 sw Y   ŒhxY w# 1 sw Y   Œ<xY w)Nr•   r’   r   r   r0  )r6   r„   r   rC   )Ú
categoriesr   z#with CategoricalDtype is deprecatedr‡   zHAttributes of DataFrame.iloc\[:, 0\] \(column name=\"a\"\) are differentTr'   )r   r   rš   rÔ   ÚCategoricalr2   rŠ   r‹   r1   r3   rÃ   rã   ÚAssertionError)r8   Úreplace_dictÚ
final_datar\   r   Úex_catr   r?   Úmsg2r>   r—   r<   s               r   Ú"test_categorical_replace_with_dictz7TestDataFrameReplace.test_categorical_replace_with_dict:  su  € ô ˜˜A˜  A Ð'°#°s°À:ÔNˆä—X‘X˜jÓ)ˆ
ä�N‰N˜:¢a¨ dÑ+¸¸A¸Ô?ˆà'¨Ñ,°Ò1�!�Q‘¸¸1°vˆÜ�N‰N˜:¢a¨ dÑ+¸Ô?ˆä 1¨1Ñ-Ó.ˆØ4ˆÜ×'Ñ'¬¸TÔBñ 	1Ø—Z‘Z ¨aÓ0ˆF÷	1ä
×Ñ˜f hÔ/ðð 	ô �]‰]œ>°Ô5ñ 	0ä×!Ñ! " hÔ/÷	0ô ×'Ñ'¬¸TÔBñ 	EØŸ:™: l°A¸t˜:ÓDˆL÷	EàÐ#Ð#Ð#Ü
×Ñ˜b (Õ+÷	1ð 	1ú÷	0ð 	0ú÷	Eð 	Eús$   Â%E%Ã3E1Ä-E=Å%E.Å1E:Å=Fzdf, to_replace, exp©r   r$   r«  )r­   r®   r«  )r$   r«  rÐ   )Ú4Ú5Ú6rç  rè  Ú7)rç  rè  ré  c                ó~   — t        |«      }t        |«      }|j                  |«      }t        j                  ||«       y r,  r·   )r8   r\   rZ   Úexpr?   r>   s         r   Útest_replace_commutativez-TestDataFrameReplace.test_replace_commutativeZ  s4   € ô( �r‹]ˆä˜S“>ˆØ—‘˜JÓ'ˆÜ
×Ñ˜f hÕ/r   ÚreplacerÚ20170827c                óì   — t        dg«      }d}t        j                  t        |¬«      5  |j	                  ||dœ«      }d d d «       t        |g«      }t        j
                  |«       y # 1 sw Y   Œ,xY w)Nr   rõ   r‡   r   r‰   )r8   rí  r\   r—   r>   r?   s         r   Útest_replace_replacer_dtypez0TestDataFrameReplace.test_replace_replacer_dtypet  sm   € ô ˜�uÓˆØ2ˆÜ×'Ñ'¬¸SÔAñ 	@Ø—Z‘Z h°XÑ >Ó?ˆF÷	@ä˜h˜ZÓ(ˆÜ
×Ñ˜f hÕ/÷	@ð 	@ús   ªA*Á*A3c                ó˜   — t        dg d¢id¬«      }|j                  dd«      }t        dg d¢id¬«      }t        j                  ||«       y )NÚgrp)r•   r’   rC   r   r$   r  rƒ   r•   rN  )rN  r’   rC   r   r$   r·   r)  s       r   Ú!test_replace_after_convert_dtypesz6TestDataFrameReplace.test_replace_after_convert_dtypesŠ  sE   € ä˜šÐ/°wÔ?ˆØ—‘˜A˜rÓ"ˆÜ˜eÒ%5Ð6¸gÔFˆÜ
×Ñ˜f hÕ/r   c                ó  — t        g d¢g d¢dœ«      }d}d}t        j                  t        |¬«      5  t	        j
                  t        |¬«      5  |j                  d„ «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)N)r   zb r   )zd ze zf )rì   ÚtwozZExpecting 'to_replace' to be either a scalar, array-like, dict or None, got invalid type.*zSDataFrame.replace without 'value' and with non-dict-like 'to_replace' is deprecatedr‡   c                ó"   — | j                  «       S r,  )Ústrip)r  s    r   ú<lambda>zFTestDataFrameReplace.test_replace_invalid_to_replace.<locals>.<lambda>Ÿ  s   €  Q§W¡W£Y€ r   )r   rÃ   rã   rn  r2   rŠ   r‹   r1   )r8   r\   r—   rã  s       r   Útest_replace_invalid_to_replacez4TestDataFrameReplace.test_replace_invalid_to_replace‘  s…   € ô Ò/Ò8JÑKÓLˆð0ð 	ð
)ð 	ô �]‰]œ9¨CÔ0ñ 	0Ü×+Ñ+¬MÀÔFñ 0Ø—
‘
Ñ.Ô/÷0÷	0ð 	0÷0ð 0ú÷	0ð 	0ús#   ²A>ÁA2Á!A>Á2A;	Á7A>Á>B)Úfloatrÿ   rö   r  r  r-   c                óÖ   — t        t        j                  d«      |¬«      }|j                  d t        j                   t        j                  g|¬«      }t        j                  ||«       y )Nr’   rƒ   r�  )r   r   Úeyer1   re  r2   r3   )r8   r„   r-   r\   r>   s        r   Ú"test_replace_no_replacement_dtypesz7TestDataFrameReplace.test_replace_no_replacement_dtypes¡  sK   € ô ”r—v‘v˜a“y¨Ô.ˆØ—‘¨¬r¯v©v¨g´r·v±vÐ'>Àe�ÓLˆÜ
×Ñ˜f bÕ)r   Úreplacementc                óö   — t        g d¢g d¢g d¢dœ«      }t        d«      |_        t        g d¢g d¢|ddgdœ«      }t        d«      |_        |d   j                  d	|«      |d<   t	        j
                  ||«       y )
NrA  rå  )rÐ   rº  r¾  )r%   ÚA1rÎ   ÚAABrº  r¾  rÎ   rÐ   )r   r   r6   r1   r2   r3   )r8   rþ  r>   r?   s       r   Ú#test_replace_with_duplicate_columnsz8TestDataFrameReplace.test_replace_with_duplicate_columns©  ss   € ô ¢²)Â)ÑLÓMˆÜ˜e›ˆŒäÚ¢9°KÀÀAÐ3FÑGó
ˆô   ›;ˆÔà˜S‘k×)Ñ)¨!¨[Ó9ˆˆs‰ä
×Ñ˜f hÕ/r   z2020-01c                óÂ   — t        d|gdz  i«      }t        j                  ||«      }|j                  «       }|j	                  dd«      }t        j
                  ||«       y )NÚPerrC   rî   ré   )r   r2   râ   r0   r1   rÆ   )r8   rÈ   r-   rÊ   r?   r>   s         r   Útest_replace_ea_ignore_floatz1TestDataFrameReplace.test_replace_ea_ignore_float¸  sR   € ô ˜  ¨!¡Ð,Ó-ˆÜ�j‰j˜˜oÓ.ˆà—8‘8“:ˆØ—‘˜S #Ó&ˆÜ
�‰˜ &Õ)r   c                óè  — g d¢g d¢g d¢g d¢g d¢dœ}t        |¬«      j                  ddd	œ«      }|d
   j                  j                  g d¢d¬«      |d
<   |d   j                  j                  g d¢d¬«      |d<   g d¢g d¢g d¢g d¢g d¢dœ}t        |¬«      j                  ddd	œ«      }|d
   j                  j                  g d¢d¬«      |d
<   |d   j                  j                  g d¢d¬«      |d<   d}t	        j
                  t        |¬«      5  |j                  dd«      }|j                  dd«      }|j                  dd«      }ddd«       t	        j                  |«       y# 1 sw Y   Œ xY w)zt
        Test for #23305: to ensure category dtypes are maintained
        after replace with direct values
        )r•   r’   rC   r   )r   r   r   r   )g      ø?g      @g      @g      @)Úcat1Úcat2Úcat3Úcat4)Úobj1Úobj2Úobj3Úobj4)r­   r®   r¯   Úcol4Úcol5©rÇ   r0  )r®   r  r®   T)Úorderedr  )r   r   r   Úz)r  ÚcatXr	  r
  )Úobj9r  r  r  úOThe behavior of Series\.replace \(and DataFrame.replace\) with CategoricalDtyper‡   r   r  r  r  r  r  N)	r   r  ÚcatÚreorder_categoriesr2   rŠ   r‹   r1   r3   ©r8   Ú
input_dictÚinput_dfÚexpected_dictr?   r—   r>   s          r   Ú test_replace_value_category_typez5TestDataFrameReplace.test_replace_value_category_typeÂ  s�  € ò !Ú(Ú(Ú4Ú4ñ
ˆ
ô  *Ô-×4Ñ4Ø¨Ñ4ó
ˆð $ FÑ+×/Ñ/×BÑBÚ ¨$ð Có 
ˆ�Ñð $ FÑ+×/Ñ/×BÑBÚ,°dð Có 
ˆ�Ñò !Ú(Ú(Ú4Ú4ñ
ˆô  -Ô0×7Ñ7Ø¨Ñ4ó
ˆð $ FÑ+×/Ñ/×BÑBÚ ¨$ð Có 
ˆ�Ñð $ FÑ+×/Ñ/×BÑBÚ,°dð Có 
ˆ�Ñð$ð 	ô ×'Ñ'¬¸SÔAñ 	6Ø×'Ñ'¨¨SÓ1ˆHØ×'Ñ'¨°Ó7ˆHØ×%Ñ% f¨fÓ5ˆF÷	6ô
 	×Ñ˜f hÕ/÷	6ð 	6ús   Ä7E(Å(E1c                ó^  — dgdgdgdœ}t        |¬«      j                  ddddœ«      }dgdgd	gdœ}t        |¬«      j                  ddddœ«      }d
}t        j                  t        |¬«      5  |j                  ddd	dœ«      }ddd«       t        j                  |«       y# 1 sw Y   Œ xY w)zf
        Test to ensure category dtypes are maintained
        after replace with dict values
        r   r  r  r¬   r  r0  r  r  r  r  r‡   )r   r  r  N)r   r  r2   rŠ   r‹   r1   r3   r  s          r   Útest_replace_dict_category_typez4TestDataFrameReplace.test_replace_dict_category_typeú  sÆ   € ð  #˜e¨f¨XÀ¸xÑHˆ
ä *Ô-×4Ñ4Ø¨¸ZÑHó
ˆð
 #& °°À6À(ÑKˆä -Ô0×7Ñ7Ø¨¸ZÑHó
ˆð$ð 	ô ×'Ñ'¬¸SÔAñ 	RØ×%Ñ%¨C¸ÈÑ&PÓQˆF÷	Rô 	×Ñ˜f hÕ/÷	Rð 	Rús   Á.B#Â#B,c                ó¸   — t        g d¢«      }t        j                  d«      }|j                  |did¬«      }t        g d¢«      }t	        j
                  ||«       y )Nr   z^a$r  Tr`   )r  r   r   )r   ÚreÚcompiler1   r2   r3   )r8   r\   rX   r>   r?   s        r   Ú test_replace_with_compiled_regexz5TestDataFrameReplace.test_replace_with_compiled_regex  sJ   € ä’Ó'ˆÜ—
‘
˜5Ó!ˆØ—‘˜U C˜L°�Ó5ˆÜš_Ó-ˆÜ
×Ñ˜f hÕ/r   c                óz  — t        dt        j                  dd«      t        j                  dd«      gi«      }|rt        nd }t	        j
                  |d¬«      5  |j                  dt        j                  dd«      dii«      }d d d «       t        dddgi«      }t	        j                  |«       y # 1 sw Y   Œ/xY w)Nr   r   r•   r†   r‡   r  )r   rÔ   ÚIntervalr‹   r2   rŠ   r1   r3   )r8   r�   r\   Úwarningr>   r?   s         r   Útest_replace_intervalsz+TestDataFrameReplace.test_replace_intervals!  s¤   € ä˜œbŸk™k¨!¨QÓ/´·±¸QÀÓ1BÐCÐDÓEˆÙ#5•-¸4ˆÜ×'Ñ'¨°}ÔEñ 	AØ—Z‘Z ¤r§{¡{°1°aÓ'8¸#Ð&>Ð ?Ó@ˆF÷	Aä˜c C¨ :Ð.Ó/ˆÜ
×Ñ˜f hÕ/÷	Að 	Aús   Á*B1Â1B:c                óâ   — dddddœi}t        dt        j                  d«      i«      }|j                  |«      }t        dt        j                  d«      i«      }t	        j
                  ||«       y )NÚpositiver•   r   )u   æ­£é�¢u   ä¸­ç«‹u   è´Ÿé�¢rC   )r   r   r™  r1   r2   r3   )r8   Úcolumns_values_mapr×   r>   r?   s        r   Útest_replace_unicodez)TestDataFrameReplace.test_replace_unicode*  sa   € à(°QÀ!ÈqÑ*QÐRÐÜ˜¤R§W¡W¨Q£ZÐ0Ó1ˆØ—‘Ð/Ó0ˆÜ˜j¬"¯'©'°!«*Ð5Ó6ˆÜ
×Ñ˜f hÕ/r   c                óÂ   —  |dg«      j                  d«      }|j                  «       }|j                  d t        j                  i«      }t        j                  ||«       y )NrG   z|S)r  r0   r1   r   r   r2   rÆ   )r8   rÈ   rÊ   r?   s       r   Útest_replace_bytesz'TestDataFrameReplace.test_replace_bytes2  sH   € á˜s˜eÓ$×+Ñ+¨DÓ1ˆØ—8‘8“:ˆØ�k‰k˜4¤§¡˜.Ó)ˆÜ
�‰˜˜XÕ&r   z!data, to_replace, value, expectedré   Úboxc                ó€   —  ||«      } ||«      }|j                   ||«      |«      }t        j                  ||«       y r,  )r1   r2   rÆ   )	r8   rÇ   rZ   r-   r?   r.  rÈ   rÊ   r>   s	            r   Ú!test_replace_list_with_mixed_typez6TestDataFrameReplace.test_replace_list_with_mixed_type9  s:   € ñ ˜dÓ#ˆÙ" 8Ó,ˆØ—‘™S ›_¨eÓ4ˆÜ
�‰˜ Õ)r   Úvalc                ó  — t        dd|gi«      }|j                  |d «      }t        ddd git        ¬«      }t        j                  ||«       t        dd|gi«      }|j                  |d i«      }t        j                  ||«       y )Nr   r•   rƒ   )r   r1   r…   r2   r3   )r8   r1  r\   r>   r?   s        r   Ú%test_replace_value_none_dtype_numericz:TestDataFrameReplace.test_replace_value_none_dtype_numericL  s   € ô ˜˜a ˜X�Ó'ˆØ—‘˜C Ó&ˆÜ˜c A t 9Ð-´VÔ<ˆÜ
×Ñ˜f hÔ/ä˜˜a ˜X�Ó'ˆØ—‘˜S $˜KÓ(ˆÜ
×Ñ˜f hÕ/r   c                óÐ   — t        ddt        j                  gi«      }t        ddt        j                  giddg¬«      }|j                  dd«      }t	        j
                  ||«       y )Nr   Únilzanything elser   r•   rÏ   )r   rÔ   r(  r1   r2   r3   )r8   ræ   r?   r>   s       r   Útest_replace_with_nil_naz-TestDataFrameReplace.test_replace_with_nil_naX  sW   € ä˜˜u¤b§e¡e˜nÐ-Ó.ˆÜ˜c O´R·U±UÐ#;Ð<ÀQÈÀFÔKˆØ—‘˜U OÓ4ˆÜ
×Ñ˜h¨Õ/r   N)gÚ__name__Ú
__module__Ú__qualname__rÃ   rÄ   rÅ   r   r@   Úparametrizer   r   r]   ro   rs   ry   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.  r4  r:  r?  r   Úint32Úint16r   r   r
   r	   ÚDatetimeIndexrÒ  r]  rl  ro  rq  r}  r  rƒ  r�  r�  r—  r›  r   r¦  r©  r­  r²  r·  rÍ  rÏ  rÔ  rÖ  rÛ  rä  rì  Úint8r>  rÿ   rð  ró  rù  rý  r  rÉ  r%  r  r  r  r#  r'  r+  r-  r   Útuplerš   r0  r3  r6  r   r   r   r   r       sç  „ Ø‡[�[×ÑÙ"Ó$Ð-Jð ó ñAóðAð. ‡[�[×ÑØ$ð
 ˜hÐ'Ø—‘˜Ð à˜s B§F¡F¨B¯F©FÐ3Ø ˜ A™¨¨Ñ-Ú0ñðð  
Ð+Ø˜*Ð%â/Ú<Ú2ñðð  Ð%Ø˜'Ð"â/Ú0Ú0ñðð1!	
ó$ðJ ‡[�[×Ñ˜Y¨¨u¨Ó6Ø‡[�[×ÑÐ3°d¸E°]ÓCñ0ó Dó 7óK$ðN0ò"'*òR&*òPC+òJ+ò*0ð  ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ0óð0ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ+óð+ð8 ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ+óð+ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ+óð+ò +ò$)ð ‡[�[×ÑØ˜BŸF™F¨Ñ,°B¸B¿F¹FÑ.CÐDóñ0óð0ð& ‡[�[×Ñ˜ZÒ)JÓKñ0ó Lð0ð ‡[�[×ÑØ"à�Uˆ^ 3¨SÑ1°E¸5°>ÐBÚ˜X r§u¡uÐ-°°R·U±U¸B¿E¹EÐ/BÐCð	
óñ*óð*ò<0ò6*ò>4ò&0ð( ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ	+óð	+ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñPóðPò,ò*0ò&0ò<
0ò2ð ‡[�[×Ñ˜WÒ&EÓFñ0ó Gð0ò	0ò0ò0ò0ò0ò&*ò(Jð& ‡[�[×ÑØ,á˜¢	Ð*Ó+¨Q°±9¸fÂiÐ=PÓ3QÐRá˜6¢9Ð-°R·X±XÔ>ØØÙ˜6¢9Ð-°R·X±XÔ>ð	ñ ˜6¢9Ð-°R·X±XÔ>ØØÙ˜6¢9Ð-°R·X±XÔ>ð	ñ ˜7Ò$7Ð8Ó9ØØÙ˜7Ò$6Ð7Ó8ð	ñ ˜9¢lÐ3Ó4ØØÙ˜9¢lÐ3Ó4ð	ñ à$¡eá (¨¨q°"Ó 5Ù (¨¨q°"Ó 5Ù (¨¨q°"Ó 5ðó'ðó
ñ ˜˜q "Ó%Ù˜˜q "Ó%Ù˜<©±¸¸qÀ"Ó0EÐ/FÈÑ/JÓ)KÐLÓMðñ$ ¡(¨4°°RÓ"8Ð!9À5À'ÑJÓKØØÙ¡(¨4°°RÓ"8Ð!9À5À'ÑJÓKð	ñ ˜4¡(¨4°°QÓ"7Ð!8Ð9Ó:Ù˜˜r 1Ó%Ù˜˜r 1Ó%Ù˜4¡(¨4°°QÓ"7Ð!8Ð9Ó:ð	ñ á'¨
¸AÀ,ÔOØ §¡¨˜^ñóñ ˜*¨Ô6Ù˜*¨Ô6Ùà-˜R×-Ñ-á )¨*¸Ô FÙ )¨*¸Ô FÙ )¨*¸Ô Fðó÷ "™' $›-Ø §¡¨˜^ñ	óðñ0 ˜A˜s˜8 a¨ XÐ.Ó/ØØÙ˜A˜s˜8 a¨ XÐ.Ó/ð	ñ ˜A˜s˜8 a¨ XÐ.Ó/ØØÙ˜A˜s˜8 a¨ XÐ.Ó/ð	ñ ˜A˜s˜8 a¨ XÐ.Ó/ØØÙ˜A˜s˜8 a¨ XÐ.Ó/ð	ñ ˜A˜s˜8 a¨ XÐ.Ó/ØØÙ˜A˜s˜8 a¨ XÐ.Ó/ð	ðCg	
ójñV0óWjðV0ò&+ðP ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ0óð0ò0ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ1óð1ð. ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ1óð1ò2	.ò
'ò0ò*ò
0ò0ò1ò$ò0ò0ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ	+óð	+ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ"0óð"0ðH ‡[�[×ÑÙ"Ó$Ð-Jð ó ñ0óð0ò@R0òhAð ‡[�[×ÑØ&à�šy°°2·6±6¸1¨~ÂOÑTÐUà—‘ØÚ¢oºOÑLðð
 �'¢°!°R·V±V¸Q°ÂoÑVÐWà�A�ØÚ q¨"¯&©&°! nº?ÑKðð �A�ØÚ q¨"¯&©&°! nº?ÑKðð ØÚ q¨"¯&©&°! nº?ÑKðð �c�
ØÚ q¨"¯&©&°! nº?ÑKðð/	
óñ@0óAð@0ð ‡[�[×ÑØ"Ø˜Ñ
˜a ˜V a¨ VÐ,Ð	-°a¸aÑ0@ÀAÀqÀ6ÈAÈqÈ6ÐBRÐ/SÐTóñ,ó	ð,ð8 ‡[�[×ÑØò #ªIÑ6Ø˜! Ñ"Ú"ªIÑ6ðò #ªOÑ<Ø ¨#Ñ.Ú"ªOÑ<ðð	
óñ	0óð	0ð ‡[�[×ÑÙ"Ó$Ð-Jð ó ð ‡[�[×ÑØá�jÓ!ØˆB�G‰G�A‹JØˆB�H‰H�Q‹KØˆB�J‰J�q‹MØˆB�J‰J�q‹Mð	
ó	ñ0ó	óð0ò0ò0ð  ‡[�[×Ñ˜WÒ&WÓXØ‡[�[×Ñ˜W r§v¡v¨r¯u©u oÓ6ñ*ó 7ó Yð*ð ‡[�[×Ñ˜]¨R¯V©V°Q¨KÓ8ñ0ó 9ð0ð ‡[�[×Ñ˜W y r§y¡y°Ó';¸[¸R¿[¹[ÈÈAÓ=NÐ&OÓPñ*ó Qð*ò60òp0ò>0ò0ò0ò'ð ‡[�[×ÑØ+àˆS�3�%˜!˜˜q˜cÐ"ØˆS�1�#˜�s˜Q˜CÐ ØˆU�S�E˜A˜3  Ð&ØˆU�Q�C˜!˜˜s˜eÐ$ð		
óð ‡[�[×Ñ˜U T¨5°"·(±(Ð$;Ó<ñ*ó =óð*ð ‡[�[×Ñ˜U Q¨¯©°Ð$4Ó5ñ	0ó 6ð	0ó0r   r   c            
      ó`  — e Zd Zej                  j                  d ed«       ed«      dœ ed«       e ed«      «      dœg«      ej                  j                  ddej                  fdg«      ej                  j                  d	d
dg«      ej                  j                  dd
dg«      ej                  j                  dd
dg«      d„ «       «       «       «       «       Z
ej                  j                   e«       d¬«      ej                  j                  ddd
g«      d„ «       «       Zd„ Zd„ Zd„ Zy)ÚTestDataFrameReplaceRegexrÇ   r   rV   r   r   zto_replace,valuerA   )rH   z\1\1\1Úcompile_regexTFÚregex_kwargr(   c                óX  — t        |«      }|j                  «       }|rt        j                  |«      }|r|}	d }nd}	|j	                  ||||	¬«      }
|r|
�J ‚|}
|t
        j                  u rt
        j                  }nd}||j                  |d   dk(  df<   t        j                  |
|«       y )NTrq   z...r   rv   )
r   r0   r!  r"  r1   r   r   r.   r2   r3   )r8   rÇ   rZ   r-   rB  rC  r(   r\   r?   rX   r>   Úexpected_replace_vals               r   Útest_regex_replace_scalarz3TestDataFrameReplaceRegex.test_regex_replace_scalara  sª   € ô  �t‹_ˆØ—7‘7“9ˆáÜŸ™ JÓ/ˆJáØˆEØ‰JàˆEà—‘˜J¨°wÀe�ÓLˆáØ�>Ð!�>ØˆFà”B—F‘F‰?Ü#%§6¡6Ñ à#(Ð à2Fˆ�‰�X˜c‘] cÑ)¨3Ð.Ñ/Ü
×Ñ˜f hÕ/r   r    r!   rX   c                óð  — t        dgdgdœ«      }t        dgdgdœ«      }d}t        j                  t        |¬«      5  |j	                  dd|¬«      }d d d «       t        j
                  |«       t        dgdgdœ«      }t        dgdgdœ«      }t        j                  t        |¬«      5  |j	                  dd|¬«      }d d d «       t        j
                  |«       y # 1 sw Y   ŒŽxY w# 1 sw Y   Œ,xY w)Nr…  r   r•   r–   r‡   )rZ   r-   rX   Ú1r‰   )	r8   rX   r×   Úexpected_df1r—   Ú
result_df1Údf2Úexpected_df2Ú
result_df2s	            r   Útest_replace_regex_dtype_framez8TestDataFrameReplaceRegex.test_replace_regex_dtype_frame‹  sï   € ô ˜s˜e¨3¨%Ñ0Ó1ˆÜ ¨ s°!°Ñ!5Ó6ˆØ1ˆÜ×'Ñ'¬¸SÔAñ 	KØŸ™°¸1ÀE˜ÓJˆJ÷	Kä
×Ñ˜j¨,Ô7ä˜s˜e¨3¨%Ñ0Ó1ˆÜ ¨ s°#°Ñ!7Ó8ˆÜ×'Ñ'¬¸SÔAñ 	KØŸ™°¸1ÀE˜ÓJˆJ÷	Kä
×Ñ˜j¨,Õ7÷	Kð 	Kú÷	Kð 	Kús   ¾C Â,C,Ã C)Ã,C5c                óø   — t        g d¢g d¢dœ«      }|j                  dt        j                  dœ«      }t        dt        j                  dgt        j                  ddgdœ«      }t	        j
                  ||«       y )NrÑ  )r•   r   r’   r   r•   r�  r’   r±   r)  s       r   Ú+test_replace_with_value_also_being_replacedzETestDataFrameReplaceRegex.test_replace_with_value_also_being_replacedž  s[   € äšYªYÑ7Ó8ˆØ—‘ ¤b§f¡fÑ-Ó.ˆÜ A¤r§v¡v¨q >¼¿¹ÀÀA¸ÑGÓHˆÜ
×Ñ˜f hÕ/r   c                ó¦   — t        g d¢g d¢dœd¬«      }|j                  «       }|j                  ddgdd g¬	«      }t        j                  ||«       y )
N)rì   rõ  NÚthree)rì   Nrõ  rR  r   r0  rƒ   rv   ÚdefÚ_r�  )r   r0   r1   r2   r3   r  s       r   Ú'test_replace_categorical_no_replacementzATestDataFrameReplaceRegex.test_replace_categorical_no_replacement¥  sS   € äâ2Ú2ñð ô
ˆð —7‘7“9ˆà—‘¨¨U |¸CÀ¸;�ÓGˆÜ
×Ñ˜f hÕ/r   c                óv  — t        dgddœ«      }|r$t        |j                  j                  «      dk(  s&J ‚t        |j                  j                  «      dk(  sJ ‚|j	                  dddd¬	«       |r%t        |j                  j                  «      dk(  sJ ‚y t        |j                  j                  «      dk(  sJ ‚y )
Nr   r   r   r’   r•   r½   r¨   T)rZ   r-   r(   rX   )r   r¿   Ú_mgrÚblocksr1   )r8   r�   r\   s      r   Útest_replace_object_splittingz7TestDataFrameReplaceRegex.test_replace_object_splitting³  s™   € ä˜c˜U¨Ñ-Ó.ˆÙÜ�r—w‘w—~‘~Ó&¨!Ò+Ð+Ð+ä�r—w‘w—~‘~Ó&¨!Ò+Ð+Ð+Ø
�
‰
˜h¨b¸$Àdˆ
ÔKÙÜ�r—w‘w—~‘~Ó&¨!Ò+Ð+Ñ+ä�r—w‘w—~‘~Ó&¨!Ò+Ð+Ñ+r   N)r7  r8  r9  rÃ   rÄ   r:  r   r   r   r   rF  rÅ   r   rN  rP  rU  rY  r   r   r   rA  rA  `  s4  „ Ø‡[�[×ÑØá�v“,¡T¨&£\Ñ2Ù�v“,¡T©%°«(£^Ñ4ð	
óð ‡[�[×ÑØ˜k¨2¯6©6Ð2Ð4NÐOóð ‡[�[×Ñ˜_¨t°U¨mÓ<Ø‡[�[×Ñ˜]¨T°5¨MÓ:Ø‡[�[×Ñ˜Y¨¨u¨Ó6ñ0ó 7ó ;ó =óóð0ð: ‡[�[×ÑÙ"Ó$Ð-Jð ó ð ‡[�[×Ñ˜W u¨d mÓ4ñ8ó 5óð8ò0ò0ó,r   rA  )Úreturnzdict[str, list[int | str]])rZ  zdict[str, list[float | str]])Ú
__future__r   r   r!  Únumpyr   rÃ   Úpandas._configr   ÚpandasrÔ   r   r   r   r	   r
   Úpandas._testingÚ_testingr2   Úfixturer   r   r   rA  r   r   r   ú<module>rb     st   ðÝ "å Û 	ã Û å 5ã ÷õ õ ð ‡�ò4ó ð4ð ‡�òRó ðR÷}0ñ }0÷@2^,ò ^,r   