a
    nÝEbs­  ã                %   @   sb  d Z ddlmZ ddlmZmZmZmZmZ ddlm	Z	 ddl
Z
ddlZddlmZmZ ddlZddlmZ ddlZddlZddlmZmZ ddlm  mZ dd	lmZmZ ddlZ dd
lm!Z!m"Z"m#Z#m$Z$m%Z%m&Z& ddl'm(Z) ddl*m+Z+ ddl,m-Z-m.Z. zddl/Z0W n e1�y"   dZ2Y n0 [0dZ2ej3 4d¡Z5dd„ Z6dd„ Z7ej8j9ddej:j;fd� ej8 <d¡ d =¡ D ]8Z>e?e j@jAe>ƒZBe CeBejDeBe Edd¡e F¡ d�¡ �qrd =¡ D ]DZ>e?e j@jAe>ƒZBe CeBejDeBe Edd¡e F¡ ejEddd�d �¡ �q´d! =¡ D ]DZ>e?e j@jAe>ƒZBe CeBejDeBe Ed"d#¡e F¡ ejEddd�d$�¡ �qejGd%d&„ ƒZHejGdd'�d(d)„ ƒZIejGg d*¢d+d,„ d-�d.d/„ ƒZJeJZKejGg d0¢d1�d2d3„ ƒZLejGg d0¢d1�d4d5„ ƒZMejGg d6¢d1�d7d8„ ƒZNejGg d9¢d1�d:d;„ ƒZOejGg d<¢d1�d=d>„ ƒZPejGg d<¢d1�d?d@„ ƒZQejGddAdBdCdDejRdEe SdF¡dG�gd1�dHdI„ ƒZTejGdAdBdCdDejRdEe SdF¡dG�gd1�dJdK„ ƒZUejGddgd1�dLdM„ ƒZVejGg dN¢d1�dOdP„ ƒZWejGdQdRgd1�dSdT„ ƒZXejGe)jYdUd,„ d-�dVdW„ ƒZZeZZ[ejGdej\e j]gd1�dXdY„ ƒZ^e^Z_ejGe)j`dZd,„ d-�d[d\„ ƒZaeaZbejGe!e$gd1�d]d^„ ƒZcejGe-e$gd_d`gd-�dadb„ ƒZdedZeejGe-e$e jfgg dc¢d-�ddde„ ƒZgejGe-e$e!e jfgdfd,„ d-�dgdh„ ƒZhehZiejGdidj„ ƒZjejGdkdl„ ƒZkejGdmdn„ ƒZlejGdodp„ ƒZmejGdqdr„ ƒZndsdt„ Zodudv„ Zpe) qdw¡e) rdw¡e) sdw¡e)jsdwdxdy�e) tdw¡e) udw¡e) vdw¡e) wdw¡e) xdw¡e) ydw¡e)jzdwdzd{�e)jzdwd|d{�e)jzdwd}d{�e)jzdwd~d{�e)jzdwdd{�e)jzdwd€d{�e)jzdwd�d{�e)jzdwd‚d{�e)jzdwdƒd{�e)jzdwd„d{�e) {d…¡e) |dw¡e) }dw¡e-g ƒe. ~eg d†¢g d‡¢ƒ¡epƒ eoƒ e-g dˆ¢ƒe-e €dw¡d‰d{�e-e €dw¡dŠd{�e-e €dw¡d‹d{�e-e €dw¡ �e‚¡dŒd{�e-e jfe) rdw¡d�d{�ƒdŽœ!Zƒe2�r˜e-e jfe) rdw¡d�d{�ƒZ„e„eƒd�< ejGeƒ …¡ d1�d‘d_„ ƒZ†e†Z‡ejGd’d“„ eƒD ƒd1�d”d•„ ƒZˆeˆZ‰ejGd–d“„ eƒD ƒd1�d—d˜„ ƒZŠejGd™d“„ eƒD ƒd1�dšd›„ ƒZ‹ejGdœd�„ ƒZŒejGdždŸ„ ƒZ�ejGd d¡„ ƒZŽd¢d£„ Z�d¤d¥„ eƒ �¡ D ƒZ‘ejGd¦d§„ ƒZ’ejGd¨d©„ ƒZ“dªd¥„ e)j”D ƒZ•i eƒ¥e‘¥e•¥Z–ejGe– …¡ d1�d«d¬„ ƒZ—ejGd­d®„ ƒZ˜ejGd¯d°„ ƒZ™ejGd±d²„ ƒZšejGd³d´„ ƒZ›ejGdµd¶„ ƒZœejGe"ddd·�edzd¸ƒfe"d¹dºd·�edƒd¸ƒfe#d»d¼d½�d¾fe#d¿dÀd½�dÁfe&dÂdÃdy�edÃdy�fe%dÄdÅ�dÆfgd1�dÇdÈ„ ƒZ�g dÉ¢ZžejGežd1�dÊdË„ ƒZŸejGe
j e+j¡e
j¢e+j£e
j¤e+j¥e
j¦e+j§e
j¨e+j©e
jªe+j«e
j¬e+j­e
j®e
j¯e
j°e
j±e
j²e
j³e
j´e+jµe
j¶e+j·e
j¸e+j¹gd1�dÌdÍ„ ƒZºejGe
j e+j¡e
j¢e+j£e
j¤e+j¥e
j¦e+j§e
j¨e+j©e
jªe+j«e
j¬e+j­gd1�dÎdÏ„ ƒZ»g dÐ¢Z¼ejGe¼d1�dÑdÒ„ ƒZ½dÓdÔgZ¾ejGe¾d1�dÕdÖ„ ƒZ¿e¼e¾ ZÀejGeÀd1�d×dØ„ ƒZÁejGe
j®e
j¯e
j²e
j³e
j°e
j±gd1�dÙdÚ„ ƒZÂejGg dÛ¢d1�dÜdÝ„ ƒZÃejGg dÞ¢d1�dßdà„ ƒZÄejGdádâ„ ƒZÅejGdãdä„ ƒZÆejGdådæ„ ƒZÇddçdÃdèdédêdëdìdídîeƒ eƒ edïƒedƒedðƒejeeddñ�ƒeedòdñ�dódô�gZÈdõd“„ eÈD ƒZÉe ÊeËeÉƒ¡ejGeÈeÉd-�död÷„ ƒƒZÌe ÊeËeÉdd… ƒ¡ejGeÈdd… eÉdd… d-�dødù„ ƒƒZÍeÍZÎejGdúdûeeƒ ejgd1�düdý„ ƒZÏeÏZÐejGe)jÑd1�dþdÿ„ ƒZÒejGd�ejRd�ejS�d �d�d�dG�gd1��d�d„ ƒZÓejG�dejR�d ejS�d �d�d�dG�gd1��d�d„ ƒZÔeÔZÕejGe)jÖd1��d�d	„ ƒZ×ejGe)jØd1��d
�d„ ƒZÙejG�dd�ejRd�ejS�d �d�d�dG�gd1��d�d„ ƒZÚejGe)jÛd1��d�d„ ƒZÜejGe)jÝd1��d�d„ ƒZÞejG�d�d„ ƒZßejGe)jàd1��d�d„ ƒZáejGe)jâd1��d�d„ ƒZãejGe)jàe)jâ d1��d�d„ ƒZäejGe)jåd1��d�d„ ƒZæejGe)jçd1��d�d„ ƒZèejGe)jéd1��d�d „ ƒZêejGe)jëd1��d!�d"„ ƒZìejGe)jíd1��d#�d$„ ƒZîejGe)jëe)jí d1��d%�d&„ ƒZïejGe)jíe)jâ d1��d'�d(„ ƒZðejGe)jñd1��d)�d*„ ƒZòejGe)jód1��d+�d,„ ƒZôejGe)jõd1��d-�d.„ ƒZö�d/�d0ej\�d1gf�d/�d0e j÷�d1gf�d2�d3ej\�d4gf�d5ej\ej\ej\gf�d5g f�d6�d0ej\�d7gf�d8�d0ej\�d9gf�d:�d;ej\�d9gf�d<dej\�d7gf�d=dej\�d9gf�d>e	dƒej\e	�d7ƒgfdŒdej\dgfdŒde j÷dgf�d?e ø�d@¡ej\e ø�dA¡gf�dBe&�dCƒej\e&�dDƒgf�dEe�dFddƒej\e�dGddƒgf�dHedƒej\e�d7ƒgf�dIedƒej\e�d7ƒgf�dJe#�dFƒe j]e#�dGƒgf�dKe"ddƒej\e"d�d7ƒgfgZùeeùŽ \ZúZûejGeùeúd-��dL�dM„ ƒZüejG�dN�dO„ ƒZýejGg �dP¢d1��dQ�dR„ ƒZþejG�dSd“„ e jAjÿD ƒd1��dT�dU„ ƒ�Z ejGd�dVd,„ gd1��dW�dX„ ƒ�Ze G¡ �dY�dZ„ ƒ�ZejG�d[�d\�d]ej\ej\ej\fej\e j]dfej\e j÷dfe j÷e j÷e j÷fgd1��d^�d_„ ƒ�ZejGe)�je)�je)�jgd1��d`�da„ ƒ�ZejGe)�je)�jgd1��db�dc„ ƒ�ZejGe)�je)�jgd1��dd�de„ ƒ�Z	ejGe)�j
e)�jgd1��df�dg„ ƒ�ZejGe)�je)�jgd1��dh�di„ ƒ�ZejG�dj�dk„ ƒ�ZdS (l  a•  
This file is very long and growing, but it was decided to not split it yet, as
it's still manageable (2020-03-17, ~1.1k LoC). See gh-31989

Instead of splitting it was decided to define sections here:
- Configuration / Settings
- Autouse fixtures
- Common arguments
- Missing values & co.
- Classes
- Indices
- Series'
- DataFrames
- Operators & Operations
- Data sets/files
- Time zones
- Dtypes
- Misc
é    )Úabc)ÚdateÚdatetimeÚtimeÚ	timedeltaÚtimezone)ÚDecimalN)ÚtzlocalÚtzutc)Ú
strategies)ÚFixedOffsetÚutc)ÚDatetimeTZDtypeÚIntervalDtype)Ú	DataFrameÚIntervalÚPeriodÚSeriesÚ	TimedeltaÚ	Timestamp)Úops)ÚIndexÚ
MultiIndexFTz3ignore:Promotion of numbers and bools:FutureWarningc                 C   sd   | j dddd� | j dddd� | j dddd� | j d	dd
d� | j dddd� | j dddd� d S )Nú--skip-slowÚ
store_truezskip slow tests)ÚactionÚhelpú--skip-networkzskip network testsú	--skip-dbzskip db testsú--run-high-memoryzrun high memory testsú--only-slowzrun only slow testsú--strict-data-filesz0Fail if a test is skipped for missing data file.)Z	addoption)Úparser© r#   úO/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/pandas/conftest.pyÚpytest_addoptionY   s    ÿýr%   c                 C   sD  |  d¡}|  d¡}|  d¡}|  d¡}|  d¡}tjjd|dftjjd|dftjjd	|dfg}| D ]Ú}|  d
¡s€|j ddd�r’| tj d¡¡ d|jv rª| tjj	¡ | t
¡ |D ]@\}	}
}}|
|jv r¸|rî| tj d|› �¡¡  qú| |	¡ q¸|�rd|jv�r| tj d¡¡ d|jv rd|sd| tj d¡¡ qdd S )Nr   r    r   r   r   ÚslowÚnetworkz	--networkÚdbz--doctest-modulesz--doctest-cythonF)ÚdefaultÚadd_doctest_importsz/frame/zskipping due to zskipping due to --only-slowZhigh_memoryz=skipping high memory test since --run-high-memory was not set)Ú	getoptionÚpytestÚmarkr&   r'   r(   Z
add_markerZusefixturesZnodeidZarraymanagerÚ suppress_npdev_promotion_warningÚkeywordsÚskip)ÚitemsÚconfigZ	skip_slowZ	only_slowZskip_networkZskip_dbZrun_high_memoryÚmarksÚitemr-   ZkwdZskip_if_foundZarg_namer#   r#   r$   Úpytest_collection_modifyitemsh   s>    




ýÿ


ÿÿr5   Úci)ÚdeadlineZsuppress_health_checkz)MonthBegin MonthEnd BMonthBegin BMonthEndi�ÿÿÿéc   )ÚnÚ	normalizez%YearBegin YearEnd BYearBegin BYearEndéûÿÿÿé   é   é   )Z	min_valueZ	max_value)r9   r:   Úmonthz1QuarterBegin QuarterEnd BQuarterBegin BQuarterEndièÿÿÿé   )r9   r:   ZstartingMonthc                 C   s   t | d< t| d< dS )z:
    Make `np` and `pd` names available for doctests.
    ÚnpÚpdN)rA   rB   )Zdoctest_namespacer#   r#   r$   r*   Æ   s    r*   )Zautousec                   C   s   t  dd¡ dS )z<
    Configure settings for all tests and test modules.
    Zchained_assignmentÚraiseN)rB   Z
set_optionr#   r#   r#   r$   Úconfigure_testsÒ   s    rD   )r   r=   ÚindexÚcolumnsc                 C   s   dt | ƒ› �S )Nzaxis=©Úrepr©Úxr#   r#   r$   Ú<lambda>Ý   ó    rK   )ÚparamsÚidsc                 C   s   | j S )z@
    Fixture for returning the axis numbers of a DataFrame.
    ©Úparam©Úrequestr#   r#   r$   ÚaxisÝ   s    rS   )TFN)rM   c                 C   s   | j S )a…  
    Pass in the observed keyword to groupby for [True, False]
    This indicates whether categoricals should return values for
    values which are not in the grouper [False / None], or only values which
    appear in the grouper [True]. [None] is supported for future compatibility
    if we decide to change the default (and would need to warn if this
    parameter is not passed).
    rO   rQ   r#   r#   r$   Úobservedè   s    
rT   c                 C   s   | j S )z6
    Boolean 'ordered' parameter for Categorical.
    rO   rQ   r#   r#   r$   Úorderedõ   s    rU   )ÚfirstÚlastFc                 C   s   | j S )z[
    Valid values for the 'keep' parameter used in
    .duplicated or .drop_duplicates
    rO   rQ   r#   r#   r$   Úkeepý   s    rX   )ÚbothÚneitherÚleftÚrightc                 C   s   | j S )zA
    Fixture for trying all interval 'inclusive' parameters.
    rO   rQ   r#   r#   r$   Úinclusive_endpoints_fixture  s    r]   )r[   r\   rY   rZ   c                 C   s   | j S )z<
    Fixture for trying all interval closed parameters.
    rO   rQ   r#   r#   r$   Úclosed  s    r^   c                 C   s   | j S )zS
    Secondary closed fixture to allow parametrizing over all pairs of closed.
    rO   rQ   r#   r#   r$   Úother_closed  s    r_   ÚgzipÚbz2ÚzipÚxzZzstdZ	zstandard)r3   c                 C   s   | j S )zK
    Fixture for trying common compression types in compression tests.
    rO   rQ   r#   r#   r$   Úcompression  s    rd   c                 C   s   | j S )zk
    Fixture for trying common compression types in compression tests excluding
    uncompressed case.
    rO   rQ   r#   r#   r$   Úcompression_only/  s    re   c                 C   s   | j S )z,
    Fixture that an array is writable.
    rO   rQ   r#   r#   r$   Úwritable@  s    rf   )ÚinnerÚouterr[   r\   c                 C   s   | j S )z:
    Fixture for trying all types of join operations.
    rO   rQ   r#   r#   r$   Ú	join_typeH  s    ri   ÚnlargestÚ	nsmallestc                 C   s   | j S )z1
    Fixture for trying all nselect methods.
    rO   rQ   r#   r#   r$   Únselect_methodP  s    rl   c                 C   s
   t | ƒjS ©N©ÚtypeÚ__name__rI   r#   r#   r$   rK   [  rL   c                 C   s   | j S )z/
    Fixture for each null type in pandas.
    rO   rQ   r#   r#   r$   Únulls_fixture[  s    rq   c                 C   s   | j S )zL
    Fixture for each null type in pandas, each null type exactly once.
    rO   rQ   r#   r#   r$   Úunique_nulls_fixturef  s    rr   c                 C   s
   t | ƒjS rm   rn   rI   r#   r#   r$   rK   r  rL   c                 C   s   | j S )z-
    Fixture for each NaT type in numpy.
    rO   rQ   r#   r#   r$   Únp_nat_fixturer  s    rs   c                 C   s   | j S )z;
    Fixture to parametrize over DataFrame and Series.
    rO   rQ   r#   r#   r$   Úframe_or_seriesƒ  s    rt   rE   Úseriesc                 C   s   | j S )zÑ
    Fixture to parametrize over Index and Series, made necessary by a mypy
    bug, giving an error:

    List item 0 has incompatible type "Type[Series]"; expected "Type[PandasObject]"

    See GH#29725
    rO   rQ   r#   r#   r$   Úindex_or_seriesŒ  s    rv   )rE   ru   Úarrayc                 C   s   | j S )zG
    Fixture to parametrize over Index, Series, and ExtensionArray
    rO   rQ   r#   r#   r$   Úindex_or_series_or_arrayŸ  s    rx   c                 C   s   | j S rm   )rp   rI   r#   r#   r$   rK   §  rL   c                 C   s   | j S )z]
    Fixture to test behavior for Index, Series, DataFrame, and pandas Array
    classes
    rO   rQ   r#   r#   r$   Úbox_with_array§  s    ry   c                  C   s   G dd„ dt ƒ} | S )z,
    Fixture for a dictionary subclass.
    c                   @   s   e Zd Zdd„ ZdS )z"dict_subclass.<locals>.TestSubDictc                 _   s   t j| g|¢R i |¤Ž d S rm   )ÚdictÚ__init__)ÚselfÚargsÚkwargsr#   r#   r$   r{   º  s    z+dict_subclass.<locals>.TestSubDict.__init__N)rp   Ú
__module__Ú__qualname__r{   r#   r#   r#   r$   ÚTestSubDict¹  s   r�   )rz   )r�   r#   r#   r$   Údict_subclass³  s    r‚   c                  C   s   G dd„ dt jƒ} | S )z8
    Fixture for a non-mapping dictionary subclass.
    c                   @   s,   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	S )
z5non_dict_mapping_subclass.<locals>.TestNonDictMappingc                 S   s
   || _ d S rm   )Ú_data)r|   Zunderlying_dictr#   r#   r$   r{   Ç  s    z>non_dict_mapping_subclass.<locals>.TestNonDictMapping.__init__c                 S   s   | j  |¡S rm   )rƒ   Ú__getitem__)r|   Úkeyr#   r#   r$   r„   Ê  s    zAnon_dict_mapping_subclass.<locals>.TestNonDictMapping.__getitem__c                 S   s
   | j  ¡ S rm   )rƒ   Ú__iter__©r|   r#   r#   r$   r†   Í  s    z>non_dict_mapping_subclass.<locals>.TestNonDictMapping.__iter__c                 S   s
   | j  ¡ S rm   )rƒ   Ú__len__r‡   r#   r#   r$   rˆ   Ð  s    z=non_dict_mapping_subclass.<locals>.TestNonDictMapping.__len__N)rp   r   r€   r{   r„   r†   rˆ   r#   r#   r#   r$   ÚTestNonDictMappingÆ  s   r‰   )r   ÚMapping)r‰   r#   r#   r$   Únon_dict_mapping_subclassÀ  s    r‹   c                  C   s^   t  d¡} |  dd„ dd„ dd„ g¡ ¡ }|j dd„ |jjD ƒ¡|_|jjg d¢d	d
� |S )z„
    DataFrame with 3 level MultiIndex (year, month, day) covering
    first 100 business days from 2000-01-01 with random data
    éd   c                 S   s   | j S rm   )ÚyearrI   r#   r#   r$   rK   à  rL   zAmultiindex_year_month_day_dataframe_random_data.<locals>.<lambda>c                 S   s   | j S rm   )r?   rI   r#   r#   r$   rK   à  rL   c                 S   s   | j S rm   )ÚdayrI   r#   r#   r$   rK   à  rL   c                 S   s   g | ]}|  d ¡‘qS )Úi8)Úastype)Ú.0Zlevr#   r#   r$   Ú
<listcomp>â  rL   zCmultiindex_year_month_day_dataframe_random_data.<locals>.<listcomp>)r�   r?   rŽ   T)Zinplace)ÚtmZmakeTimeDataFrameÚgroupbyÚsumrE   Z
set_levelsÚlevelsZ	set_names)ZtdfZymdr#   r#   r$   Ú/multiindex_year_month_day_dataframe_random_dataÙ  s
    
 r—   c                   C   s*   t g d¢g d¢gg d¢g d¢gddgd�S )z;
    2-level MultiIndex, lexsorted, with string names.
    ©ÚfooÚbarÚbazÚqux©ÚoneÚtwoÚthree)
r   r   r   r=   r=   é   r¡   é   r¢   r¢   )
r   r=   r¡   r   r=   r=   r¡   r   r=   r¡   rV   Úsecond)r–   ÚcodesÚnames)r   r#   r#   r#   r$   Ú%lexsorted_two_level_string_multiindexç  s
    ýr¦   c                 C   s(   | }t tj dd¡|tg d¢dd�d�S )z2DataFrame with 2 level MultiIndex with random dataé
   r¢   )ÚAÚBÚCÚexp©Úname)rE   rF   )r   rA   ÚrandomÚrandnr   )r¦   rE   r#   r#   r$   Ú multiindex_dataframe_random_dataó  s    ÿr°   c                  C   sT   t g d¢ƒ} t ddgƒ}t g d¢¡}t g d¢¡}ddg}t| |g||g|dd	�S )
zJ
    MultiIndex used to test the general functionality of this object
    r˜   rž   rŸ   )r   r   r=   r¡   r¢   r¢   )r   r=   r   r=   r   r=   rV   r£   F)r–   r¤   r¥   Zverify_integrity)r   rA   rw   r   )Z
major_axisZ
minor_axisZmajor_codesZminor_codesZindex_namesr#   r#   r$   Ú_create_multiindexü  s    ür±   c                   C   s,   t jddgddgtjdddd�gg d	¢d
�S )zB
    MultiIndex with a level that is a tzaware DatetimeIndex.
    r=   r¡   ÚaÚbÚ20130101r¢   ú
US/Eastern)ZperiodsÚtzr�   )r¥   )r   Zfrom_productrB   Z
date_ranger#   r#   r#   r$   Ú_create_mi_with_dt64tz_level  s    þr·   rŒ   z
US/Pacific)r¶   Úint64©ÚdtypeÚint32Zint16Zint8Zuint64Zuint32Zuint16Zuint8Zfloat64Úfloat32r§   )r™   rš   r›   )r=   r¡   r¢   )r   r   r=   r=   r¡   r¡   ZInt64ZUInt16ZFloat32Úbooleanzstring[python])!ÚunicodeÚstringr   zdatetime-tzÚperiodr   ÚintÚuintÚrangeÚfloatZ	num_int64Z	num_int32Z	num_int16Znum_int8Z
num_uint64Z
num_uint32Z
num_uint16Z	num_uint8Znum_float64Znum_float32ÚboolZcategoricalÚintervalÚemptyÚtuplesúmi-with-dt64tz-levelÚmultiÚrepeatsZnullable_intZnullable_uintZnullable_floatZnullable_boolzstring-pythonzstring[pyarrow]zstring-pyarrowc                 C   s   t | j  ¡ S )zØ
    Fixture for many "simple" kinds of indices.

    These indices are unlikely to cover corner cases, e.g.
        - no names
        - no NaTs/NaNs
        - no values near implementation bounds
        - ...
    )Úindices_dictrP   ÚcopyrQ   r#   r#   r$   rE   C  s    c                 C   s   g | ]}t t| tƒs|‘qS r#   )Ú
isinstancerÌ   r   ©r‘   r…   r#   r#   r$   r’   W  s   r’   c                 C   s   | j }t|  ¡ S )z8
    index fixture, but excluding MultiIndex cases.
    ©rP   rÌ   rÍ   ©rR   r…   r#   r#   r$   Ú
index_flatV  s    	rÒ   c                 C   s(   g | ] }t t| tƒst| jr|‘qS r#   )rÎ   rÌ   r   Z	is_uniquerÏ   r#   r#   r$   r’   h  s   þc                 C   s   | j }t|  ¡ S )z1
    index_flat with uniqueness requirement.
    rÐ   rÑ   r#   r#   r$   Úindex_flat_uniqueg  s    rÓ   c                 C   s0   g | ](}|d v s|  d¡stt| tƒs|‘qS ))rÁ   rÂ   rÃ   rÇ   rË   Znum_)Ú
startswithrÎ   rÌ   r   rÏ   r#   r#   r$   r’   w  s
   
úc                 C   s„   t | j jdd�}|j}| jdv rd| ¡ }d|d dd…  |d< d|d dd…  |d< t |¡S d|d< d|d< t|ƒ|ƒS dS )	zÙ
    Fixture for indices with missing values.

    Integer-dtype and empty cases are excluded because they cannot hold missing
    values.

    MultiIndex is excluded because isna() is not defined for MultiIndex.
    T©Údeep)rÈ   rÉ   rÊ   rm   r   r=   Néÿÿÿÿ)rÌ   rP   rÍ   ÚvaluesÚtolistr   Úfrom_tuplesro   )rR   ÚindÚvalsr#   r#   r$   Úindex_with_missingv  s    

rÝ   c                  C   s   t  ¡ } d| _| S )zC
    Fixture for Series of floats with Index of unique strings
    ru   )r“   ZmakeStringSeriesr­   ©Úsr#   r#   r$   Ústring_seriesž  s    rà   c                  C   s   t  ¡ } d| _| S )zI
    Fixture for Series of dtype object with Index of unique strings
    Úobjects)r“   ZmakeObjectSeriesr­   rÞ   r#   r#   r$   Úobject_series¨  s    râ   c                  C   s   t  ¡ } d| _| S )z9
    Fixture for Series of floats with DatetimeIndex
    Úts)r“   ZmakeTimeSeriesr­   rÞ   r#   r#   r$   Údatetime_series²  s    rä   c                 C   s"   t | ƒ}tj |¡}t|| dd�S )zHelper for the _series dictr²   )rE   r­   )ÚlenrA   r®   r¯   r   )rE   ÚsizeÚdatar#   r#   r$   Ú_create_series¼  s    rè   c                 C   s"   i | ]\}}d |› d�t |ƒ“qS )zseries-with-z-index©rè   )r‘   Zindex_idrE   r#   r#   r$   Ú
<dictcomp>Ã  s   ÿrê   c                 C   s   t | ƒS )zE
    Fixture for tests on series with changing types of indices.
    ré   ©rE   r#   r#   r$   Úseries_with_simple_indexÉ  s    rì   c                  C   sH   g d¢g d¢g} t | Ž }t |¡}tj d¡}t||d�}tj|d< |S )z:
    Fixture with a Series with a 2-level MultiIndex.
    )rš   rš   r›   r›   rœ   rœ   r™   r™   )rž   rŸ   rž   rŸ   rž   rŸ   rž   rŸ   é   rë   r¢   )rb   r   rÚ   rA   r®   r¯   r   ÚNaN)ZarraysrÈ   rE   rç   Zserr#   r#   r$   Úseries_with_multilevel_indexÑ  s    þ

rï   c                 C   s(   i | ] }|j › d �tjdd� |¡“qS )z-seriesr²   r¬   )rp   r“   ZmakeFloatSeriesr�   )r‘   rº   r#   r#   r$   rê   â  s   ÿc                 C   s   t | j jdd�S )z|
    Fixture for tests on indexes, series and series with a narrow dtype
    copy to avoid mutation, e.g. setting .name
    TrÕ   )Ú_index_or_series_objsrP   rÍ   rQ   r#   r#   r$   Úindex_or_series_objë  s    rñ   c                   C   s   t t ¡ ƒ d¡S )a6  
    Fixture for DataFrame of ints with index of unique strings

    Columns are ['A', 'B', 'C', 'D']

                A  B  C  D
    vpBeWjM651  1  0  1  0
    5JyxmrP1En -1  0  0  0
    qEDaoD49U2 -1  1  0  0
    m66TkTfsFe  0  0  0  0
    EHPaNzEUFm -1  0 -1  0
    fpRJCevQhi  2  0  0  0
    OlQvnmfi3Q  0  0 -2  0
    ...        .. .. .. ..
    uB1FPlz4uP  0  0  0  1
    EcSe6yNzCU  0  0 -1  0
    L50VudaiI8 -1  1 -2  0
    y3bpw4nwIp  0 -1  0  0
    H0RdLLwrCT  1  1  0  0
    rY82K0vMwm  0  0  0  0
    1OPIUjnkjk  2  0  0  0

    [30 rows x 4 columns]
    r¸   )r   r“   ÚgetSeriesDatar�   r#   r#   r#   r$   Ú	int_frame÷  s    ró   c                   C   s   t t ¡ ƒS )aî  
    Fixture for DataFrame of floats with DatetimeIndex

    Columns are ['A', 'B', 'C', 'D']

                       A         B         C         D
    2000-01-03 -1.122153  0.468535  0.122226  1.693711
    2000-01-04  0.189378  0.486100  0.007864 -1.216052
    2000-01-05  0.041401 -0.835752 -0.035279 -0.414357
    2000-01-06  0.430050  0.894352  0.090719  0.036939
    2000-01-07 -0.620982 -0.668211 -0.706153  1.466335
    2000-01-10 -0.752633  0.328434 -0.815325  0.699674
    2000-01-11 -2.236969  0.615737 -0.829076 -1.196106
    ...              ...       ...       ...       ...
    2000-02-03  1.642618 -0.579288  0.046005  1.385249
    2000-02-04 -0.544873 -1.160962 -0.284071 -1.418351
    2000-02-07 -2.656149 -0.601387  1.410148  0.444150
    2000-02-08 -1.201881 -1.289040  0.772992 -1.445300
    2000-02-09  1.377373  0.398619  1.008453 -0.928207
    2000-02-10  0.473194 -0.636677  0.984058  0.511519
    2000-02-11 -0.965556  0.408313 -1.312844 -0.381948

    [30 rows x 4 columns]
    )r   r“   ZgetTimeSeriesDatar#   r#   r#   r$   Údatetime_frame  s    rô   c                   C   s   t t ¡ ƒS )aù  
    Fixture for DataFrame of floats with index of unique strings

    Columns are ['A', 'B', 'C', 'D'].

                       A         B         C         D
    P7GACiRnxd -0.465578 -0.361863  0.886172 -0.053465
    qZKh6afn8n -0.466693 -0.373773  0.266873  1.673901
    tkp0r6Qble  0.148691 -0.059051  0.174817  1.598433
    wP70WOCtv8  0.133045 -0.581994 -0.992240  0.261651
    M2AeYQMnCz -1.207959 -0.185775  0.588206  0.563938
    QEPzyGDYDo -0.381843 -0.758281  0.502575 -0.565053
    r78Jwns6dn -0.653707  0.883127  0.682199  0.206159
    ...              ...       ...       ...       ...
    IHEGx9NO0T -0.277360  0.113021 -1.018314  0.196316
    lPMj8K27FA -1.313667 -0.604776 -1.305618 -0.863999
    qa66YMWQa5  1.110525  0.475310 -0.747865  0.032121
    yOa0ATsmcE -0.431457  0.067094  0.096567 -0.264962
    65znX3uRNG  1.528446  0.160416 -0.109635 -0.032987
    eCOBvKqf3e  0.235281  1.622222  0.781255  0.392871
    xSucinXxuV -1.263557  0.252799 -0.552247  0.400426

    [30 rows x 4 columns]
    )r   r“   rò   r#   r#   r#   r$   Úfloat_frame1  s    rõ   c                	   C   s>   t dddtjdgd dd�tjdgd dd�d	œt d¡d
�S )z€
    Fixture for DataFrame of float/int/string columns with RangeIndex
    Columns are ['a', 'b', 'c', 'float32', 'int32'].
    ç      ð?r¡   r™   r§   r¼   r¹   r=   r»   )r²   r³   Úcr¼   r»   rë   )r   rA   rw   Úaranger#   r#   r#   r$   Úmixed_type_frameN  s    ûørù   c                  C   s€   t dddƒt dddƒt dddƒt dddƒt dddƒt dddƒt dddƒt dddƒt dddƒt dddƒg
} ttj t| ƒ¡| d�S )zF
    Fixture for Series with a DatetimeIndex that has duplicates.
    iÐ  r=   r¡   r¢   é   r<   rë   )r   r   rA   r®   r¯   rå   )Údatesr#   r#   r$   Ú(rand_series_with_duplicate_datetimeindex`  s    









örü   )r[   r\   r\   gš™™™™™¹?g      à?z2012-01ÚM)Úfreqz	period[M]z
2012-02-01ÚDz	period[D]z
2011-01-01rµ   iô  )Úsecondsztimedelta64[ns]c                 C   s   | j S rm   rO   rQ   r#   r#   r$   Úea_scalar_and_dtypex  s    r  )Ú__add__Ú__radd__Ú__sub__Ú__rsub__Ú__mul__Ú__rmul__Ú__floordiv__Ú__rfloordiv__Ú__truediv__Ú__rtruediv__Ú__pow__Ú__rpow__Ú__mod__Ú__rmod__c                 C   s   | j S )zD
    Fixture for dunder names for common arithmetic operations.
    rO   rQ   r#   r#   r$   Úall_arithmetic_operatorsž  s    r  c                 C   s   | j S )zU
    Fixture for operator and roperator arithmetic, comparison, and logical ops.
    rO   rQ   r#   r#   r$   Úall_binary_operators¦  s    "r  c                 C   s   | j S )z¬
    Fixture for operator and roperator arithmetic functions.

    Notes
    -----
    This includes divmod and rdivmod, whereas all_arithmetic_operators
    does not.
    rO   rQ   r#   r#   r$   Úall_arithmetic_functionsË  s    r  )
r•   ÚmaxÚminÚmeanÚprodZstdÚvarZmedianZkurtZskewc                 C   s   | j S )z.
    Fixture for numeric reduction names.
    rO   rQ   r#   r#   r$   Úall_numeric_reductions÷  s    r  ÚallÚanyc                 C   s   | j S )z.
    Fixture for boolean reduction names.
    rO   rQ   r#   r#   r$   Úall_boolean_reductions  s    r  c                 C   s   | j S )z>
    Fixture for all (boolean + numeric) reduction names.
    rO   rQ   r#   r#   r$   Úall_reductions  s    r  c                 C   s   | j S )z;
    Fixture for operator module comparison functions.
    rO   rQ   r#   r#   r$   Úcomparison_op  s    r  )Ú__le__Ú__lt__Ú__ge__Ú__gt__c                 C   s   | j S )zm
    Fixture for dunder names for compare operations except == and !=

    * >=
    * >
    * <
    * <=
    rO   rQ   r#   r#   r$   Úcompare_operators_no_eq_ne&  s    
r"  )Ú__and__Ú__rand__Ú__or__Ú__ror__Ú__xor__Ú__rxor__c                 C   s   | j S )zY
    Fixture for dunder names for common logical operations

    * |
    * &
    * ^
    rO   rQ   r#   r#   r$   Úall_logical_operators3  s    r)  c                 C   s
   |   d¡S )zO
    Returns the configuration for the test setting `--strict-data-files`.
    r!   )r+   )Zpytestconfigr#   r#   r$   Ústrict_data_filesD  s    r*  c                    s(   t j t j t¡d¡‰ ‡ ‡fdd„}|S )a=  
    Get the path to a data file.

    Parameters
    ----------
    path : str
        Path to the file, relative to ``pandas/tests/``

    Returns
    -------
    path including ``pandas/tests``.

    Raises
    ------
    ValueError
        If the path doesn't exist and the --strict-data-files option is set.
    Útestsc                     sL   t jjˆ g| ¢R Ž }t j |¡sHˆr6td|› d�ƒ‚nt d|› d�¡ |S )NzCould not find file z  and --strict-data-files is set.zCould not find Ú.)ÚosÚpathÚjoinÚexistsÚ
ValueErrorr,   r0   )r}   r.  ©Z	BASE_PATHr*  r#   r$   Údecoa  s    
ÿzdatapath.<locals>.deco)r-  r.  r/  ÚdirnameÚ__file__)r*  r3  r#   r2  r$   ÚdatapathL  s    r6  c                 C   s   t  | ddddƒ¡S )z*
    The iris dataset as a DataFrame.
    Úiorç   Úcsvziris.csv)rB   Zread_csv)r6  r#   r#   r$   Úiriso  s    r9  ÚUTCz
Asia/Tokyozdateutil/US/Pacificzdateutil/Asia/Singaporez+01:15z-02:15z	UTC+01:15z	UTC-02:15i,  iÔþÿÿ)Úhoursr×   r™   r¬   c                 C   s   g | ]}t |ƒ‘qS r#   rG   )r‘   Úir#   r#   r$   r’   Ž  rL   c                 C   s   | j S )zD
    Fixture for trying timezones including default (None): {0}
    rO   rQ   r#   r#   r$   Útz_naive_fixture‘  s    r=  c                 C   s   | j S )z4
    Fixture for trying explicit timezones: {0}
    rO   rQ   r#   r#   r$   Útz_aware_fixtureš  s    r>  r   zdateutil/UTCc                 C   s   | j S )zQ
    Fixture to provide variants of UTC timezone strings and tzinfo objects.
    rO   rQ   r#   r#   r$   Úutc_fixture§  s    r?  c                 C   s   | j S )zR
    Parametrized fixture for string dtypes.

    * str
    * 'str'
    * 'U'
    rO   rQ   r#   r#   r$   Ústring_dtypeµ  s    	r@  Úpyarrowz1.0.0)Úmin_versionc                 C   s   | j S )za
    Parametrized fixture for string dtypes.

    * 'string[python]'
    * 'string[pyarrow]'
    rO   rQ   r#   r#   r$   Únullable_string_dtypeÁ  s    rC  Úpythonc                 C   s   | j S )zb
    Parametrized fixture for pd.options.mode.string_storage.

    * 'python'
    * 'pyarrow'
    rO   rQ   r#   r#   r$   Ústring_storageÓ  s    rE  c                 C   s   | j S )zK
    Parametrized fixture for bytes dtypes.

    * bytes
    * 'bytes'
    rO   rQ   r#   r#   r$   Úbytes_dtypeç  s    rF  c                 C   s   | j S )zN
    Parametrized fixture for object dtypes.

    * object
    * 'object'
    rO   rQ   r#   r#   r$   Úobject_dtypeò  s    rG  Úobjectc                 C   s   | j S )zo
    Parametrized fixture for string dtypes.
    * 'object'
    * 'string[python]'
    * 'string[pyarrow]'
    rO   rQ   r#   r#   r$   Úany_string_dtypeý  s    rI  c                 C   s   | j S )z\
    Parametrized fixture for datetime64 dtypes.

    * 'datetime64[ns]'
    * 'M8[ns]'
    rO   rQ   r#   r#   r$   Údatetime64_dtype  s    rJ  c                 C   s   | j S )z^
    Parametrized fixture for timedelta64 dtypes.

    * 'timedelta64[ns]'
    * 'm8[ns]'
    rO   rQ   r#   r#   r$   Útimedelta64_dtype  s    rK  c                	   C   s   t dddddddd�S )z-
    Fixture emits fixed Timestamp.now()
    iå  r=   r>   rú   é   é   )r�   r?   rŽ   ÚhourÚminuter£   Úmicrosecond)r   r#   r#   r#   r$   Úfixed_now_ts&  s    ÿrQ  c                 C   s   | j S )z^
    Parameterized fixture for float dtypes.

    * float
    * 'float32'
    * 'float64'
    rO   rQ   r#   r#   r$   Úfloat_numpy_dtype0  s    	rR  c                 C   s   | j S )zR
    Parameterized fixture for float dtypes.

    * 'Float32'
    * 'Float64'
    rO   rQ   r#   r#   r$   Úfloat_ea_dtype<  s    rS  c                 C   s   | j S )z~
    Parameterized fixture for float dtypes.

    * float
    * 'float32'
    * 'float64'
    * 'Float32'
    * 'Float64'
    rO   rQ   r#   r#   r$   Úany_float_dtypeG  s    rT  c                 C   s   | j S )zg
    Parameterized fixture for complex dtypes.

    * complex
    * 'complex64'
    * 'complex128'
    rO   rQ   r#   r#   r$   Úcomplex_dtypeU  s    	rU  c                 C   s   | j S )z|
    Parameterized fixture for signed integer dtypes.

    * int
    * 'int8'
    * 'int16'
    * 'int32'
    * 'int64'
    rO   rQ   r#   r#   r$   Úany_signed_int_numpy_dtypea  s    rV  c                 C   s   | j S )zx
    Parameterized fixture for unsigned integer dtypes.

    * 'uint8'
    * 'uint16'
    * 'uint32'
    * 'uint64'
    rO   rQ   r#   r#   r$   Úany_unsigned_int_numpy_dtypeo  s    
rW  c                 C   s   | j S )z³
    Parameterized fixture for any integer dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    rO   rQ   r#   r#   r$   Úany_int_numpy_dtype|  s    rX  c                 C   s   | j S )z²
    Parameterized fixture for any nullable integer dtype.

    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    rO   rQ   r#   r#   r$   Úany_int_ea_dtypeŽ  s    rY  c                 C   s   | j S )a.  
    Parameterized fixture for any nullable integer dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    rO   rQ   r#   r#   r$   Úany_int_dtypeŸ  s    rZ  c                 C   s   | j S )zî
    Parameterized fixture for any nullable integer dtype and
    any float ea dtypes.

    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    * 'Float32'
    * 'Float64'
    rO   rQ   r#   r#   r$   Úany_numeric_ea_dtype¹  s    r[  c                 C   s   | j S )z~
    Parameterized fixture for any signed nullable integer dtype.

    * 'Int8'
    * 'Int16'
    * 'Int32'
    * 'Int64'
    rO   rQ   r#   r#   r$   Úany_signed_int_ea_dtypeÍ  s    
r\  c                 C   s   | j S )zí
    Parameterized fixture for any (purely) real numeric dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'
    rO   rQ   r#   r#   r$   Úany_real_numpy_dtypeÚ  s    r]  c                 C   s   | j S )aÌ  
    Parameterized fixture for all numpy dtypes.

    * bool
    * 'bool'
    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'
    * complex
    * 'complex64'
    * 'complex128'
    * str
    * 'str'
    * 'U'
    * bytes
    * 'bytes'
    * 'datetime64[ns]'
    * 'M8[ns]'
    * 'timedelta64[ns]'
    * 'm8[ns]'
    * object
    * 'object'
    rO   rQ   r#   r#   r$   Úany_numpy_dtypeï  s    "r^  r¿   r²   r÷   Úbytesó   aó   crÇ   zmixed-integerr¡   Úmixedg       @Zfloatingrö   Úintegerzmixed-integer-floatÚdecimalÚ
datetime64z
2013-01-01z
2018-01-01r   r´   Z20180101r   iÝ  iâ  r   r   rÀ   rÆ   c                 C   s    | j \}}tj|td�}||fS )a�  
    Fixture for all inferred dtypes from _libs.lib.infer_dtype

    The covered (inferred) types are:
    * 'string'
    * 'empty'
    * 'bytes'
    * 'mixed'
    * 'mixed-integer'
    * 'mixed-integer-float'
    * 'floating'
    * 'integer'
    * 'decimal'
    * 'boolean'
    * 'datetime64'
    * 'datetime'
    * 'date'
    * 'timedelta'
    * 'time'
    * 'period'
    * 'interval'

    Returns
    -------
    inferred_dtype : str
        The string for the inferred dtype from _libs.lib.infer_dtype
    values : np.ndarray
        An array of object dtype that will be inferred to have
        `inferred_dtype`

    Examples
    --------
    >>> import pandas._libs.lib as lib
    >>>
    >>> def test_something(any_skipna_inferred_dtype):
    ...     inferred_dtype, values = any_skipna_inferred_dtype
    ...     # will pass
    ...     assert lib.infer_dtype(values, skipna=True) == inferred_dtype
    r¹   )rP   rA   rw   rH  )rR   Zinferred_dtyperØ   r#   r#   r$   Úany_skipna_inferred_dtype2  s    )
rf  c                  C   s>   t jddd� ddlm}  ddlm} |ƒ }d|j_| |d�S )	zj
    Get an instance of IPython.InteractiveShell.

    Will raise a skip if IPython is not installed.
    ZIPythonz6.0.0)Z
minversionr   )ÚInteractiveShell)ÚConfigz:memory:)r2   )r,   ÚimportorskipZIPython.core.interactiveshellrg  Ztraitlets.configrh  ZHistoryManagerZ	hist_file)rg  rh  r÷   r#   r#   r$   Úipe  s    rj  )ZbsrZcooZcscZcsrZdiaZdokZlilc                 C   s   ddl m} t|| jd ƒS )z-
    Yields scipy sparse matrix classes.
    r   )ÚsparseZ_matrix)Zscipyrk  ÚgetattrrP   )rR   rk  r#   r#   r$   Úspmatrixx  s    rm  c                 C   s.   g | ]&}t ttj|ƒtjjƒrttj|ƒ‘qS r#   )Ú
issubclassrl  rB   ÚoffsetsZTick)r‘   Úor#   r#   r$   r’   ƒ  s   þc                 C   s   | j S )zN
    Fixture for Tick based datetime offsets available for a time series.
    rO   rQ   r#   r#   r$   Útick_classes‚  s    rq  c                 C   s   | S rm   r#   rI   r#   r#   r$   rK   �  rL   c                 C   s   | j S )zk
    Simple fixture for testing keys in sorting methods.
    Tests None (no key) and the identity key.
    rO   rQ   r#   r#   r$   Úsort_by_key�  s    rr  c                  c   sx   t  d¡ ddlm}  ddlm} ddlm} G dd„ d|ƒ}| d|d	d
� |ƒ V  | dd ¡ d |j	d< |j
 ¡  d S )NÚfsspecr   )Úregister_implementation)ÚMemoryFileSystem)Ú	_registryc                       s&   e Zd ZdZdgZ‡ fdd„Z‡  ZS )z fsspectest.<locals>.TestMemoryFSÚtestmemNc                    s(   |  dd ¡| jd< tƒ jf i |¤Ž d S )NÚtestr   )Úpoprx  Úsuperr{   )r|   r~   ©Ú	__class__r#   r$   r{   ¤  s    z)fsspectest.<locals>.TestMemoryFS.__init__)rp   r   r€   Úprotocolrx  r{   Ú__classcell__r#   r#   r{  r$   ÚTestMemoryFS   s   r  rw  T)Úclobber)r,   ri  rs  rt  Zfsspec.implementations.memoryru  Zfsspec.registryrv  ry  rx  ÚstoreÚclear)rt  ru  Úregistryr  r#   r#   r$   Ú
fsspectest™  s    

r„  )r™   NN)ZEgonZVenkmanN)ÚNCC1701Dr…  r…  c                 C   s   | j S )zP
    A 3-tuple of names, the first two for operands, the last for a result.
    rO   rQ   r#   r#   r$   r¥   ¯  s    r¥   c                 C   s   | j S )zI
    Parametrize over __setitem__, loc.__setitem__, iloc.__setitem__
    rO   rQ   r#   r#   r$   Úindexer_sliÂ  s    r†  c                 C   s   | j S )z8
    Parametrize over __setitem__, iloc.__setitem__
    rO   rQ   r#   r#   r$   Ú
indexer_siÊ  s    r‡  c                 C   s   | j S )z7
    Parametrize over __setitem__, loc.__setitem__
    rO   rQ   r#   r#   r$   Ú
indexer_slÒ  s    rˆ  c                 C   s   | j S )z:
    Parametrize over at.__setitem__, loc.__setitem__
    rO   rQ   r#   r#   r$   Ú
indexer_alÚ  s    r‰  c                 C   s   | j S )z<
    Parametrize over iat.__setitem__, iloc.__setitem__
    rO   rQ   r#   r#   r$   Úindexer_ialâ  s    rŠ  c                 C   s   t jjjdkS )z>
    Fixture to check if the array manager is being used.
    rw   )rB   ÚoptionsÚmodeZdata_managerrQ   r#   r#   r$   Úusing_array_managerê  s    r�  (  Ú__doc__Úcollectionsr   r   r   r   r   r   rd  r   Úoperatorr-  Zdateutil.tzr	   r
   Z
hypothesisr   ÚstÚnumpyrA   r,   Zpytzr   r   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsÚtdZpandas.core.dtypes.dtypesr   r   ZpandasrB   r   r   r   r   r   r   Zpandas._testingZ_testingr“   Zpandas.corer   Zpandas.core.indexes.apir   r   rA  ÚpaÚImportErrorZhas_pyarrowr-   Úfilterwarningsr.   r%   r5   ÚsettingsZregister_profileZHealthCheckZtoo_slowZload_profileÚsplitr­   rl  Ztseriesro  ÚclsZregister_type_strategyZbuildsZintegersZbooleansZfixturer*   rD   rS   Z
axis_framerT   rU   rX   r]   r^   r_   rP   Z
skip_if_nord   re   rf   ri   rl   ZNULL_OBJECTSrq   Znulls_fixture2ÚnanZNaTrr   Zunique_nulls_fixture2ZNP_NAT_OBJECTSrs   Znp_nat_fixture2rt   rv   Zindex_or_series2rw   rx   ry   Zbox_with_array2r‚   r‹   r—   r¦   r°   r±   r·   ZmakeUnicodeIndexZmakeStringIndexZmakeDateIndexZmakePeriodIndexZmakeTimedeltaIndexZmakeIntIndexZmakeUIntIndexZmakeRangeIndexZmakeFloatIndexZmakeNumericIndexZmakeBoolIndexZmakeCategoricalIndexZmakeIntervalIndexrÚ   rb   rø   r�   rÅ   rÌ   ÚidxÚkeysrE   Zindex_fixture2rÒ   Zindex_flat2rÓ   rÝ   rà   râ   rä   rè   r1   Z_seriesrì   rï   ZNARROW_NP_DTYPESZ_narrow_seriesrð   rñ   ró   rô   rõ   rù   rü   r  Z_all_arithmetic_operatorsr  ÚaddZraddÚsubZrsubÚmulZrmulÚtruedivZrtruedivÚfloordivZ	rfloordivÚmodZrmodÚpowZrpowÚeqÚneÚltÚleÚgtÚgeÚand_Zrand_ÚxorZrxorÚor_Zror_r  r  Z_all_numeric_reductionsr  Z_all_boolean_reductionsr  Z_all_reductionsr  r  r"  r)  r*  r6  r9  Z	TIMEZONESZTIMEZONE_IDSZparametrize_fixture_docÚstrr=  r>  Ztz_aware_fixture2r?  Zutc_fixture2ZSTRING_DTYPESr@  rC  rE  Zstring_storage2ZBYTES_DTYPESrF  ZOBJECT_DTYPESrG  rI  ZDATETIME64_DTYPESrJ  ZTIMEDELTA64_DTYPESrK  rQ  ZFLOAT_NUMPY_DTYPESrR  ZFLOAT_EA_DTYPESrS  rT  ZCOMPLEX_DTYPESrU  ZSIGNED_INT_NUMPY_DTYPESrV  ZUNSIGNED_INT_NUMPY_DTYPESrW  ZALL_INT_NUMPY_DTYPESrX  ZALL_INT_EA_DTYPESrY  rZ  r[  ZSIGNED_INT_EA_DTYPESr\  ZALL_REAL_NUMPY_DTYPESr]  ZALL_NUMPY_DTYPESr^  ZNAre  Z_any_skipna_inferred_dtyperN   Ú_rf  rj  rm  Ú__all__rq  rr  r„  r¥   ÚsetitemÚlocZilocr†  r‡  rˆ  Úatr‰  ZiatrŠ  r�  r#   r#   r#   r$   Ú<module>   s¶   
ÿ
/öÿ
üþ

üþ










úÿ

ûÿ	








ÿ








ß#
ÿÿ
	þÿ
þÿ

	
	
	þ

þ






þ÷ÿ


æÿ
òÿ






úÿ


ÿ


"
î

ÿþÿ
þÿ

ÿýÿ	


	
& $è2	þÿøÿ