U
    sVÞcKi  ã                ·   @   s0  d Z ddlZddlZddlZddlZddlZejj	ddZ
ejjddgddggdd	gd
ZddgifZdddddgiefZejejdgdde dd¡fejdgfe dg ¡fejdgfe ddg¡fejdgfe dd¡fejdgfe d¡fejdgfejdddfejdgfe d¡fejddgfe d¡fejddgfe d¡fejddgfe d¡fejddgfe ddd„ ¡fejddgfe dd¡fejddgfe d ddg¡fejddgfe d!ddg¡fejddgfe d"dg¡feje dejg¡fe d#d¡fejddgfe d$ddi¡fejddgfe d%¡fejddgfe d&ddg¡fejddgfe d'dd¡fejddgfe d(¡fejddgfe d)¡fejddgfe d*¡fejddgfe d+¡fejdgfe d,e dg¡¡fejdgejd-dd.fe d/¡fejdgejd-dd.fe d0¡fejejee d1ejdgd2¡fejj	d3dd4ejee d5¡fejee dd¡fejee ddg¡fejee de dg¡¡fejd6dgife ddg¡fejee d7d8¡fejeejd9d:d;d<fejeejd=d>d?fejeejd@ddAfejee d dg¡fejee d!ddg¡fejeejd"dgdBfejeejd"dgd2fejeejdddidBfejeejddCd„ d2fejee d#d¡fejeejd#dDdEfejee dFd¡fejee d¡fejee d(¡fejee d)¡fejee d*¡fejee d+¡fejee dG¡fejee d¡fejee d¡fejeejdHddIfejee dJ¡fejee dKdd¡fejee dLdd¡fejee dM¡fejejee d,ejeŽ ¡fe
d4ejejee dNejeŽ ej¡fe
d4ejejee dOejeŽ ¡fe
d4ejejee dPejeŽ ¡fe
d4ejeejdQddBfejdgdgdRœfejdSddBfejdgdgdRœfejdSddTdUgdVfejee dW¡fejee dXd¡fejee dY¡fejdddZgddd[gddd\gd]œfejd^dgd	gd_fe ejee d`dad„ ¡f¡ejejee dbe ddgi¡¡fej dc¡d4ejejee dbe d	dgi¡¡fej dc¡d4ejejee dde ddgi¡¡fe
d4e ejee dd¡f¡ejejee de¡fe
d4ejejee df¡fe
ej dg¡gd4ejejee dhejeŽ ¡fe
d4e ejee di¡f¡ejejeejdiddjfej dk¡gd4e ejee dl¡f¡ejee dm¡fejee dn¡fejee do¡fejejdge do¡fe
d4e ejeejdpddqf¡e ejeejdpdrdsgddtf¡e ejdejdduejddugifejdpdvdqf¡e ejde dw¡e dx¡gifejdpddqf¡ejddgie d-dy¡gfe d/¡fejddgie d-¡gfejd0dydzfe ejee d&dg¡f¡e ejee d&e dg¡¡f¡e ejee d&e ddgi¡¡f¡ejee d{dd¡fejee d|d¡fejee d}d¡fejejee d~¡fe
d4ejddgfe d~¡fejddgfejddd2fejeejdddBfejeejfejdgejfejeejfejdgejfejeej fejdgej fejee!fejdge!fe ejee"f¡ejdge"fejee dddg¡fejee d€d¡fejdefe d€d¡fejee dd¡fejee d‚e ddddgi¡¡fejee d‚e dddg¡¡fejee dƒd„¡fejee d…d„¡fejdddgfe dƒd„¡fejdddgfe d…d„¡fejddgfe dH¡fejdgd† fe d‡¡fejddgd† ife d‡¡fejdgd† fe dˆ¡fejddgd† ife dˆ¡fejddgfejd‰dddŠfejefejd‰dddŠfejddgfe d‹e#¡fejee d‹e#¡fejddgfe dŒ¡fejee dŒ¡fejddgde$fe d¡fejdejddge$dife d¡fejddgfe dŽ¡fejee dŽ¡fejdddgfe d¡fejddddgife d¡fejddgfejddd‘fejeejddd‘fejdejd-dd.fe d’d“¡fejdddddgiejd-dd.fe d’d“¡fejdejd-dd.fe d”d•¡fejdddddgiejd-dd.fe d”d•¡fejdejd-dd.fe d–d•d—¡fejdddddgiejd-dd.fe d–d•d—¡fejdejd-dd.fe d˜d™¡fejdddddgiejd-dd.fe d˜d™¡fejdejd-dd.fe dšd™¡fejdddddgiejd-dd.fe dšd™¡fejddgfe d›¡fejee d›¡fejddgfe dœe ddvg¡¡fejee dœe dgg¡¡fejddgfe de ddvg¡¡fejee de dgg¡¡fejejdejd-dd.fe dž¡fej dŸ¡d4ejejdddddgiejd-dd.fe dž¡fej dŸ¡d4ejddgfejd dd¡fejeejd dd¡fejdejd-dd¢d£fe d¤d¥¡fejdddddgiejd-dd¢d£fe d¤d¥¡fejdejd-dd.fe d¦d¥¡fejdddddgiejd-dd.fe d¦d¥¡fejejddgfe d§¡fe
d4ejejee d§¡fe
d4ejddgfe d¨¡fejee d¨¡fejdgfe d©dªd„ ¡fe ejee d©d«d„ ¡f¡ejdgfe d¬d­d„ ¡fe ejee d¬d®d„ ¡f¡ejdgfe d¯¡fejee d¯¡fejejee d°¡fe
d4ejejee dU¡fe
d4ejejee d±¡fe
d4ejejee dT¡fe
d4g²Z%d²d³„ Z&ej'e%d´d„ dµd¶d·„ ƒZ(d¸d¹„ Z)e
dºd»„ ƒZ*ej +d¼d½d¾d¿g¡ej +dÀde dg¡fde ddgi¡fe dg¡dfe ddgi¡dfe dg¡e dg¡fe ddgi¡e ddgi¡fe dg¡e ddgi¡fe ddgi¡e dg¡fg¡dÁdÂ„ ƒƒZ,ejj+dÃe dÄ¡e dÅ¡e dÆdg¡e dÇd¡e did¡e dÈdÉ¡e dÊd¡e dËdÌ¡ejdËdÌdvdÍe dÎd¡e dÏd¡e dd¡e dÐd¡e dÑ¡e dÒd¡e dÓ¡e dÔ¡e dÕdÖ¡e d×dØ¡e dÙd¡e dÚd¡e dd¡e d$dd¡e dÛd¡e dÜd¡e dÝd¡e dÞd¡e dß¡e dàd¡ejdádddâe dãd¡e dä¡e då¡e dæddi¡e dç¡e dèd¡e déd¡e dê¡e dë¡e dì¡e dí¡e dî¡e dï¡e dð¡e dñ¡e dò¡e dó¡g/e&dôdõdö„ ƒZ-ejj+dÃe d0¡e d¦d¥¡e d×¡e d÷dø¡e dd“¡e dùd“¡e dúd“¡e dû¡e dü¡g	e&dôdýdþ„ ƒZ.ej +dÿd ddddddddd	d
ddddddddddddddg¡dd„ ƒZ/ej +dÿdddddg¡d d!„ ƒZ0ej +dÃe d"¡g¡d#d$„ ƒZ1ej +dÃe d%dZg¡e d&¡e d'¡d(d„ e d)d¡e d*¡e d+dd	d,œ¡e d-ddg¡e d.dd	g¡g	¡e
d/d0„ ƒƒZ2ej +d1e ddg¡e ddgddgdRœ¡g¡ej +dÃe dU¡d2d„ d3d„ d4d„ d5d„ g¡d6d7„ ƒƒZ3ej +d1e ddg¡e ddgddgdRœ¡g¡ej +dÃd8d„ d9d„ d:d„ d;d„ d<d„ d=d„ d>d„ g¡e
d?d@„ ƒƒƒZ4dAdB„ Z5dS (C  zG
An exhaustive list of pandas methods exercising NDFrame.__finalize__.
é    Núnot implemented©ÚreasonÚaÚbé   ÚAÚB)Únamesé   é   é   Zfloat64©ZdtypeÚviewZint64ZtakeÚ__getitem__TÚrepeatZreset_index)ÚdropZto_frameZdrop_duplicatesZ
duplicatedÚroundÚrenamec                 C   s   | d S )Nr   © ©Úxr   r   úF/tmp/pip-unpacked-wheel-xj8nt62q/pandas/tests/generic/test_finalize.pyÚ<lambda>/   ó    r   ÚnameZset_axisZreindexr   ZfillnaÚreplaceÚshiftÚisinZbetweenZisnaZisnullZnotnaZnotnullÚaddÚ2000©ÚperiodsZto_timestampZ	to_periodÚdot)ÚindexzImplement binary finalize)ZmarksZ	transpose)r   r   ÚqueryzA == 1ÚevalúA + 1Úpython©ZengineZselect_dtypesÚint)ÚincludeZassign)r   )Úcolumnsc                 C   s   | S ©Nr   r   r   r   r   r   _   r   Zffill)ÚmethodZ	set_indexZdropnaZsort_values)ZbyZ
sort_indexÚnlargestÚ	nsmallestZ	swaplevelÚcombineZcombine_firstÚupdateZpivot)r   r	   Zpivot_tableÚmeanÚsum)r,   ZaggfuncÚstackZexplodeZunstackÚcé   é   )r   r	   ÚCZmelt)Zid_varsZ
value_varsZapplymapc                 C   s   | S r-   r   r   r   r   r   r   ¥   r   Úappendz4ignore:.*append method is deprecated.*:FutureWarningÚmergeZcorrZcovzignore::RuntimeWarningZcorrwithÚcount)Úlevelz,ignore:Using the level keyword:FutureWarningZnuniqueZidxminZidxmaxÚmodeZquantile)Únumeric_onlyg      Ð?g      è?)Úqr?   )ÚdaysFz
2022-01-01z
2022-01-02ÚD)ÚfreqZswapaxesZ	droplevelÚpopZsqueezeZrename_axisÚxsÚgetZreindex_likeZ
add_prefixÚ_Z
add_suffixé
   ÚheadÚtailÚsample)Únr   ZastypeÚcopyZinfer_objectsZconvert_dtypesZinterpolateZclip)ÚlowerZasfreqÚHZat_timez12:00Zbetween_timez13:00ÚfirstZ3DÚlastZrankÚwhereÚmaskZtshiftzignore::FutureWarningÚtruncate)ÚbeforeÚUTC)r"   ÚtzZ
tz_convertZCETZtz_localizeÚdescribeZ
pct_changeZ	transformc                 C   s   | |   ¡  S r-   ©Úminr   r   r   r   r   Å  r   c                 C   s   | |   ¡  S r-   rY   r   r   r   r   r   Ê  r   Úapplyc                 C   s   | S r-   r   r   r   r   r   r   Í  r   c                 C   s   | S r-   r   r   r   r   r   r   Ï  r   ZcumsumÚanyÚstdc                 C   s2   t  d¡}| t| ƒ¡}|r&| d¡S t| ƒS d S )Nz'(.*)?'r   )ÚreÚcompileÚsearchÚstrÚgroup)r   ZxprÚmr   r   r   Úidfnè  s
    

rd   c                 C   s   t | d ƒS )Néÿÿÿÿ)rd   r   r   r   r   r   ñ  r   )ÚparamsÚidsc                 C   s   | j S )z1
    An NDFrame method returning an NDFrame.
    )Úparam)Úrequestr   r   r   Úndframe_methodñ  s    rj   c                 C   s:   | \}}}||Ž }ddi|_ ||ƒ}|j ddiks6t‚d S )Nr   r   )ÚattrsÚAssertionError)rj   ÚclsZ	init_argsr.   ZndframeÚresultr   r   r   Útest_finalize_calledù  s
    

ro   c                  C   sJ   t  d¡ t dddgi¡} d| jd< | jddd}|jddiksFt‚d S )NZnumexprr   r   r   r'   r)   )ÚpytestZimportorskipÚpdÚ	DataFramerk   r&   rl   ©Zdfrn   r   r   r   Ú!test_finalize_called_eval_numexpr  s
    

rt   ÚannotateÚleftÚrightÚbothÚargsc                 C   s®   |\}}|dkrt |tƒs$t |tƒr(d S t |tjƒs@t |tjƒrV| j tjjdd¡ |dkrrt |tƒsrddi|_	|dkrŽt |tƒsŽddi|_	|||ƒ}|j	ddiksªt
‚d S )Nrx   r   r   >   rx   rv   r   r   )Ú
isinstancer*   rq   rr   ÚnodeZ
add_markerrp   ÚmarkÚxfailrk   rl   )ri   ry   ru   Zall_arithmetic_functionsrv   rw   rn   r   r   r   Útest_binops  s    


r~   r.   Ú
capitalizeÚcasefoldÚcatÚcontainsÚencodezutf-8ÚendswithÚextractz(\w)(\d))ÚexpandÚfindÚfindallr$   ÚlenÚljustrN   ÚlstripÚmatchz\wÚ	normalizeÚNFCÚpadÚ	partitionÚrfindÚrindexÚrjustÚ
rpartitionÚrstripÚsliceZslice_replace)ÚreplÚ
startswithÚstripÚswapcaseÚ	translateÚupperÚwrapÚzfillÚisalnumÚisalphaÚisdigitÚisspaceÚislowerÚisupperÚistitleÚ	isnumericÚ	isdecimalZget_dummies)rg   c                 C   s6   t  dg¡}ddi|_| |jƒ}|jddiks2t‚d S )NZa1r   r   )rq   ÚSeriesrk   ra   rl   ©r.   Úsrn   r   r   r   Útest_string_method4  s    6

r«   Ústrftimez%YÚfloorÚceilÚ
month_nameÚday_namec                 C   s>   t  t jddd¡}ddi|_| |jƒ}|jddiks:t‚d S ©Nr    r   r!   r   r   )rq   r¨   Ú
date_rangerk   Údtrl   r©   r   r   r   Útest_datetime_methodp  s    

r´   ÚattrÚdateÚtimeÚtimetzÚyearÚmonthÚdayÚhourÚminuteÚsecondÚmicrosecondZ
nanosecondZ	dayofweekZday_of_weekZ	dayofyearZday_of_yearZquarterZis_month_startZis_month_endZis_quarter_startZis_quarter_endZis_year_startZis_year_endZis_leap_yearZdaysinmonthZdays_in_monthc                 C   s@   t  t jddd¡}ddi|_t|j| ƒ}|jddiks<t‚d S r±   )rq   r¨   r²   rk   Úgetattrr³   rl   ©rµ   rª   rn   r   r   r   Útest_datetime_property†  s    
rÂ   rA   ÚsecondsÚmicrosecondsZnanosecondsÚ
componentsc                 C   s@   t  t jddd¡}ddi|_t|j| ƒ}|jddiks<t‚d S r±   )rq   r¨   Útimedelta_rangerk   rÀ   r³   rl   rÁ   r   r   r   Útest_timedelta_property«  s    
rÇ   Útotal_secondsc                 C   s>   t  t jddd¡}ddi|_| |jƒ}|jddiks:t‚d S r±   )rq   r¨   rÆ   rk   r³   rl   r©   r   r   r   Útest_timedelta_methodsµ  s    

rÉ   Zadd_categoriesZ
as_orderedZas_unorderedc                 C   s
   t | dƒS )NÚcodes)rÀ   r   r   r   r   r   Ã  r   Zremove_categoriesZremove_unused_categoriesZrename_categories)r   r   Zreorder_categoriesZset_categoriesc                 C   s<   t jddgdd}ddi|_| |jƒ}|jddiks8t‚d S )Nr   r   Úcategoryr   r   )rq   r¨   rk   r   rl   r©   r   r   r   Útest_categorical_accessor½  s    

rÌ   Úobjc                 C   s   |   dd„ ¡S )Nc                 S   s   | S r-   r   )Úyr   r   r   r   Þ  r   z<lambda>.<locals>.<lambda>)r[   r   r   r   r   r   Þ  r   c                 C   s
   |   d¡S )Nr4   ©Zaggr   r   r   r   r   ß  r   c                 C   s
   |   d¡S )Nr3   rÏ   r   r   r   r   r   à  r   c                 C   s
   |   d¡S )NZmedianrÏ   r   r   r   r   r   á  r   c                 C   s6   ddi| _ || jddgddƒ}|j ddiks2t‚d S )Nr   r   r   F)Z
group_keys©rk   Úgroupbyrl   ©rÍ   r.   rn   r   r   r   Útest_groupby_finalize×  s    
rÓ   c                 C   s   |   ddg¡S )Nr4   r<   rÏ   r   r   r   r   r   ð  r   c                 C   s
   |   d¡S )Nr]   rÏ   r   r   r   r   r   ñ  r   c                 C   s
   |   d¡S )NÚvarrÏ   r   r   r   r   r   ò  r   c                 C   s
   |   d¡S )NZsemrÏ   r   r   r   r   r   ó  r   c                 C   s
   |   d¡S )NÚsizerÏ   r   r   r   r   r   ô  r   c                 C   s
   |   d¡S )NZohlcrÏ   r   r   r   r   r   õ  r   c                 C   s
   |   d¡S )NrX   rÏ   r   r   r   r   r   ö  r   c                 C   s2   ddi| _ ||  ddg¡ƒ}|j ddiks.t‚d S )Nr   r   r   rÐ   rÒ   r   r   r   Ú%test_groupby_finalize_not_implementedê  s    
rÖ   c                  C   s8   t  dddgi¡} t  ddg¡ | ¡}|jd ks4t‚d S )Nr   r   r   )rq   rr   r¨   Z__finalize__r   rl   rs   r   r   r   Útest_finalize_frame_series_name   s    r×   )6Ú__doc__Úoperatorr^   ZnumpyÚnprp   Zpandasrq   r|   r}   Znot_implemented_markZ
MultiIndexZfrom_productÚmiZ
frame_dataZframe_mi_datar¨   ÚarrayÚmethodcallerZNAZperiod_ranger²   rh   rr   r   ÚfilterwarningsZ	TimedeltaZ
datetime64ZPeriodZ	TimestampÚnegÚposÚinvÚabsr   ÚfloatÚobjectZ_all_methodsrd   Zfixturerj   ro   rt   Zparametrizer~   r«   r´   rÂ   rÇ   rÉ   rÌ   rÓ   rÖ   r×   r   r   r   r   Ú<module>   sž  	 

ý ýýýúýú	ýúýúýúýýýÿýÿú
ýÿú
ýúÿþ
þþýúÿ
ÿþÿþýÿýÿýÿýÿýýÿÿýÿþ
ýýý
ý
ý
ý
ýýý
ý
ý
ý
ý""ý
úý
ú
ý
ý
ý
ýþþýÿÿþþþþ€ € € ¿   K	


øþ






















Ñ1Í5





÷ó
çþ ÿ


÷þ $ÿûþ
 $ÿùþ