a
    é´«jÂç ã                   @   sÊ  d dl Z d dl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
mZ d dlZd dlZd dlZd dlmZ d dlmZ d dlZd dlZd dlmZ d d	lmZ d d
lmZ d dlm  mZ d dl m!Z! d dl"m#Z#m$Z$m%Z%m&Z& d dl'Z(d dl'm)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7 d dl8m9Z: d dl;m<Z<m=Z=m>Z>m?Z?m@Z@ g d¢ZAg d¢ZBG dd„ dƒZCG dd„ dƒZDG dd„ dƒZEG dd„ dƒZFdd„ ZGG dd„ dƒZHG dd„ dƒZIdS )é    N)ÚOrderedDictÚabcÚdefaultdictÚ
namedtuple)ÚIterator)Úmake_dataclass)ÚdateÚdatetimeÚ	timedelta)Úma)Úmrecords)Úlib)Únp_version_gt2)ÚIntCastingNaNError)Úis_integer_dtype)ÚDatetimeTZDtypeÚIntervalDtypeÚNumpyEADtypeÚPeriodDtype)ÚCategoricalÚCategoricalIndexÚ	DataFrameÚDatetimeIndexÚIndexÚIntervalÚ
MultiIndexÚPeriodÚ
RangeIndexÚSeriesÚ	TimedeltaÚ	TimestampÚcutÚ
date_rangeÚisna)ÚDatetimeArrayÚIntervalArrayÚPeriodArrayÚSparseArrayÚTimedeltaArray)Zfloat16Zfloat32Úfloat64)Úuint8Úuint16Úuint32Úuint64Úint8Zint16Úint32Úint64c                   @   sÄ  e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zej dddg¡dd„ ƒZ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„ g¡d'd(„ ƒZej dd)d„ d*d„ g¡d+d,„ ƒZej d-g ged.ƒed/ƒfg g ged0ƒed/ƒfd1d2„ d3D ƒged.ƒed/ƒfg¡d4d5„ ƒZd6d7„ Zd8d9„ Zd:d;„ Zd<d=„ Zd>d?„ Zejd@dA„ ƒZejdBdC„ ƒZdDdE„ ZdFdG„ Zej dHdIi gdId.dJdKdLœgdMi gg¡dNdO„ ƒZ dPdQ„ Z!dRdS„ Z"dTdU„ Z#dVdW„ Z$dXdY„ Z%ej dZe&j'd[ge(d\�e& 'd0d] g¡d^ge&j'd_ge(d\�e& 'd`g¡d0d]  d0 gg¡dadb„ ƒZ)ej dZe&j'd.ge&j*d\�e&j'd.ge&j+d\�e&j'd.ge&j,d\�e& *d.¡ge& +d.¡ge& ,d.¡gg¡dcdd„ ƒZ-dedf„ Z.dgdh„ Z/didj„ Z0dkdl„ Z1dmdn„ Z2dodp„ Z3dqdr„ Z4dsdt„ Z5ej dud0e&j6dvdwg¡dxdy„ ƒZ7ej dzd0e&j6dve8d{ƒg¡d|d}„ ƒZ9ej dze&j6dve8d{ƒg¡d~d„ ƒZ:d€d�„ Z;d‚dƒ„ Z<d„d…„ Z=d†d‡„ Z>dˆd‰„ Z?dŠd‹„ Z@dŒd�„ ZAdŽd�„ ZBd�d‘„ ZCd’d“„ ZDd”d•„ ZEd–d—„ ZFd˜d™„ ZGdšd›„ ZHdœd�„ ZIdždŸ„ ZJd d¡„ ZKd¢d£„ ZLej d¤d¥d„ d¦fd§d„ d¨fd©d„ dªfd«d„ d¬fg¡d­d®„ ƒZMd¯d°„ ZNd±d²„ ZOej d³ePd´ƒeQdƒfeRd/dµd¶�eSd·d¸ƒfeTd¹dºd»�eUd¼dºd½�fg¡d¾d¿„ ƒZVdÀdÁ„ ZWdÂdÃ„ ZXdÄdÅ„ ZYdÆdÇ„ ZZej [dÈ¡dÉdÊ„ ƒZ\dËdÌ„ Z]dÍdÎ„ Z^dÏdÐ„ Z_ej dÑdve`eadÒƒƒdÓdÔge(e&jbfdvdvdÓdÔgd·e& cd·¡fdve`eadÒƒƒdÓdÔgede& cdÕ¡fi dvdJdKgdve&jbfdÔd.ie`eadÒƒƒe`dÖƒede& cdÕ¡fg¡d×dØ„ ƒZeej dÙg dÚ¢dÛefjgfg dÜ¢dÝefjhfg dÞ¢dßefjifg dà¢dáefjjff¡dâdã„ ƒZkdädå„ Zldædç„ Zmdèdé„ Zndêdë„ Zodìdí„ Zpdîdï„ Zqdðdñ„ Zrdòdó„ Zsdôdõ„ Ztdöd÷„ Zudødù„ Zvej dúeTdûƒggdüeTdûƒigdüeTdûƒgidüeTdûƒ wdý¡ig¡dþdÿ„ ƒZx�d �d„ Zy�d�d„ Zz�d�d„ Z{�d�d„ Z|�d�d	„ Z}�d
�d„ Z~�d�d„ Z�d�d„ Z€�d�d„ Z��d�d„ Z‚ej �deƒe„g¡�d�d„ ƒZ…ej �deƒe„g¡�d�d„ ƒZ†�d�d„ Z‡�d�d„ Zˆ�d�d„ Z‰�d�d „ ZŠ�d!�d"„ Z‹�d#�d$„ ZŒ�d%�d&„ Z�ej �d'd3g fd3g f�d(d3d3gf�d(g g gfg g fg g gfd.gd0gfd.gd0ggfg �d)¢g �d*¢fg �d)¢g �d*¢gfg¡�d+�d,„ ƒZŽ�d-�d.„ Z��d/�d0„ Z��d1�d2„ Z‘�d3�d4„ Z’�d5�d6„ Z“�d7�d8„ Z”�d9�d:„ Z•�d;�d<„ Z–�d=�d>„ Z—ej �d?g �d@¢¡�dA�dB„ ƒZ˜�dC�dD„ Z™�dE�dF„ Zš�dG�dH„ Z›�dI�dJ„ Zœ�dK�dL„ Z��dM�dN„ Zž�dO�dP„ ZŸ�dQ�dR„ Z �dS�dT„ Z¡�dU�dV„ Z¢�dW�dX„ Z£�dY�dZ„ Z¤�d[�d\„ Z¥�d]�d^„ Z¦ej �d_e& 'dvdvdvdve§ ¨¡ dvg¡e& 'dvdve§ ¨¡ dvg¡e& ©�d`¡gdvgge& ©�d`¡gefjªggdvge& ©�d`¡ggdvgefjªggefjªge& ©�d`¡ggefjªgdvggg¡�da�db„ ƒZ«ej �dcg �dd¢¡ej �deg �df¢¡�dg�dh„ ƒƒZ¬ej �dcg �dd¢¡ej �deg �di¢¡�dj�dk„ ƒƒZ­�dl�dm„ Z®�dn�do„ Z¯�dp�dq„ Z°�dr�ds„ Z±�dt�du„ Z²ej �dve³g �d)¢g �d*¢gd.e&j6g�dw�e³g �d)¢g �d*¢g�dx�dye&j6g�dz�e³g �d{¢g �d|¢ge&j6�dx�dye&j6g�dz�e³g �d}¢g �d|¢ge&j6�dx�dye&j6g�dz�e³g �d}¢g �d|¢ge&j6d.d0d0g�dz�g¡�d~�d„ ƒZ´�d€�d�„ Zµ�d‚�dƒ„ Z¶�d„�d…„ Z·�d†�d‡„ Z¸�dˆ�d‰„ Z¹�dŠ�d‹„ Zº�dŒ�d�„ Z»�dŽ�d�„ Z¼ej �d�e½j¾e½j¿ e½jÀ e½jÁ ¡�d‘�d’„ ƒZÂej �d�e½jÃe½jÄ e½jÅ ¡�d“�d”„ ƒZÆ�d•�d–„ ZÇejjÈej �d�g �d—¢¡�d˜�d™„ ƒƒZÉ�dš�d›„ ZÊej �dœeËe`�d�ƒƒeÌd.e&j6e&j6e&j6gƒeÍeRd/d.ƒeRd.dµƒgƒeÎefjÏ�dž�dŸd�d �ƒg¡�d¡�d¢„ ƒZÐ�d£�d¤„ ZÑ�d¥�d¦„ ZÒej [�d§¡�d¨�d©„ ƒZÓ�dª�d«„ ZÔ�d¬�d­„ ZÕ�d®�d¯„ ZÖ�d°�d±„ Z×�d²�d³„ ZØej �d´d.d0g�dµ�d¶ge`eÙ�d·d0�d¸�d¹�ƒe`eÙ�d·d0�d¸dº�dº�ƒeRd/dµd¶�gg¡�d»�d¼„ ƒZÚ�d½�d¾„ ZÛej �d¿�dÀ�dÁg¡�dÂ�dÃ„ ƒZÜ�dÄ�dÅ„ ZÝ�dÆ�dÇ„ ZÞ�dÈ�dÉ„ Zß�dÊ�dË„ Zàej �dÌd.gd0gge& 'd.gd0gg¡fe& 'd.gd0gg¡d.gd0ggfe& 'd.gd0gg¡e& 'd.gd0gg¡fg¡�dÍ�dÎ„ ƒZá�dÏ�dÐ„ Zâ�dÑ�dÒ„ Zã�dÓ�dÔ„ Zä�dÕ�dÖ„ Zå�d×�dØ„ Zæ�dÙ�dÚ„ Zç�dÛ�dÜ„ ZèdvS (Ý  ÚTestDataFrameConstructorsc                 C   s@   t  d¡ dd¡}t|td�}t| t¡dd�}t ||¡ d S )Né   é   é   ©ÚdtypeÚstr)ÚnpÚarangeÚreshaper   r7   ÚastypeÚtmÚassert_frame_equal)ÚselfÚarrÚdfÚexpected© rB   úc/var/www/html/laksyashrimp/venv/lib/python3.9/site-packages/pandas/tests/frame/test_constructors.pyÚ,test_constructor_from_ndarray_with_str_dtypeN   s    zFTestDataFrameConstructors.test_constructor_from_ndarray_with_str_dtypec                 C   sr   t dddd�}|j dd¡}t|ƒ}t|d d …df |d d …df d	œƒ}t ||¡ |snt|jjƒdksnJ ‚d S )
Nú
2016-01-01é   ú
US/Pacific©ÚperiodsÚtzr4   é   r   é   ©r   rL   )	r"   Ú_datar:   r   r<   r=   ÚlenÚ_mgrÚblocks)r>   Úusing_array_managerÚdtiZdtar@   rA   rB   rB   rC   Ú&test_constructor_from_2d_datetimearrayV   s    &z@TestDataFrameConstructors.test_constructor_from_2d_datetimearrayc                 C   sv   t dƒ d¡}| d¡}td|idgd�}td|giƒ}t ||¡ t|dgdœƒ}t|gdgdœƒ}t ||¡ d S )	Nz2019-11-03 01:00:00-0700zAmerica/Los_AngelesÚnsÚdtr   ©ÚindexrL   )rV   Úvalue)r    Z
tz_convertÚas_unitr   r<   r=   )r>   rV   r@   rA   rB   rB   rC   Ú)test_constructor_dict_with_tzaware_scalara   s    
zCTestDataFrameConstructors.test_constructor_dict_with_tzaware_scalarc                 C   sš   t  dt jgddgg¡}d}tjt|d�� t|dd� W d   ƒ n1 sL0    Y  tjt|d��" t|d ddd	� W d   ƒ n1 sŒ0    Y  d S )
NrL   rK   r4   ú9Cannot convert non-finite values \(NA or inf\) to integer©ÚmatchÚi8r5   r   ©r6   Úname)r8   ÚarrayÚnanÚpytestÚraisesr   r   r   )r>   r?   ÚmsgrB   rB   rC   Ú-test_construct_ndarray_with_nas_and_int_dtypeo   s    *zGTestDataFrameConstructors.test_construct_ndarray_with_nas_and_int_dtypec                 C   s0   t t ¡ t ¡ gƒ}|d jt d¡ks,J ‚d S )Nr   úM8[ns])r   r	   Únowr6   r8   ©r>   r@   rB   rB   rC   Ú%test_construct_from_list_of_datetimesz   s    z?TestDataFrameConstructors.test_construct_from_list_of_datetimesc                 C   s\   t ddgdd�}| d¡}ttj| ¡ dd�dd�}|j|jksDJ ‚t|ƒ}t ||¡ d S )Nz2013-1-1 13:00z2013-1-2 14:00ÚB©ra   rG   Úobjectr5   )	r   Útz_localizer   r8   rb   Útolistr6   r<   Úassert_series_equal)r>   ZnaiveÚidxrA   ÚresultrB   rB   rC   Ú+test_constructor_from_tzaware_datetimeindex~   s    
zETestDataFrameConstructors.test_constructor_from_tzaware_datetimeindexc                 C   sP   d}t dddg|ddgiƒ}|jdd�}dd|didd|dig}||ksLJ ‚d S )	NÚ_bÚarL   rK   r4   r3   Úrecords©Zorient©r   Úto_dict)r>   Zcol_underscorer@   ÚdÚref_drB   rB   rC   Ú6test_columns_with_leading_underscore_work_with_to_dict‹   s
    zPTestDataFrameConstructors.test_columns_with_leading_underscore_work_with_to_dictc                 C   sP   d}t dddg|ddgiƒ}|jdd�}dd|didd|dig}||ksLJ ‚d S )	NZ1_brv   rL   rK   r4   r3   rw   rx   ry   )r>   Zcol_with_numr@   r{   r|   rB   rB   rC   ÚAtest_columns_with_leading_number_and_underscore_work_with_to_dict”   s
    z[TestDataFrameConstructors.test_columns_with_leading_number_and_underscore_work_with_to_dictc                 C   sr   t  dd¡}t j|gtd�}|tu r0| dd¡}d}tjt|d�� ||dd� W d   ƒ n1 sd0    Y  d S )NÚNaTrU   r5   rL   ú=Invalid type for timedelta scalar: <class 'numpy.datetime64'>r]   úm8[ns])	r8   Ú
datetime64rb   rn   r   r:   rd   re   Ú	TypeError)r>   Úframe_or_seriesZnatr?   rf   rB   rB   rC   Ú,test_array_of_dt64_nat_with_td64dtype_raises�   s    zFTestDataFrameConstructors.test_array_of_dt64_nat_with_td64dtype_raisesÚkindÚmÚMc                 C   s|  |dkrd}t }nd}t}tjddd� |¡ dd¡}|tu rN|d d …d	f }||td�}|jj	d	 j
tkspJ ‚t|jj	d	  ¡ d	 |ƒsŽJ ‚|||ƒtd�}|jj	d	 j
tks´J ‚t|jj	d	  ¡ d	 |ƒsÒJ ‚|||ƒttƒd�}|jj	d	 j
tksüJ ‚t|jj	d	  ¡ d	 |ƒ�sJ ‚|tu �rxd
d„ |D ƒ}||td�}|jj	d	 j
tk�sXJ ‚t|jj	d	  ¡ d	 |ƒ�sxJ ‚d S )Nrˆ   rh   r�   rF   r_   r5   r4   rK   r   c                 S   s   g | ]}t |ƒ‘qS rB   ©r   ©Ú.0ÚxrB   rB   rC   Ú
<listcomp>Å   ó    zXTestDataFrameConstructors.test_datetimelike_values_with_object_dtype.<locals>.<listcomp>)r    r   r8   r9   Úviewr:   r   rn   rP   Úarraysr6   Ú
isinstanceÚravelr   r   )r>   r†   r„   r6   Zscalar_typer?   ÚobjZsersrB   rB   rC   Ú*test_datetimelike_values_with_object_dtype¨   s,     
zDTestDataFrameConstructors.test_datetimelike_values_with_object_dtypec                 C   st   t tdƒdd�}t tdƒdd�}t|dgd�}tg dgd�}t ||¡ t|dgd�}tg dgd�}t ||¡ d S )Né   rL   rm   r   ©Úcolumns)r   Úranger   r<   r=   )r>   rŒ   Úyrs   rA   rB   rB   rC   Ú)test_series_with_name_not_matching_columnÊ   s    zCTestDataFrameConstructors.test_series_with_name_not_matching_columnÚconstructorc                   C   s   t ƒ S ©N©r   rB   rB   rB   rC   Ú<lambda>Ú   rŽ   z"TestDataFrameConstructors.<lambda>c                   C   s   t d ƒS rœ   r�   rB   rB   rB   rC   rž   Û   rŽ   c                   C   s   t dƒS ©NrB   r�   rB   rB   rB   rC   rž   Ü   rŽ   c                   C   s   t g ƒS rœ   r�   rB   rB   rB   rC   rž   Ý   rŽ   c                   C   s   t dd„ dD ƒƒS )Nc                 s   s   | ]
}|V  qd S rœ   rB   ©r‹   Ú_rB   rB   rC   Ú	<genexpr>Þ   rŽ   ú5TestDataFrameConstructors.<lambda>.<locals>.<genexpr>rB   r�   rB   rB   rB   rC   rž   Þ   rŽ   c                   C   s   t tdƒƒS ©Nr   ©r   r˜   rB   rB   rB   rC   rž   ß   rŽ   c                   C   s
   t d d�S ©N©Údatar�   rB   rB   rB   rC   rž   à   rŽ   c                   C   s
   t dd�S )NrB   r§   r�   rB   rB   rB   rC   rž   á   rŽ   c                   C   s
   t g d�S r¦   r�   rB   rB   rB   rC   rž   â   rŽ   c                   C   s   t dd„ dD ƒd�S )Nc                 s   s   | ]
}|V  qd S rœ   rB   r    rB   rB   rC   r¢   ã   rŽ   r£   rB   r§   r�   rB   rB   rB   rC   rž   ã   rŽ   c                   C   s   t tdƒd�S )Nr   r§   r¥   rB   rB   rB   rC   rž   ä   rŽ   c                 C   s@   t ƒ }|ƒ }t|jƒdksJ ‚t|jƒdks0J ‚t ||¡ d S r¤   )r   rO   rX   r—   r<   r=   ©r>   r›   rA   rs   rB   rB   rC   Útest_empty_constructor×   s
    z0TestDataFrameConstructors.test_empty_constructorc                   C   s   t i ƒS rœ   r�   rB   rB   rB   rC   rž   ñ   rŽ   c                   C   s
   t i d�S r¦   r�   rB   rB   rB   rC   rž   ò   rŽ   c                 C   sR   t tdƒtdƒd�}|ƒ }t|jƒdks,J ‚t|jƒdks>J ‚tj||dd� d S )Nr   ©rX   r—   T)Zcheck_index_type)r   r   rO   rX   r—   r<   r=   r©   rB   rB   rC   Ú#test_empty_constructor_object_indexî   s
    z=TestDataFrameConstructors.test_empty_constructor_object_indexz)emptylike,expected_index,expected_columnsrL   r   rK   c                 c   s   | ]
}|V  qd S rœ   rB   r    rB   rB   rC   r¢     rŽ   z#TestDataFrameConstructors.<genexpr>rB   c                 C   s$   t ||d�}t |ƒ}t ||¡ d S )Nr«   ©r   r<   r=   )r>   Z	emptylikeZexpected_indexZexpected_columnsrA   rs   rB   rB   rC   Útest_emptylike_constructorü   s    	z4TestDataFrameConstructors.test_emptylike_constructorc                 C   s$   |rdnt j}|d j|ks J ‚d S )Nr7   Úfoo)r8   Úobject_r6   )r>   Zfloat_string_frameÚusing_infer_stringr6   rB   rB   rC   Útest_constructor_mixed	  s    z0TestDataFrameConstructors.test_constructor_mixedc                 C   s¾   d}t jt|d��& tdg d¢itjd� W d   ƒ n1 s>0    Y  tt d¡ƒ}t d¡ ¡ |d< d}t jt|d�� t d¡|d	< W d   ƒ n1 sž0    Y  t d¡ ¡ |d
< d S )Nz!could not convert string to floatr]   rv   ©rv   ÚbÚcr5   )r3   rK   r¯   z5Expected a 1D array, got an array with shape \(4, 2\)ÚtestZfoo2)rd   re   Ú
ValueErrorr   r8   r)   Úonesrp   )r>   rf   r@   rB   rB   rC   Útest_constructor_cast_failure  s    4,z7TestDataFrameConstructors.test_constructor_cast_failurec                 C   sD   t dgdgdgdœƒ}t |tdd�}d|d< |d d	 dks@J ‚d S )
Nç      ð?ç       @ç      @)Úcol1Úcol2Úcol3T©r6   Úcopyg      i@r½   r   )r   Úfloat)r>   Zorig_dfZnew_dfrB   rB   rC   Útest_constructor_dtype_copy"  s    z5TestDataFrameConstructors.test_constructor_dtype_copyc                 C   sŒ   t ddggƒ}t ||d jd�}|rBd|jd< |jd dksˆJ ‚nFt |¡� d|jd< W d   ƒ n1 sl0    Y  |jd dksˆJ ‚d S )NrL   rK   r   r5   éc   ©r   r   )r   r6   ÚilocÚvaluesr<   Zassert_cow_warning)r>   Úusing_copy_on_writeÚwarn_copy_on_writer@   Úshould_be_viewrB   rB   rC   Ú,test_constructor_dtype_nocast_view_dataframe*  s    
(zFTestDataFrameConstructors.test_constructor_dtype_nocast_view_dataframec                 C   s~   t ddgddggdd�}|sR|sRt |j|d jd�}d|jd	< |jd	 dkszJ ‚n(t |j|d jd�}|jjd jjszJ ‚d S )
NrL   rK   r4   r3   r0   r5   r   éa   rÅ   )r   rÇ   r6   rÆ   rP   r�   ÚflagsÚc_contiguous)r>   rR   rÈ   rÉ   r@   rÊ   Údf2rB   rB   rC   Ú+test_constructor_dtype_nocast_view_2d_array7  s    
zETestDataFrameConstructors.test_constructor_dtype_nocast_view_2d_arrayc                 C   s„   t jddgdd�}t|dd�}|rN|d jjdkr4q`t  |d  ¡ |¡s`J ‚nt  |j|¡s`J ‚t|tdd	�}t  |j|¡s€J ‚d S )
Nrv   r´   rn   r5   F©rÁ   r   ÚpyarrowrÀ   ©	r8   rb   r   r6   ZstorageÚshares_memoryZto_numpyrÇ   rn   ©r>   r±   r?   r@   rB   rB   rC   Ú"test_1d_object_array_does_not_copyG  s    z<TestDataFrameConstructors.test_1d_object_array_does_not_copyc                 C   sŒ   t jddgddggdd�}t|dd�}|rV|d	 jjd
kr<qht  |d	  ¡ |¡shJ ‚nt  |j|¡shJ ‚t|tdd�}t  |j|¡sˆJ ‚d S )Nrv   r´   rµ   r{   rn   r5   FrÑ   r   rÒ   rÀ   rÓ   rÕ   rB   rB   rC   Ú"test_2d_object_array_does_not_copyY  s    z<TestDataFrameConstructors.test_2d_object_array_does_not_copyc                 C   s@   t ddgd dggtd�}|jd d u s*J ‚|jd dks<J ‚d S )NrL   Ú2rv   r5   ©rL   r   rM   )r   rn   Úlocrj   rB   rB   rC   Ú test_constructor_dtype_list_datak  s    z:TestDataFrameConstructors.test_constructor_dtype_list_datac                 C   sÎ   t ƒ }t d¡}tjtdd�� t |gƒ W d   ƒ n1 s>0    Y  tjtdd�� t |gƒ W d   ƒ n1 sv0    Y  t dddgiƒ}tjtdd�� t ||gƒ W d   ƒ n1 sÀ0    Y  d S )NrÅ   zshape=\(1, 0, 0\)r]   ÚArL   rK   zshape=\(2, 2, 1\))r   r8   Úemptyrd   re   r·   )r>   rv   r´   rB   rB   rC   Ú"test_constructor_list_of_2d_raisesp  s    
((z<TestDataFrameConstructors.test_constructor_list_of_2d_raisesztyp, adrÂ   r¯   Úbar©rÜ   rl   ÚCÚintc                 C   s¤   |dkrt }dd„ |D ƒ}n|dkr6t}dd„ |D ƒ}t||ƒD ]\}}|j|ks@J ‚q@| tt||ƒƒ¡ t|ƒ}tt  }|D ]}||v r€|j| |ks€J ‚q€d S )Nrâ   c                 S   s(   g | ] }t jt j d ¡ d¡|d�‘qS )rK   é
   r5   )r8   rb   ÚrandomÚdefault_rng©r‹   r{   rB   rB   rC   r�   Œ  s   zKTestDataFrameConstructors.test_constructor_mixed_dtypes.<locals>.<listcomp>rÂ   c                 S   s,   g | ]$}t jt j d ¡jddd�|d�‘qS )rK   rã   )Úsizer5   )r8   rb   rä   rå   Zintegersræ   rB   rB   rC   r�   ‘  s   ÿ)ÚMIXED_INT_DTYPESÚMIXED_FLOAT_DTYPESÚzipr6   ÚupdateÚdictr   Údtypes)r>   ÚtypÚadrí   r�   r{   rv   r@   rB   rB   rC   Útest_constructor_mixed_dtypes~  s$    ÿþz7TestDataFrameConstructors.test_constructor_mixed_dtypesc                 C   sj   t j d¡ d¡ t j¡}t j d¡ d¡ t j¡}t||dœƒ}|j|jjksTJ ‚|j|j	jksfJ ‚d S )NrK   rã   ©rv   r´   )
r8   rä   rå   r;   Z	complex64Ú
complex128r   r6   rv   r´   ©r>   rv   r´   r@   rB   rB   rC   Útest_constructor_complex_dtypes   s
    z9TestDataFrameConstructors.test_constructor_complex_dtypesc                 C   sx   t ddd gi|d�}| ¡ }t dddgiƒ}t ||¡ |jd d u sJJ ‚t ddtjgi|d�}t |jd ¡stJ ‚d S )NrÜ   rŒ   r5   FTrÙ   )r   r#   r<   r=   rÆ   r8   rc   Úisnan)r>   Ústring_dtyper@   rs   rA   rB   rB   rC   Ú$test_constructor_dtype_str_na_values©  s    z>TestDataFrameConstructors.test_constructor_dtype_str_na_valuesc           	      C   sÌ   |j dd�}t|jjƒd d d… |j_|j}t|ƒ}t |jt	|jjƒ¡ t||d�}t |jt	|jjƒ¡ t |j|¡ t
 t|ƒ¡d d d… }t||ddgd�}t||d�jddgd�}t ||¡ d S )NFrW   éÿÿÿÿrá   rl   r«   r–   )Z
to_recordsÚlistr6   ÚnamesrX   r   r<   Úassert_index_equalr—   r   r8   r9   rO   Úreindexr=   )	r>   Úfloat_frameZrecrX   r@   rÏ   ÚrngÚdf3rA   rB   rB   rC   Útest_constructor_rec´  s    z.TestDataFrameConstructors.test_constructor_recc                 C   s8   t tjdtd�tjdtd�dœƒ}|jjtjks4J ‚d S )Nrã   r5   rM   )r   r8   r¸   ÚboolÚzerosrÇ   r6   Úbool_rj   rB   rB   rC   Útest_constructor_boolÇ  s    "z/TestDataFrameConstructors.test_constructor_boolc                 C   s�   t jdd„ tddƒD ƒt jd�}td|iƒ}|d jt jks@J ‚g d¢}dd	g}t jt|ƒf|d�}||d d …< t|ƒ}|d
 jt jksŒJ ‚d S )Nc                 S   s   g | ]}d | ‘qS )ì            rB   ©r‹   ÚirB   rB   rC   r�   Í  rŽ   zMTestDataFrameConstructors.test_constructor_overflow_int64.<locals>.<listcomp>rL   rã   r5   rv   ))l   –Yª2­< é  )l   FJLW]L* é   )l   ´MÏ:M…^ é-   )l   8²€M�a i  )l   r*R3_PvN r  )ÚuidÚu8)Zscorer  r  )r8   rb   r˜   r-   r   r6   r  rO   )r>   rÇ   rs   Zdata_scoresr6   r¨   Z	df_crawlsrB   rB   rC   Útest_constructor_overflow_int64Ë  s     z9TestDataFrameConstructors.test_constructor_overflow_int64rÇ   r  r5   éA   l           lûÿÿÿ        lûÿÿÿ        c                 C   s:   |d }t |ƒ}|d jtks"J ‚|d d |ks6J ‚d S r¤   )r   r6   rn   ©r>   rÇ   rY   rs   rB   rB   rC   Útest_constructor_int_overflowà  s    z7TestDataFrameConstructors.test_constructor_int_overflowc                 C   s<   |d }t |ƒ}|d j|jks$J ‚|d d |ks8J ‚d S r¤   ©r   r6   r  rB   rB   rC   Útest_constructor_numpy_uintsó  s    z6TestDataFrameConstructors.test_constructor_numpy_uintsc                 C   s`   d}t t|ƒƒ}tj d¡ |¡ dd„ |D ƒ}ttt|dgg| ƒƒƒ}|t |j	ƒks\J ‚d S )Néd   rK   c                 S   s   g | ]}d |d›�‘qS )rÜ   r{   rB   r  rB   rB   rC   r�   
  rŽ   zJTestDataFrameConstructors.test_constructor_ordereddict.<locals>.<listcomp>r   )
rù   r˜   r8   rä   rå   Úshuffler   r   rê   r—   )r>   ZnitemsÚnumsrA   r@   rB   rB   rC   Útest_constructor_ordereddict  s    z6TestDataFrameConstructors.test_constructor_ordereddictc                 C   sR  t tjdtjd�tddd�d�}|dd … }t||dœƒ}t|ƒdksJJ ‚t|ƒdksZJ ‚t |d	 | 	d	¡¡ t t 
tjgd |jg¡|jd
d�}t ||d
 ¡ t||dœg d¢d�}t|ƒt|ƒksÎJ ‚d	|vsÚJ ‚t|d ƒ ¡ sîJ ‚ttƒ ƒdk�sJ ‚d}tjt|d��( tdddœg d¢dœƒ W d   ƒ n1 �sD0    Y  d S )Né   r5   ú
2020-01-01©rI   rW   r•   ©r½   r¾   é   r½   r¾   ©rX   ra   )r¾   r¿   Zcol4r–   r¿   r   ú<Mixing dicts with non-Series may lead to ambiguous ordering.r]   rv   r´   rñ   r³   ©rÜ   rl   )r   r8   r9   r)   r"   r   rO   r<   rq   ÚrenameZconcatenaterc   rÇ   rX   r#   Úallrd   re   r·   )r>   Údatetime_seriesÚdatetime_series_shortÚframeÚexprf   rB   rB   rC   Útest_constructor_dict  s2    ÿýþz/TestDataFrameConstructors.test_constructor_dictc                 C   s,   t ddddœiƒ}t |jtddgƒ¡ d S )NrÜ   rL   rK   ©Ú1rØ   r'  rØ   )r   r<   rû   rX   r   ©r>   r#  rB   rB   rC   Útest_constructor_dict_length16  s    z7TestDataFrameConstructors.test_constructor_dict_length1c                 C   s*   t g d¢ƒ}ti |d�}|j|u s&J ‚d S )N©r   rL   rK   rW   )r   r   rX   ©r>   rr   r#  rB   rB   rC   Ú test_constructor_dict_with_index;  s    z:TestDataFrameConstructors.test_constructor_dict_with_indexc                 C   sL   t g d¢ƒ}ti ||d�}|j|u s(J ‚|j|u s6J ‚t|jƒdksHJ ‚d S )Nr*  r«   r4   )r   r   rX   r—   rO   Ú_seriesr+  rB   rB   rC   Ú,test_constructor_dict_with_index_and_columnsA  s
    zFTestDataFrameConstructors.test_constructor_dict_with_index_and_columnsc                 C   s0   t g g dœddgd�}tj|jtdƒdd� d S )Nr  rÜ   rl   r–   r   T©Úexact)r   r<   rû   rX   r   r(  rB   rB   rC   Ú$test_constructor_dict_of_empty_listsI  s    z>TestDataFrameConstructors.test_constructor_dict_of_empty_listsc                 C   s^   t dd idgd�}t dd gidgd�}| dd¡d u s:J ‚| dd¡d u sNJ ‚t ||¡ d S )Nrv   r   rW   )r   Ú
_get_valuer<   r=   )r>   Z
frame_noneZframe_none_listrB   rB   rC   Útest_constructor_dict_with_noneN  s
    z9TestDataFrameConstructors.test_constructor_dict_with_nonec                 C   s‚   d}t jt|d�� tddiƒ W d   ƒ n1 s40    Y  t jt|d��" tddidgd� W d   ƒ n1 st0    Y  d S )Nú2If using all scalar values, you must pass an indexr]   rv   gffffffæ?r–   ©rd   re   r·   r   ©r>   rf   rB   rB   rC   Útest_constructor_dict_errorsW  s
    *z6TestDataFrameConstructors.test_constructor_dict_errorsÚscalarNÚDc                 C   s.   t d|idgd�}t dgd�}t ||¡ d S )Nrv   r´   r–   r­   )r>   r8  rs   rA   rB   rB   rC   Ú%test_constructor_invalid_items_unuseda  s    z?TestDataFrameConstructors.test_constructor_invalid_items_unusedrY   rc   c                    sÆ   d|dg‰ d|g‰ddgddgddgg‰‡ ‡‡fdd	„t dƒD ƒ}t|ƒ d¡jddd
�}ttjddd� dd¡ˆˆ d�}t ||¡ t|ˆd�jddd
�}t ||¡ t|ˆˆ d�}t ||¡ d S )NrL   r4   rv   r   r3   rK   r•   c                    s"   i | ]}ˆ | t ˆ| ˆd �“qS ©rW   r‰   ©r‹   rµ   ©Úcolsrr   rÇ   rB   rC   Ú
<dictcomp>n  rŽ   zKTestDataFrameConstructors.test_constructor_dict_nan_key.<locals>.<dictcomp>©ZaxisrF   r0   r5   r«   rW   )r˜   r   Úsort_valuesr8   r9   r:   r<   r=   ©r>   rY   r¨   rs   rA   rB   r=  rC   Útest_constructor_dict_nan_keyh  s    
ÿz7TestDataFrameConstructors.test_constructor_dict_nan_keyc                    sæ   t d|dfd|fgƒ‰ t d|f|dfgƒ‰ddgdd	gdd
gg‰‡ ‡‡fdd„tdƒD ƒ}t|ƒ d¡jd|fdd�}ttjddd� dd¡ˆˆ d�}t ||¡ t|ˆd�jd|fdd�}t ||¡ t|ˆˆ d�}t ||¡ d S )N)é   é   é   é   rv   rK   r   r4   rL   r3   r•   c                    s"   i | ]}ˆ | t ˆ| ˆd �“qS r;  r‰   r<  r=  rB   rC   r?  �  rŽ   zQTestDataFrameConstructors.test_constructor_dict_nan_tuple_key.<locals>.<dictcomp>r@  rF   r0   r5   r«   rW   )	r   r˜   r   rA  r8   r9   r:   r<   r=   rB  rB   r=  rC   Ú#test_constructor_dict_nan_tuple_key{  s    ÿz=TestDataFrameConstructors.test_constructor_dict_nan_tuple_keyc                 C   s`   t tjdtjd�tddd�d�}|d d… }||dœ}t|d�}t|td	ƒd
�}t ||¡ d S )Nrã   r5   r  r  rW   r•   ©r´   rv   r§   Úba©r¨   r—   )	r   r8   r9   r)   r"   r   rù   r<   r=   )r>   r!  r"  r{   r#  rA   rB   rB   rC   Ú%test_constructor_dict_order_insertionŽ  s    ÿ

z?TestDataFrameConstructors.test_constructor_dict_order_insertionc                 C   sR   t tjddgdddgitjdgd�}t ddgddggtjdgd�}t ||¡ d S )NrL   rK   r4   r–   )r   r8   rc   r<   r=   ©r>   rs   rA   rB   rB   rC   Ú)test_constructor_dict_nan_key_and_columns›  s    $zCTestDataFrameConstructors.test_constructor_dict_nan_key_and_columnsc                 C   sl   g d¢}t  |¡}t||d�}t|ƒj ¡  ¡ s4J ‚g d¢}t  |¡}t||d�}t|ƒj ¡  ¡ shJ ‚d S )N)©rK   r4   ©r4   r4   rP  r«   )rP  rO  rP  )r   Úfrom_tuplesr   r#   rÇ   r’   r   )r>   ÚtuplesÚmir@   rB   rB   rC   Útest_constructor_multi_index¡  s    

z6TestDataFrameConstructors.test_constructor_multi_indexc                 C   s¶   t dggdggddgd�}t ddgtddgdd�tdggdggd�d�}t ||¡ t dggdggddggd�}t ddgtddggddggd�tdggdggd�d�}t ||¡ d S )	NrL   rK   ©r—   rX   r0   r5   r   )ZlevelsÚcodesr«   )r   r   r   r<   r=   ©r>   r@   rA   rB   rB   rC   Útest_constructor_2d_index®  s    ýýz3TestDataFrameConstructors.test_constructor_2d_indexc                 C   s"  d}t jt|d��$ tt d¡dgd� W d   ƒ n1 s<0    Y  d}t jt|d��( tddd	œg d
¢dœƒ W d   ƒ n1 s†0    Y  d}t jt|d��6 tt d¡ d¡g d¢tddd�d� W d   ƒ n1 sÞ0    Y  t 	g d¢g¡}d}t jt|d��$ tdgt
dƒ|d� W d   ƒ n1 �s60    Y  t 	g d¢¡}d}t jt|d��$ tdgt
dƒ|d� W d   ƒ n1 �sŒ0    Y  t jtdd��* tt d¡g d¢dgd� W d   ƒ n1 �sÖ0    Y  d}t jt|d��2 ttj d¡ d¡g d¢dgd� W d   ƒ n1 �s,0    Y  d}t jt|d��4 ttj d¡ d¡d d!gddgd� W d   ƒ n1 �s„0    Y  d"}t jt|d��* tt
d#ƒt
d#d$ƒfd%d&� W d   ƒ n1 �sÒ0    Y  d'}t jt|d�� td(d)d	œƒ W d   ƒ n1 �s0    Y  d S )*Nz)Empty data passed with indices specified.r]   r   rL   rW   r  rv   r´   rñ   r³   r  z:Shape of passed values is \(4, 3\), indices imply \(3, 3\)r2   )r3   r4   ©r¯   rß   Úbazú
2000-01-01r4   r  rU  ©r3   r•   rF   z:Shape of passed values is \(1, 3\), indices imply \(1, 4\)r3   ©rX   r—   r¨   z:Shape of passed values is \(3, 1\), indices imply \(1, 4\)úMust pass 2-d input©r4   r4   r4   rà   ú:Shape of passed values is \(2, 3\), indices imply \(1, 3\)rK   rO  ú:Shape of passed values is \(2, 3\), indices imply \(2, 2\)rÜ   rl   z,2 columns passed, passed data had 10 columnsrã   é   )r¸   Ztwosr–   r4  FT)rd   re   r·   r   r8   rÝ   r9   r:   r"   rb   r˜   r  rä   rå   )r>   rf   r?   rB   rB   rC   Útest_constructor_error_msgsÁ  sV    26
ý$44:ý&ý&:z5TestDataFrameConstructors.test_constructor_error_msgsc                 C   s|   |dd„ t dƒD ƒƒ|dd„ t dƒD ƒƒdœ}t|ƒ}tdd„ | ¡ D ƒƒ}t ||¡ || ¡ ƒ}t|ƒ}t ||¡ d S )Nc                 s   s   | ]}|d | fV  qdS )g      $@NrB   rŠ   rB   rB   rC   r¢      rŽ   zKTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<genexpr>rã   c                 s   s   | ]}|d | fV  qdS )g      4@NrB   rŠ   rB   rB   rC   r¢     rŽ   r  c                 S   s   i | ]\}}|t | ¡ ƒ“qS rB   )rì   Úitems)r‹   ÚcolÚvalrB   rB   rC   r?    rŽ   zLTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<dictcomp>)r˜   r   rd  r<   r=   )r>   Zdict_subclassr¨   r@   ZrefdfrB   rB   rC   Útest_constructor_subclass_dictý  s    þz8TestDataFrameConstructors.test_constructor_subclass_dictc                 C   st   i }t j|jd |jd …df< | ¡ D ]&\}}ttƒ}| | ¡ ¡ |||< q&t	|ƒ}|j
|jd�}t ||¡ d S )Nrã   rl   rW   )r8   rc   rÚ   rX   rd  r   rì   rë   rz   r   rü   r<   r=   )r>   rý   r¨   ÚkÚvÚdctr#  rA   rB   rB   rC   Útest_constructor_defaultdict  s    
z6TestDataFrameConstructors.test_constructor_defaultdictc                 C   sD   t  g d¢g¡}tdgdgdgdgdœg d¢d�}t |j|¡ d S )N)ç      @r¼   r»   rº   rl  r¼   r»   rº   )r{   rµ   r´   rv   r–   )r8   rb   r   r<   Úassert_numpy_array_equalrÇ   )r>   rA   r@   rB   rB   rC   Útest_constructor_dict_block  s    þz5TestDataFrameConstructors.test_constructor_dict_blockc                 C   sª   dddœddddœdœ}t |td	�}t|ƒd
ks4J ‚|d jtjksHJ ‚|d jtjks\J ‚t |ƒ}t|ƒd
kstJ ‚|sŠ|d jtjks’nds’J ‚|d jtjks¦J ‚d S )NrL   rK   r&  r'  rØ   Ú3)r'  rØ   ro  r  r5   r4   rl   rÜ   r7   )r   rÂ   rO   r6   r8   r)   r°   )r>   r±   Ú	test_datar#  rB   rB   rC   Útest_constructor_dict_cast   s    z4TestDataFrameConstructors.test_constructor_dict_castc                 C   s€   t ttdƒdd„ tdƒD ƒƒƒt ttdƒtj d¡ d¡ƒƒdœ}tjt	dd�� t
|td	� W d   ƒ n1 sr0    Y  d S )
Nrb  c                 S   s   g | ]}d |› �‘qS )Zword_rB   r  rB   rB   rC   r�   0  rŽ   zITestDataFrameConstructors.test_constructor_dict_cast2.<locals>.<listcomp>é   rK   r  zcould not convert stringr]   r5   )rì   rê   r˜   r8   rä   rå   Ústandard_normalrd   re   r·   r   rÂ   )r>   rp  rB   rB   rC   Útest_constructor_dict_cast2-  s
    þz5TestDataFrameConstructors.test_constructor_dict_cast2c                 C   s2   ddt jdœi}t|ƒ}t|d d tƒs.J ‚d S )NZCol1zA String)ZRow1ÚRow2ru  )r8   rc   r   r‘   rÂ   )r>   r{   r@   rB   rB   rC   Ú!test_constructor_dict_dont_upcast6  s    z;TestDataFrameConstructors.test_constructor_dict_dont_upcastc                 C   s<   t ddgddggddgddgd�}t|d d tƒs8J ‚d S )NrL   rK   rv   r´   r«   )r   r‘   râ   )r>   ÚdmrB   rB   rC   Ú"test_constructor_dict_dont_upcast2;  s    "z<TestDataFrameConstructors.test_constructor_dict_dont_upcast2c                 C   s<   dddœ}t |ƒ}t dd„ | ¡ D ƒƒ}tj||dd� d S )N©rL   rK   r4   r\  rñ   c                 S   s   i | ]\}}|t |ƒ“qS rB   )rù   )r‹   rh  ri  rB   rB   rC   r?  D  rŽ   zMTestDataFrameConstructors.test_constructor_dict_of_tuples.<locals>.<dictcomp>F©Zcheck_dtype)r   rd  r<   r=   ©r>   r¨   rs   rA   rB   rB   rC   Útest_constructor_dict_of_tuples?  s    
z9TestDataFrameConstructors.test_constructor_dict_of_tuplesc                 C   sB   t dƒt ddƒdœ}t|ƒ}tg d¢g d¢dœƒ}t ||¡ d S )Nr4   rF   rñ   r*  )r4   r3   r•   ©r˜   r   r<   r=   r{  rB   rB   rC   Útest_constructor_dict_of_rangesG  s    z9TestDataFrameConstructors.test_constructor_dict_of_rangesc                 C   sH   t tdƒƒttdƒƒdœ}t|ƒ}tg d¢g d¢dœƒ}t ||¡ d S )Nr4   rñ   r*  ©rK   rL   r   )Úiterr˜   Úreversedr   r<   r=   r{  rB   rB   rC   Ú"test_constructor_dict_of_iteratorsO  s    z<TestDataFrameConstructors.test_constructor_dict_of_iteratorsc                 C   sX   dd„ t dƒD ƒdd„ tt dƒƒD ƒdœ}t|ƒ}tg d¢g d¢dœƒ}t ||¡ d S )Nc                 s   s   | ]
}|V  qd S rœ   rB   r  rB   rB   rC   r¢   Y  rŽ   zPTestDataFrameConstructors.test_constructor_dict_of_generators.<locals>.<genexpr>r4   rñ   r*  r  )r˜   r�  r   r<   r=   r{  rB   rB   rC   Ú#test_constructor_dict_of_generatorsW  s    *z=TestDataFrameConstructors.test_constructor_dict_of_generatorsc                 C   s  ddddœddddœdd	d
dœdœ}t | ¡ ƒ}t|ƒ}tdd„ |D ƒt dd„ |D ƒ¡d�j}t |j¡|_t ||¡ dddddœ|d< | 	dd|d f¡ tdd„ |D ƒt
dd„ |D ƒdd�d�j}t
|jdd�|_t|ƒ}|j|j|jd�}t ||¡ d S )Nr   rL   rK   )©r  r  ©r  Új©r†  r  rF   r•   r3   é   é   é	   ))rv   rv   rI  )r´   rµ   c                 S   s   g | ]}|d  ‘qS ©rL   rB   rŠ   rB   rB   rC   r�   g  rŽ   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>c                 S   s   g | ]}|d  ‘qS ©r   rB   rŠ   rB   rB   rC   r�   g  rŽ   rW   g     À^@éo   )r™   r„  r…  r‡  Úzc                 S   s   g | ]}|d  ‘qS r‹  rB   rŠ   rB   rB   rC   r�   r  rŽ   c                 S   s   g | ]}|d  ‘qS rŒ  rB   rŠ   rB   rB   rC   r�   r  rŽ   F)Ztupleize_colsrU  )Úsortedrd  r   r   rQ  ÚTrX   r<   r=   Úinsertr   rü   r—   )r>   r{   Z_dr@   rA   rB   rB   rC   Ú test_constructor_dict_multiindex^  s.    


ýÿþ ÿz:TestDataFrameConstructors.test_constructor_dict_multiindexc           	   	      s¸   g d¢‰ ‡ fdd„}|t jƒ}|dd„ ƒ}|tƒ}tdd d d dœd dd d dœd d d	d dœd d d d
dœgdd„ ˆ D ƒd�}t|ƒ}t|ƒ}t|ƒ}t ||¡ t ||¡ t ||¡ d S )N)z
1984-02-19z
1988-11-06z
1989-12-03z
1990-03-15c                    s   ‡ fdd„t ˆƒD ƒS )Nc                    s"   i | ]\}}|ˆ |ƒd | i“qS ©rK   rB   ©r‹   r  Ús©r›   rB   rC   r?  ~  rŽ   ziTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_data.<locals>.<dictcomp>)Ú	enumerater–  ©Zdates_as_strr–  rC   Úcreate_data}  s    zUTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_datac                 S   s   t  | d¡S )Nz%Y-%m-%d)r	   Ústrptime©rŒ   rB   rB   rC   rž   �  rŽ   zRTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<lambda>r   ©r   rL   rK   r4   rK   r3   rF   c                 S   s   g | ]}t |ƒ‘qS rB   )r    )r‹   rV   rB   rB   rC   r�   ‹  rŽ   zTTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<listcomp>rW   )r8   r‚   r    r   r<   r=   )	r>   r™  Zdata_datetime64Zdata_datetimeZdata_TimestamprA   Zresult_datetime64Zresult_datetimeZresult_TimestamprB   r˜  rC   Ú&test_constructor_dict_datetime64_indexy  s&    
üù
z@TestDataFrameConstructors.test_constructor_dict_datetime64_indexz
klass,namec                 C   s   t  | d¡S ©Nr9  )r8   Útimedelta64r›  rB   rB   rC   rž   ˜  rŽ   rŸ  c                 C   s
   t | d�S )N)Údays)r
   r›  rB   rB   rC   rž   ™  rŽ   Zpytimedeltac                 C   s
   t | dƒS rž  ©r   r›  rB   rB   rC   rž   š  rŽ   zTimedelta[ns]c                 C   s   t | dƒ d¡S )Nr9  r•  )r   rZ   r›  rB   rB   rC   rž   ›  rŽ   zTimedelta[s]c              	      s|   g d¢}‡ fdd„t |ƒD ƒ}tdd d d dœd dd d dœd d dd dœd d d ddœgd	d
„ |D ƒd�}t|ƒ}t ||¡ d S )N©rL   rK   r4   r3   c                    s"   i | ]\}}|ˆ |ƒd | i“qS r“  rB   r”  ©ÚklassrB   rC   r?  ¢  rŽ   zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<dictcomp>r   rœ  rK   r3   rF   c                 S   s   g | ]}t |d ƒ‘qS )r9  r¡  )r‹   ÚtdrB   rB   rC   r�   «  rŽ   zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<listcomp>rW   )r—  r   r<   r=   )r>   r¤  ra   Z	td_as_intr¨   rA   rs   rB   r£  rC   Ú'test_constructor_dict_timedelta64_index•  s    üù
zATestDataFrameConstructors.test_constructor_dict_timedelta64_indexc                 C   s¨   t jg d¢dd�}t jg d¢dd�}t||dœƒ}|d j|jksFJ ‚|d j|jksZJ ‚t| t¡ ¡ | t¡ ¡ dœƒ}|d j|jks�J ‚|d j|jks¤J ‚d S )	N)z2012-01r   z2012-04rˆ   ©Úfreq)z
2012-02-01z
2012-03-01r   r9  rñ   rv   r´   )ÚpdZPeriodIndexr   r6   r;   rn   rp   ró   rB   rB   rC   Útest_constructor_period_dict²  s    "z6TestDataFrameConstructors.test_constructor_period_dictc                 C   sN   |\}}t d|idgd�}|d j|ks,J ‚t dgdg|d�}t ||¡ d S )Nrv   r   rW   r]  )r   r6   r<   r=   )r>   Zea_scalar_and_dtypeZ	ea_scalarZea_dtyper@   rA   rB   rB   rC   Ú&test_constructor_dict_extension_scalar¿  s
    z@TestDataFrameConstructors.test_constructor_dict_extension_scalarz
data,dtypez2020-01r•   )ÚleftÚrightr0   r­  z
2011-01-01ú
US/Eastern©rJ   r•  )ÚunitrJ   c                 C   sl   t ddgddg|d�}|d j|ks(J ‚|d j|ks:J ‚tj|gd |d�}t ||dœƒ}t ||¡ d S )	Nr   rL   rv   r´   r]  rK   r5   rñ   )r   r6   r©  rb   r<   r=   )r>   r¨   r6   r@   r?   rA   rB   rB   rC   Ú&test_constructor_extension_scalar_dataÈ  s    z@TestDataFrameConstructors.test_constructor_extension_scalar_datac                 C   sÆ   t jddd�}ttj d¡ d¡|d�}i }|jD ](}|jD ]}| 	||¡| 
|i ¡|< q<q2t||d�}t ||¡ i }|jD ](}|jD ]}| 	||¡| 
|i ¡|< qˆq~t||d�j}t ||¡ d S )Nz1/1/2000r•   r  rK   ©rã   r•   r–   rW   )r©  Úperiod_ranger   r8   rä   rå   rs  r—   rX   r2  Ú
setdefaultr<   r=   r�  )r>   rþ   r@   r¨   re  Úrowrs   rB   rB   rC   Ú"test_nested_dict_frame_constructorß  s    



z<TestDataFrameConstructors.test_nested_dict_frame_constructorc                 C   s¸  |dt d�}t|g d¢ddgd�}t|jƒdks4J ‚t|jƒdksFJ ‚t|dƒd	gg d
¢d�}t|jƒdkspJ ‚t|jƒdks‚J ‚|tjurÜd}tjt	|d��* t|g d¢ddgtj
d� W d   ƒ n1 sÎ0    Y  d S t|g d¢ddgtj
d�}|jjtj
k�s
J ‚d}tjt|d��$ t|g d¢dgd� W d   ƒ n1 �sH0    Y  d}tjt|d��& t|d	dgddgd� W d   ƒ n1 �s’0    Y  tjtdd��( t|dƒg d¢dgd� W d   ƒ n1 �sÚ0    Y  t|ƒ}tj|jttdƒƒdd� tj|jttdƒƒdd� t|ddgd�}tj|jttdƒƒdd� t|g d¢d�}tj|jttdƒƒdd� t|dƒƒ}t|jƒdk�s”J ‚t|dƒƒ}t|jƒdk�s´J ‚d S )NrO  r5   rà   rL   rK   rU  r4   )r4   rÜ   ry  r\   r]   ©r—   rX   r6   r`  ra  rl   r^  r_  Tr/  rW   r–   )r   r4   r   )r4   r   )rÂ   r   rO   rX   r—   r8   r¸   rd   re   r   r0   rÇ   r6   r·   r<   rû   r   r˜   )r>   rÝ   Úmatr#  rf   rB   rB   rC   Ú_check_basic_constructoró  sF    
8ÿ468z2TestDataFrameConstructors._check_basic_constructorc                 C   s8   |   tj¡ tddgddgdgd�}t|ƒdks4J ‚d S )Nr¯   rß   r   rL   rÜ   r«   rK   )r¹  r8   r¸   r   rO   r(  rB   rB   rC   Útest_constructor_ndarray+  s    z2TestDataFrameConstructors.test_constructor_ndarrayc                 C   sª   |   tj¡ tjdtd�}d|d< d|d< t|g d¢dd	gd
�}d|d d ksTJ ‚d|d d	 kshJ ‚tjdtd�}t|g d¢dd	gd
�}t t ||k¡ ¡s¦J ‚d S )NrO  r5   rº   rÅ   r»   ©rL   rK   rà   rL   rK   rU  rÜ   rá   )r¹  r   Ú
masked_allrÂ   r   r8   r   Úasarray)r>   r¸  r#  rB   rB   rC   Útest_constructor_maskedarray1  s    z6TestDataFrameConstructors.test_constructor_maskedarrayz7ignore:elementwise comparison failed:DeprecationWarningc                 C   sî  t jdtd�}t|g d¢ddgd�}t|jƒdks6J ‚t|jƒdksHJ ‚t t 	||k¡ ¡sbJ ‚t|g d¢ddgtj
d�}|jjtj
ksŽJ ‚t  |¡}d|d	< d|d
< t|g d¢ddgd�}d|d d ksÒJ ‚d|d d ksæJ ‚t jddd�}t|g d¢ddgd�}t|jƒdk�sJ ‚t|jƒdk�s2J ‚t|ƒj ¡ �sFJ ‚d}tjt|d��* t|g d¢ddgtjd� W d   ƒ n1 �sŠ0    Y  t  |¡}d|d	< d|d
< t|g d¢ddgd�}d|d  d¡d k�sàJ ‚d|d  d¡d k�süJ ‚t jdtd�}t|g d¢ddgd�}t|jƒdk�s4J ‚t|jƒdk�sHJ ‚t t 	||k¡ ¡�sdJ ‚t|g d¢ddgtd�}|jjtk�sŽJ ‚t  |¡}d|d	< d|d
< t|g d¢ddgd�}|d d du �sÔJ ‚|d d du �sêJ ‚d S )NrO  r5   rà   rL   rK   rU  r4   r·  rÅ   r»  rÜ   rá   rh   z8datetime64\[ns\] values and dtype=int64 is not supportedr]   r_   TF)r   r¼  râ   r   rO   rX   r—   r8   r   r½  r)   rÇ   r6   rÁ   r#   rd   re   rƒ   r0   r;   r  rn   )r>   r¸  r#  Zmat2rf   rB   rB   rC   Ú%test_constructor_maskedarray_nonfloatA  sP    
:

z?TestDataFrameConstructors.test_constructor_maskedarray_nonfloatc                 C   sÀ   t jdtd� ¡ }t|ddgddgd�}ttjtjgtjtjgdœddgddgtd	�}t ||¡ t j	dtd� ¡ }t|ddgddgd�}td
d
gd
d
gdœddgddgtd	�}t ||¡ d S )N)rK   rK   r5   rÜ   rl   rL   rK   rU  r  r·  rº   )
r   r¼  rÂ   Zharden_maskr   r8   rc   r<   r=   r¸   )r>   Zmat_hardrs   rA   rB   rB   rC   Ú%test_constructor_maskedarray_hardened…  s$    üüz?TestDataFrameConstructors.test_constructor_maskedarray_hardenedc                 C   sp   t jjt jjdddgd�dgd d�}| tj¡}tjt	dd�� t
|td� W d   ƒ n1 sb0    Y  d S )	Nr•   )r   ú<f8)ZpricerÁ  r5   F)ÚmaskzPass \{name: data\[name\]r]   )r8   r   rb   r  r�   r   Z	mrecarrayrd   re   rƒ   r   râ   ©r>   r¨   rB   rB   rC   Ú%test_constructor_maskedrecarray_dtype›  s    ÿz?TestDataFrameConstructors.test_constructor_maskedrecarray_dtypec                 C   s   t g d�}|jjdksJ ‚d S )NrW   rÅ   )r   rÇ   Úshaperj   rB   rB   rC   Útest_constructor_corner_shape¥  s    
z7TestDataFrameConstructors.test_constructor_corner_shapez%data, index, columns, dtype, expectedrã   rv   r´   r)   r   c                 C   s"   t ||||ƒ}|jj|ksJ ‚d S rœ   )r   rÇ   r6   )r>   r¨   rX   r—   r6   rA   r@   rB   rB   rC   Útest_constructor_dtype©  s    z0TestDataFrameConstructors.test_constructor_dtypezdata,input_dtype,expected_dtype)TFNÚboolean©rº   r»   NZFloat64)rL   rK   NÚInt64r³   Ústringc                 C   s(   t d|i|d�}|d j|ƒ ks$J ‚d S )Nrv   r5   r  )r>   r¨   Zinput_dtypeZexpected_dtyper@   rB   rB   rC   Ú0test_constructor_dtype_nullable_extension_arrays·  s    zJTestDataFrameConstructors.test_constructor_dtype_nullable_extension_arraysc                 C   s”   ddddddœ}t |t d¡d�}|d	 jtjks6J ‚|d
 jtjksJJ ‚|d jtjks^J ‚|d jtjksrJ ‚|sˆ|d jtjks�nds�J ‚d S )NrL   Tr¼   y              @r¯   )râ   r  rÂ   Úcomplexrn   rã   rW   râ   r  rÂ   rÍ  rn   r7   )	r   r8   r9   r6   r0   r  r)   rò   r°   )r>   r±   r¨   r@   rB   rB   rC   Ú!test_constructor_scalar_inferenceÆ  s    z;TestDataFrameConstructors.test_constructor_scalar_inferencec                 C   s‚   t tj d¡ d¡ddœƒ}t |d jdgd dœƒ}t ||¡ tj	t
dd�� t dddœƒ W d   ƒ n1 st0    Y  d S )	NrK   rã   Trñ   rv   zmust pass an indexr]   F)r   r8   rä   rå   rs  rÇ   r<   r=   rd   re   r·   )r>   r@   r$  rB   rB   rC   Ú#test_constructor_arrays_and_scalarsÐ  s
    z=TestDataFrameConstructors.test_constructor_arrays_and_scalarsc                 C   s8   t |ƒ}t ||¡ t |tjd�}|jjtjks4J ‚d S ©Nr5   )r   r<   r=   r8   r0   rÇ   r6   )r>   rý   r@   Z	df_castedrB   rB   rC   Útest_constructor_DataFrameØ  s    z4TestDataFrameConstructors.test_constructor_DataFramec                 C   s*   t t ƒ dd�}t g dd�}t ||¡ d S )Nrn   r5   r­   )r>   ÚactualrA   rB   rB   rC   Ú test_constructor_empty_dataframeß  s    z:TestDataFrameConstructors.test_constructor_empty_dataframec                 C   s®  t j d¡ d¡}t|dgt  d¡d�}|jjdks8J ‚t j d¡ d¡}t|ƒ}|jjdksbJ ‚|jjdksrJ ‚tddgt  d¡d�}|jjdks˜J ‚tddgd�}|jjd	ks¶J ‚tt  d¡d
�}|jjdksÖJ ‚t j	ddgt
d� dd¡}d}tjt|d��& t|ddgdgtd� W d   ƒ n1 �s00    Y  tt|jƒƒ}t ||¡ tt jdtd�t jdt jd�dœt  d¡d
�}t|jƒdk�s–J ‚|jjt jk�sªJ ‚d S )NrK   rã   rÜ   rU  r   rl   ©rã   rK   r–   )r   rK   rW   )rã   r   r¯   rß   r5   rL   z(could not convert string to float: 'foo'r]   ©rX   r—   r6   r  )r8   rä   rå   rs  r   r9   rÇ   ÚndimrÅ  rb   rn   r:   rd   re   r·   rÂ   r-  r<   r=   r¸   râ   r)   rO   r—   r6   )r>   rý   r?   rw  r¸  rf   rB   rB   rC   Útest_constructor_moreå  s2    6þz/TestDataFrameConstructors.test_constructor_morec                 C   sx   t g g d�}t g d�}t ||¡ t g ddgd�}t i ddgd�}t ||¡ dd„ }t |ƒ ddgd�}t ||¡ d S )NrW   rÜ   rl   r–   c                   s   s   dE d H  d S rŸ   rB   rB   rB   rB   rC   Ú	empty_gen  s    zHTestDataFrameConstructors.test_constructor_empty_list.<locals>.empty_genr­   )r>   r@   rA   rØ  rB   rB   rC   Útest_constructor_empty_list  s    
z5TestDataFrameConstructors.test_constructor_empty_listc                 C   s†   t ddgddggddgd�}t|d ƒs,J ‚|sB|d jtjksJndsJJ ‚t dt d	¡iƒ}d
d„ td	ƒD ƒ}t |ƒ}t ||¡ d S )NrL   rv   rK   r´   Únumr7   rK  r   rã   c                 S   s   g | ]}t  |¡‘qS rB   ©r8   rb   rŠ   rB   rB   rC   r�   &  rŽ   zLTestDataFrameConstructors.test_constructor_list_of_lists.<locals>.<listcomp>)	r   r   r6   r8   r°   r9   r˜   r<   r=   )r>   r±   r@   rA   r¨   rs   rB   rB   rC   Útest_constructor_list_of_lists  s    z8TestDataFrameConstructors.test_constructor_list_of_listsc                 C   sx   t ddgƒ}tjd d gtd�}||d< |d |d< t|ƒ}tt |¡ƒ}t ||¡ |jdksbJ ‚t 	|d j
|¡ d S )NrL   rK   r5   r   )rK   rL   )r   r8   rb   rn   r   r©  r<   r=   rÅ  rm  rÇ   )r>   Úserr?   r@   rA   rB   rB   rC   Ú.test_nested_pandasarray_matches_nested_ndarray*  s    zHTestDataFrameConstructors.test_nested_pandasarray_matches_nested_ndarrayc                 C   sZ   t dƒt dƒg}tg d¢g d¢g|d�}t |¡}tg d¢g d¢g|d�}t ||¡ d S )NÚabcdZcdefr¢  ©r3   r•   rF   rˆ  r–   )rù   r   r   Zfrom_arraysr<   r=   )r>   r�   rs   rS  rA   rB   rB   rC   Ú2test_constructor_list_like_data_nested_list_column8  s
    
zLTestDataFrameConstructors.test_constructor_list_like_data_nested_list_columnc                 C   s^   t dƒt dƒg}d}tjt|d��( tg d¢g d¢g|d� W d   ƒ n1 sP0    Y  d S )Nr   Úcdez#3 columns passed, passed data had 4r]   r¢  rà  r–   ©rù   rd   re   r·   r   ©r>   r�   rf   rB   rB   rC   Ú0test_constructor_wrong_length_nested_list_columnB  s    zJTestDataFrameConstructors.test_constructor_wrong_length_nested_list_columnc                 C   s^   t dƒt dƒg}d}tjt|d��( tg d¢g d¢g|d� W d   ƒ n1 sP0    Y  d S )Nrß  râ  zall arrays must be same lengthr]   r¢  rà  r–   rã  rä  rB   rB   rC   Ú2test_constructor_unequal_length_nested_list_columnJ  s    zLTestDataFrameConstructors.test_constructor_unequal_length_nested_list_columnr¨   ú
2021-01-01rŒ   rU   c                 C   s:   t |g d¢dgd�}t dtdƒgd iƒ}t ||¡ d S )Nr*  rŒ   r«   rç  r4   )r   r    r<   r=   r{  rB   rB   rC   Ú&test_constructor_one_element_data_listS  s    z@TestDataFrameConstructors.test_constructor_one_element_data_listc                 C   sj   G dd„ dt jƒ}|ddgƒ|ddgƒg}ddg}t||d	�}tddgddgg|d	�}tj||d
d� d S )Nc                   @   s0   e Zd Zddœdd„Zdd„ Zedœdd„ZdS )	zPTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainerN©Úreturnc                 S   s
   || _ d S rœ   )Ú_lst)r>   ÚlstrB   rB   rC   Ú__init__g  s    zYTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__init__c                 S   s   | j  |¡S rœ   )rë  Ú__getitem__)r>   ÚnrB   rB   rC   rî  j  s    z\TestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__getitem__c                 S   s
   | j  ¡ S rœ   )rë  Ú__len__)r>   rB   rB   rC   rð  m  s    zXTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__len__)Ú__name__Ú
__module__Ú__qualname__rí  rî  râ   rð  rB   rB   rB   rC   ÚDummyContainerf  s   rô  rL   rv   rK   r´   rÚ  r7   r–   Frz  )r   ÚSequencer   r<   r=   )r>   rô  Zlst_containersr—   rs   rA   rB   rB   rC   Útest_constructor_sequence_likeb  s    
z8TestDataFrameConstructors.test_constructor_sequence_likec                 C   s�   t dt dtdƒ¡iƒ}t dttdƒƒiƒ}tj||dd� t ttdƒƒttdƒƒgƒ}t t dtdƒ¡t dtdƒ¡gƒ}tj||dd� d S )NrÜ   r  rã   Frz  )r   rb   r˜   rù   r<   r=   rM  rB   rB   rC   Útest_constructor_stdlib_arrayv  s    $z7TestDataFrameConstructors.test_constructor_stdlib_arrayc                 C   s,   t tdƒƒ}t ttdƒƒƒ}t ||¡ d S ©Nrã   ©r   r˜   rù   r<   r=   rM  rB   rB   rC   Útest_constructor_range�  s    z0TestDataFrameConstructors.test_constructor_rangec                 C   s@   t tdƒtdƒgƒ}t ttdƒƒttdƒƒgƒ}t ||¡ d S rø  rù  rM  rB   rB   rC   Útest_constructor_list_of_ranges‡  s    z9TestDataFrameConstructors.test_constructor_list_of_rangesc                 C   s:   G dd„ dƒ}t g d¢gd ƒ}t |ƒ ƒ}t ||¡ d S )Nc                   @   s   e Zd Zedœdd„ZdS )zATestDataFrameConstructors.test_constructor_iterable.<locals>.Iterré  c                 s   s   t dƒD ]}g d¢V  qd S )Nrã   ry  )r˜   )r>   r  rB   rB   rC   Ú__iter__�  s    zJTestDataFrameConstructors.test_constructor_iterable.<locals>.Iter.__iter__N)rñ  rò  ró  r   rü  rB   rB   rB   rC   ÚIterŽ  s   rý  ry  rã   r­   )r>   rý  rA   rs   rB   rB   rC   Útest_constructor_iterableŒ  s    
z3TestDataFrameConstructors.test_constructor_iterablec                 C   s0   t ttdƒƒƒ}t ttdƒƒƒ}t ||¡ d S rø  ©r   r€  r˜   rù   r<   r=   rM  rB   rB   rC   Útest_constructor_iterator—  s    z3TestDataFrameConstructors.test_constructor_iteratorc                 C   sH   t ttdƒƒttdƒƒgƒ}t ttdƒƒttdƒƒgƒ}t ||¡ d S rø  rÿ  rM  rB   rB   rC   Ú"test_constructor_list_of_iteratorsœ  s    z<TestDataFrameConstructors.test_constructor_list_of_iteratorsc                 C   s˜   dd„ t dƒD ƒ}dd„ t dƒD ƒ}ttt dƒƒtt dƒƒgƒ}t||gƒ}t ||¡ dd„ t dƒD ƒ}t|ƒ}tt dƒddœƒ}tj||dd	� d S )
Nc                 s   s   | ]
}|V  qd S rœ   rB   r  rB   rB   rC   r¢   ¤  rŽ   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>rã   c                 s   s   | ]
}|V  qd S rœ   rB   r  rB   rB   rC   r¢   ¥  rŽ   c                 s   s   | ]}|d gV  qdS )rv   NrB   r  rB   rB   rC   r¢   «  rŽ   rv   rM   Frz  )r˜   r   rù   r<   r=   )r>   Zgen1Zgen2rA   rs   ÚgenrB   rB   rC   Útest_constructor_generator¡  s    z4TestDataFrameConstructors.test_constructor_generatorc                 C   s*   t i gƒ}t tdƒg d�}t ||¡ d S )NrL   r«   )r   r   r<   r=   rM  rB   rB   rC   Útest_constructor_list_of_dicts°  s    
z8TestDataFrameConstructors.test_constructor_list_of_dictsc                 C   sf   t ddgƒ}t ddgƒ}t d|fd|fgƒ}t|ƒ}ddgdd	gd
œ}t|ddgd�}t ||¡ d S )N)r´   rL   )rv   rK   )r´   rK   )rv   r•   r¾   r½   rL   rK   r•   )r¾   r½   r´   rv   )r¨   rX   )r   r   r<   r=   )r>   Znested1Znested2r¨   rs   rA   rB   rB   rC   Ú3test_constructor_ordered_dict_nested_preserve_orderµ  s    zMTestDataFrameConstructors.test_constructor_ordered_dict_nested_preserve_orderÚ	dict_typec                 C   st   t ddggddgd�}|ƒ }dg|d< dg|d< t |ƒ}t ||¡ |ƒ }d|d< d|d< t |gƒ}t ||¡ d S )NrK   rL   r´   rv   r–   r­   )r>   r  rA   r¨   rs   rB   rB   rC   Ú,test_constructor_ordered_dict_preserve_order¿  s    


zFTestDataFrameConstructors.test_constructor_ordered_dict_preserve_orderc                 C   sª   |ƒ }d|d< d|d< |ƒ }d|d< d|d< dddœ}t ddgddggddgd�}t ||gƒ}t ||¡ t ddgddgddggddgd�}t |||gƒ}t ||¡ d S )NrK   r´   rL   rv   rI  r–   r­   )r>   r  Zrow_oneZrow_twoZ	row_threerA   rs   rB   rB   rC   Ú0test_constructor_ordered_dict_conflicting_ordersÒ  s    
"zJTestDataFrameConstructors.test_constructor_ordered_dict_conflicting_ordersc                 C   sT   dd„ t dƒD ƒ}t|ƒ}tg d¢g d¢g d¢dœg d¢g d¢d�}t ||¡ d S )Nc                 S   s"   g | ]}t |g d ¢t|ƒd�‘qS )©r´   rv   rµ   r  )r   r7   r  rB   rB   rC   r�   é  rŽ   z[TestDataFrameConstructors.test_constructor_list_of_series_aligned_index.<locals>.<listcomp>r4   r*  r	  )Ú0r'  rØ   rU  r}  )r>   Úseriesrs   rA   rB   rB   rC   Ú-test_constructor_list_of_series_aligned_indexè  s    ýzGTestDataFrameConstructors.test_constructor_list_of_series_aligned_indexc                 C   sJ   G dd„ dt ƒ}dddœ}||ƒg}|g}t|ƒ}t|ƒ}t ||¡ d S )Nc                   @   s   e Zd ZdS )zTTestDataFrameConstructors.test_constructor_list_of_derived_dicts.<locals>.CustomDictN©rñ  rò  ró  rB   rB   rB   rC   Ú
CustomDictó  s   r  ç      ø?r4   rñ   )rì   r   r<   r=   )r>   r  r{   Zdata_customr¨   Zresult_customrs   rB   rB   rC   Ú&test_constructor_list_of_derived_dictsò  s    

z@TestDataFrameConstructors.test_constructor_list_of_derived_dictsc                 C   s`   t j d¡ d¡t j d¡ d¡dœ}tjtdd�� t|ƒ W d   ƒ n1 sR0    Y  d S )NrK   rã   r‰  r  z%All arrays must be of the same lengthr]   )r8   rä   rå   rs  rd   re   r·   r   rÃ  rB   rB   rC   Útest_constructor_raggedÿ  s
    þz1TestDataFrameConstructors.test_constructor_raggedc                 C   sD   t tdƒƒ}tddi|d�}tdg d¢i|d�}tj||dd� d S )Nr4   rv   r   rW   )r   r   r   Frz  )r   r˜   r   r<   r=   )r>   rr   r@   rA   rB   rB   rC   Útest_constructor_scalar  s    z1TestDataFrameConstructors.test_constructor_scalarc                 C   s"   t |d |jdgd�}| ¡  d S )NrÜ   r«   )r   rX   rÁ   )r>   rý   r@   rB   rB   rC   Ú test_constructor_Series_copy_bug  s    z:TestDataFrameConstructors.test_constructor_Series_copy_bugc                 C   sÖ   i }ddddœ|d< t g d¢g d¢d�|d	< t|ƒ}|jjs@J ‚tjtd
d��( tddgdddœdœƒ W d   ƒ n1 s|0    Y  tddgt ddgddgd�dœƒ}tddgddgdœddgd�}t ||¡ d S )NrL   rK   r4   rY  rÜ   )r3   r4   rK   rL   )rß   ZquxrZ  r¯   rW   rl   zambiguous orderingr]   rv   r´   rñ   r  )	r   r   rX   Zis_monotonic_increasingrd   re   r·   r<   r=   r{  rB   rB   rC   Ú&test_constructor_mixed_dict_and_Series  s    6"z@TestDataFrameConstructors.test_constructor_mixed_dict_and_Seriesc                 C   s8   ddgdg}t |ƒ}t ddgddggƒ}t ||¡ d S )NrL   rK   ©r4   r3   r4   r3   r­   r{  rB   rB   rC   Ú test_constructor_mixed_type_rows"  s    z:TestDataFrameConstructors.test_constructor_mixed_type_rowsztuples,lists)rB   rB   ry  r\  c                 C   s    t |ƒ}t |ƒ}t ||¡ d S rœ   r­   )r>   rR  Úlistsrs   rA   rB   rB   rC   Útest_constructor_tuple)  s    z0TestDataFrameConstructors.test_constructor_tuplec                 C   s4   t dddgiƒ}t dtddgƒiƒ}t ||¡ d S )NrÜ   r»  r  ©r   r   r<   r=   rM  rB   rB   rC   Útest_constructor_list_of_tuples;  s    z9TestDataFrameConstructors.test_constructor_list_of_tuplesc                 C   s‚   t dtdƒƒ}|ddƒ|ddƒg}tddgddgdœƒ}t|ƒ}t ||¡ tddgddgdœƒ}t|d	d
gd�}t ||¡ d S )NZPandasÚabrL   r4   rK   r3   rñ   )r™   rŽ  r™   rŽ  r–   )r   rù   r   r<   r=   )r>   Znamed_tuplerR  rA   rs   rB   rB   rC   Ú$test_constructor_list_of_namedtuples@  s    z>TestDataFrameConstructors.test_constructor_list_of_namedtuplesc                 C   sX   t ddtfdtfgƒ}|ddƒ|ddƒg}tddgddgdœƒ}t|ƒ}t ||¡ d S )NÚPointrŒ   r™   r   r4   rL   ©rŒ   r™   )r   râ   r   r<   r=   )r>   r  r¨   rA   rs   rB   rB   rC   Ú$test_constructor_list_of_dataclassesM  s
    z>TestDataFrameConstructors.test_constructor_list_of_dataclassesc                 C   sˆ   t ddtfdtfgƒ}t ddtfdtfdtfgƒ}|ddƒ|d	ddƒg}tdtjgddgtjd	gtjdgd
œƒ}t|ƒ}t ||¡ d S )Nr  rŒ   r™   ÚHLineÚx0Úx1r   r4   rL   )rŒ   r™   r!  r"  )r   râ   r   r8   rc   r<   r=   )r>   r  r   r¨   rA   rs   rB   rB   rC   Ú7test_constructor_list_of_dataclasses_with_varying_typesV  s    "ÿzQTestDataFrameConstructors.test_constructor_list_of_dataclasses_with_varying_typesc                 C   sj   t ddtfdtfgƒ}d}tjtt |¡d��( t|ddƒdddœgƒ W d   ƒ n1 s\0    Y  d S )	Nr  rŒ   r™   z0asdict() should be called on dataclass instancesr]   r   rL   r  )r   râ   rd   re   rƒ   ÚreÚescaper   )r>   r  rf   rB   rB   rC   Ú1test_constructor_list_of_dataclasses_error_thrownd  s    zKTestDataFrameConstructors.test_constructor_list_of_dataclasses_error_thrownc              	   C   sr   dddddœdddd	d
œdddddddœg}t g d¢g d¢g d¢g d¢g d¢g d¢dœƒ}t |ƒ}t ||¡ d S )NrL   r3   rˆ  rã   )ÚFirstÚSecondÚThirdÚFourthr•   rK   rD  r‰  )r(  r'  r*  r)  rF   r4   r2   rŠ  é   rG  )r(  r'  r*  r)  ÚYYYÚXXXry  r\  )rˆ  r‰  rŠ  )rã   rD  r2   )NNr+  )NNrG  )r'  r(  r)  r*  r,  r-  r­   )r>   r¨   rA   rs   rB   rB   rC   Ú#test_constructor_list_of_dict_orderm  s    ýúÿ
z=TestDataFrameConstructors.test_constructor_list_of_dict_orderc                 C   sŒ  t g d¢g d¢dd�}t|ƒ}|jd dks0J ‚t |j|j¡ tj d¡ 	d¡}t |dd�}t|ƒ}td|iƒ}t 
||¡ t |td	d
ƒd�}t|ƒ}td|iƒ}t 
||¡ d}tjt|d��  t|ddgd� W d   ƒ n1 sè0    Y  t g dtd�}t|ƒ}|jd dk�sJ ‚t |dd�}t||gƒj}t||dœddgd�}t 
||¡ t||gƒj}t||dœddgd�}t 
||¡ d S )Nry  r³   rŒ   r  r   rK   rã   rm   r4   rG  rW   z<Shape of passed values is \(10, 1\), indices imply \(10, 2\)r]   rL   r–   ©ra   r6   )rŒ   ú	Unnamed 0r0  rÙ   )r   r   r—   r<   rû   rX   r8   rä   rå   rs  r=   r˜   rd   re   r·   rn   r�  )r>   rv   r@   r?   r•  rA   rf   Ús1rB   rB   rC   Útest_constructor_Series_named�  s4    .z7TestDataFrameConstructors.test_constructor_Series_namedc                 C   s€   t tdƒdd�}t tdƒdd�}t t|dgd�| ¡ ¡ t t|dgd�| ¡ ¡ t|dgd�jshJ ‚t|dgd�js|J ‚d S )Nr•   r   rm   rL   r–   )r   r˜   r<   r=   r   Úto_framerÝ   )r>   Ús0r1  rB   rB   rC   Ú)test_constructor_Series_named_and_columns§  s    zCTestDataFrameConstructors.test_constructor_Series_named_and_columnsc                 C   s¸   t g d¢g d¢dd�}t g d¢g d¢d�}tddgƒ}t||d�}t| |¡ƒ}|jd dksbJ ‚t ||¡ t||d�}t| |¡ƒ}|jd dksšJ ‚t |j|¡ t ||¡ d S )	Nry  r³   rŒ   r  rW   rv   r´   r   )	r   r   r   rü   r—   r<   r=   rû   rX   )r>   r1  Ús2Zother_indexÚdf1Zexp1rÏ   Zexp2rB   rB   rC   Ú+test_constructor_Series_differently_indexedµ  s    zETestDataFrameConstructors.test_constructor_Series_differently_indexedz#name_in1,name_in2,name_in3,name_out))rr   rr   rr   rr   )rr   rr   NN)rr   NNN)Úidx1Úidx2NN)r9  r9  r:  N)r9  r:  Zidx3N)NNNNc           
      C   s¬   t g d¢|d�t g d¢|d�t g d¢|d�g}dd„ t|g d¢ƒD ƒ}t|ƒ}t g d¢|d�}td	d
dtjtjgtjd	d
dtjgtjtjd	d
dgdœ|d�}	t ||	¡ d S )Nr³   rm   )r´   rµ   r{   )rµ   r{   Úec                 S   s"   i | ]\}}|t g d ¢|d�“qS )r*  rW   r‰   )r‹   r  rµ   rB   rB   rC   r?  Ü  s   zJTestDataFrameConstructors.test_constructor_index_names.<locals>.<dictcomp>)rŒ   r™   rŽ  ©rv   r´   rµ   r{   r;  r   rL   rK   rW   )r   rê   r   r8   rc   r<   r=   )
r>   Zname_in1Zname_in2Zname_in3Zname_outÚindicesr  rs   Zexp_indrA   rB   rB   rC   Útest_constructor_index_namesÉ  s"    ýÿýú	z6TestDataFrameConstructors.test_constructor_index_namesc                 C   s�   t |jd d… ƒ}t |jd d… ƒ}d}tjt|dd��  t|j||d�}W d   ƒ n1 s^0    Y  t |jt	|ƒ¡ t |jt	|ƒ¡ d S )Nr•   r4   z#Passing a BlockManager to DataFrameF)r^   Zcheck_stacklevelr«   )
rù   rX   r—   r<   Úassert_produces_warningÚDeprecationWarningr   rP   rû   r   )r>   rý   rX   r—   rf   rs   rB   rB   rC   Útest_constructor_manager_resizeí  s    ÿ.z9TestDataFrameConstructors.test_constructor_manager_resizec                 C   s˜   t |d t|d ƒdœddgd�}t ||jd d …ddgf ¡ d}tjt|d��2 t |d t|d ƒd d… dœƒ W d   ƒ n1 sŠ0    Y  d S )NrÜ   rl   r  r–   zdoes not match index lengthr]   éþÿÿÿ)r   rù   r<   r=   rÚ   rd   re   r·   )r>   rý   r@   rf   rB   rB   rC   Ú%test_constructor_mix_series_nonseriesù  s    ÿz?TestDataFrameConstructors.test_constructor_mix_series_nonseriesc                 C   sR   d}t jt|d��, ttjdgddggtjd� W d   ƒ n1 sD0    Y  d S )Nr\   r]   rL   r   r5   )rd   re   r   r   r8   rc   r0   r6  rB   rB   rC   Ú%test_constructor_miscast_na_int_dtype  s    z?TestDataFrameConstructors.test_constructor_miscast_na_int_dtypec                 C   s^   t ddggddgd�}t ddggƒ}ddg|_t ||¡ t jdgddgd�}t ||¡ d S )Nr‰  r•   rv   r–   )r‰  r•   )r   r—   r<   r=   Zfrom_records)r>   r@   ZedfZidfrB   rB   rC   Ú"test_constructor_column_duplicates	  s    
z<TestDataFrameConstructors.test_constructor_column_duplicatesc                 C   s´   t ddgddgtd�}t ddgddgtjtjd�d�}t ddgddgtd�}|r^t ||¡ nt ||¡ t ddgddgtj	d�}t ||¡ t ddgddgdd�}t ||¡ d S )Nr   rL   rÕ  ©Zna_valueZU5)
r   rn   r©  ÚStringDtyper8   rc   r7   r<   r=   Zstr_)r>   r±   rA   Zexpected_strr@   rB   rB   rC   Ú(test_constructor_empty_with_string_dtype  s    ÿzBTestDataFrameConstructors.test_constructor_empty_with_string_dtypec                 C   s,   t dg|d�}t dg|d�}t ||¡ d S )NÚc1©r—   r6   r­   )r>   Znullable_string_dtyperA   r@   rB   rB   rC   Ú,test_constructor_empty_with_string_extension&  s    zFTestDataFrameConstructors.test_constructor_empty_with_string_extensionc                 C   s�  t dg d¢g d¢d�}t |t t |j¡ d¡|j|jƒ¡ t dg d¢g d¢d�}t |t t |j¡ d¡|j|jƒ¡ t dd	d
gddgd�}t |t tj	ddgddggt
d�d	d
gddgd�¡ d}tjt|d�� t dd	d
gƒ W d   ƒ n1 sø0    Y  tjt|d��  t dddgd� W d   ƒ n1 �s80    Y  d}tjt|d��& t dd	d
gddgtƒ W d   ƒ n1 �s‚0    Y  d S )Nç        ry  r³   r«   r)   r   r0   rv   rL   rK   rµ   r5   z*DataFrame constructor not properly called!r]   r–   zincompatible data and dtype)r   r<   r=   r8   r  rÅ  r;   rX   r—   rb   rn   rd   re   r·   rƒ   rÂ   )r>   r@   rf   rB   rB   rC   Útest_constructor_single_value,  s2    ÿÿýþ	,0z7TestDataFrameConstructors.test_constructor_single_valuec                 C   s"  t  t¡j}t  t j¡j}t  t j¡j}tdddtdƒtdddddƒdœt  	d	¡d
�}|j
}tt  d¡g|svt  |¡ntjt jd�gd  t  d¡t  d¡g tdƒd
�}t ||¡ tdddddd|t jd|d�|t jd|d�it  	d	¡d
�}|j
}tt  d¡gt  d¡g |�st  d¡ntjt jd�g t  d¡g t  |¡g ddd||gd
�}t ||¡ tdddddd|t jdgd	 |d�|t jdgd	 |d�it  	d	¡d
�}|j
}tt  d¡gt  d¡g |�sØt  d¡ntjt jd�g t  d¡g t  |¡g ddd||gd
�}t ||¡ d S )NrL   r¯   rß   Z20010101éÑ  rK   r   )rÜ   rl   rá   r9  ÚErã   rW   r0   rF  úM8[s]úM8[us]ZABCDErv   rº   r´   rµ   r5   r)   rn   )r8   r6   râ   ra   r)   r°   r   r    r	   r9   rí   r   r©  rG  rc   rù   r<   rq   rb   )r>   r±   ZintnameZ	floatnameZ
objectnamer@   rs   rA   rB   rB   rC   Útest_constructor_with_datetimesL  sž    ûø

ÿýûÿù÷ûø


ÿÿýþ
ù
ø	öûø


ÿÿýþ
ù
ø	öz9TestDataFrameConstructors.test_constructor_with_datetimesc                 C   s6   t dddd�}dd„ |D ƒ}t|ƒ}|jdks2J ‚d S )Nr[  r9  rã   ©Ústartr¨  rI   c                 S   s   g | ]}|  ¡ ‘qS rB   ©Úto_pydatetime©r‹   ÚtsrB   rB   rC   r�   ¢  rŽ   zNTestDataFrameConstructors.test_constructor_with_datetimes1.<locals>.<listcomp>rh   )r"   r   r6   )r>   ÚindÚ	datetimesZ
datetime_srB   rB   rC   Ú test_constructor_with_datetimes1Ÿ  s    z:TestDataFrameConstructors.test_constructor_with_datetimes1c                 C   sv   t dddd�}dd„ |D ƒ}dd„ |D ƒ}t|dgd	�}||d
< |j}tt d¡t d¡gdd
gd�}t ||¡ d S )Nr[  r9  rã   rS  c                 S   s   g | ]}|  ¡ ‘qS rB   rU  rW  rB   rB   rC   r�   ©  rŽ   zNTestDataFrameConstructors.test_constructor_with_datetimes2.<locals>.<listcomp>c                 S   s   g | ]}|  ¡ ‘qS rB   )r   rW  rB   rB   rC   r�   ª  rŽ   rZ  r–   Údatesúdatetime64[ns]rn   rW   )r"   r   rí   r   r8   r6   r<   rq   )r>   rY  rZ  r\  r@   rs   rA   rB   rB   rC   Ú test_constructor_with_datetimes2¦  s    þz:TestDataFrameConstructors.test_constructor_with_datetimes2c                 C   s˜   t  d¡}| tdddƒ¡}td|idgd�}|jd |ks@J ‚t |jt	ddit
d	�¡ td|igƒ}|jd |kszJ ‚t |jt	dd
it
d	�¡ d S )Nr®  éÜ  rL   zEnd Dater   rW   rÅ   zdatetime64[us, US/Eastern]r5   údatetime64[ns, US/Eastern])ÚpytzÚtimezoneZlocalizer	   r   Úiatr<   rq   rí   r   rn   )r>   rJ   rV   r@   rB   rB   rC   Ú test_constructor_with_datetimes3´  s    
ÿÿz:TestDataFrameConstructors.test_constructor_with_datetimes3c                 C   s”   t ddd�}td|iƒ}|jd jd u s,J ‚t dddd�}td|iƒ}t|jd jƒdks^J ‚t dddd�}td|iƒ}t|jd jƒdks�J ‚d S )	NÚ20130101r4   r  rY   rÅ   ÚUTCrH   r®  )r"   r   rc  rJ   r7   )r>   Údrr@   rB   rB   rC   Ú test_constructor_with_datetimes4Æ  s    z:TestDataFrameConstructors.test_constructor_with_datetimes4c                 C   s^   t ddddd�}td| ¡ jdd�iƒ}tƒ }||d< t ||¡ td|iƒ}t ||¡ d S )	Nú1/1/2011r•   Ú10sr®  ©rI   r¨  rJ   rv   T©Zdrop©r"   r   Z	to_seriesZreset_indexr<   r=   )r>   r  rA   r@   rB   rB   rC   Ú test_constructor_with_datetimes5Ó  s    z:TestDataFrameConstructors.test_constructor_with_datetimes5c                 C   sV   t ddddd�}t dddd�}t||dœƒ}t| ¡ jdd	�|dœƒ}t ||¡ d S )
Nri  r•   rj  r®  rk  ©rI   r¨  rñ   Trl  rm  )r>   r  Zi_no_tzr@   rA   rB   rB   rC   Ú test_constructor_with_datetimes6à  s
    z:TestDataFrameConstructors.test_constructor_with_datetimes6r?   r   c                 C   s*   t |ƒj}tt d¡gƒ}t ||¡ d S )Nr]  )r   rí   r   r8   r6   r<   rq   )r>   r?   rs   rA   rB   rB   rC   Ú%test_constructor_datetimes_with_nullsè  s    
z?TestDataFrameConstructors.test_constructor_datetimes_with_nullsÚorder)ÚKrÜ   rá   ÚFr°  )rˆ   r9  Úhr‡   r•  ÚmsÚusrU   c                 C   s¦   d|› d�}t jg d¢g d¢g||d�}t|ƒ}t| d¡ƒ}|dv rŠtjtdd	�� | |¡ W d   ƒ n1 st0    Y  | d
¡}n|j|d�}t ||¡ d S )Nzdatetime64[ú])z
2015-01-01z
2015-01-02z
2015-01-03)z
2017-01-01z
2017-01-02z
2017-02-03©r6   rr  rh   )rˆ   r9  ru  r‡   úCannot castr]   zdatetime64[s]r5   )	r8   rb   r   r;   rd   re   rƒ   r<   r=   )r>   rr  r°  r6   Únar@   rA   rB   rB   rC   Ú!test_constructor_datetimes_non_nsû  s     þú(z;TestDataFrameConstructors.test_constructor_datetimes_non_ns)r9  ru  r‡   r•  rv  rw  rU   c           	      C   s´   d|› d�}t jt  dd¡t  dd¡gt  dd¡t  dd¡gg||d�}t|ƒ}|d	v r^d
}n|}t  d|› d�¡}ttddƒtddƒgtddƒtddƒgg|d�}t ||¡ d S )Nztimedelta64[rx  rL   r9  rK   r3   r•   ry  )r9  ru  r‡   r•  zm8[r5   )r8   rb   rŸ  r   r6   r   r<   r=   )	r>   rr  r°  r6   r{  r@   Zexp_unitÚ	exp_dtyperA   rB   rB   rC   Ú!test_constructor_timedelta_non_ns  s(    þúþû	z;TestDataFrameConstructors.test_constructor_timedelta_non_nsc                 C   s:  t dd„ tdƒD ƒƒ}|j}tt d¡gd ƒ}t ||¡ t dd„ tdƒD ƒƒ}|j}tt d¡gd ƒ}t ||¡ t ddd	giƒ}|jjd
 t d¡ks¢J ‚t ddgƒ}|jjd
 t d¡ksÈJ ‚t ddgƒ}|jjd
 t d¡ksîJ ‚t dddgiƒ}|jjd
 t d¡k�sJ ‚t dddgiƒ}|jjd
 t d¡k�sFJ ‚t dditdƒd�}|jjd
 t d¡k�svJ ‚t dditdƒd�}|jjd
 t d¡k�s¦J ‚t g d¢g d¢t	dƒdd„ tdƒD ƒg d¢dœƒ}|j}tt d¡t d¡|�s t d¡nt
jtjd�t d¡t d¡gt	dƒd�}t ||¡ d S )Nc                 S   s   g | ]}t  d ¡‘qS )r•   )r8   r9   rŠ   rB   rB   rC   r�   B  rŽ   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>r•   râ   c                 S   s    g | ]}t jt  d ¡dd�‘qS )r•   r/   r5   )r8   rb   r9   rŠ   rB   rB   rC   r�   G  rŽ   r/   rv   l        l       r   r0   rL   rK   rº   r»   r)   r4   rW   )rL   rK   r3   rˆ  )g333333ó?gffffff@gffffff@g333333@rß  c                 S   s   g | ]}t d ddƒ‘qS )éÐ  rL   )r	   r  rB   rB   rC   r�   j  rŽ   r3   )rº   rK   rl  rˆ  r<  rn   rF  r]  Zabcde)r   r˜   rí   r   r8   r6   r<   rq   rÆ   rù   r©  rG  rc   )r>   r±   r@   rs   rA   rB   rB   rC   Ú%test_constructor_for_list_with_dtypes@  sV    ûÿ	ÿù	öz?TestDataFrameConstructors.test_constructor_for_list_with_dtypesc                 C   s@   t |dd�}d|d< |d dk ¡ s(J ‚|d dk ¡ r<J ‚d S )NTrÑ   r•   rÜ   )r   r   )r>   rý   ÚcoprB   rB   rC   Útest_constructor_frame_copy}  s    z5TestDataFrameConstructors.test_constructor_frame_copyc                 C   s@   |  ¡ }t|ƒ}|j|jus J ‚t t|ƒ¡|_t ||¡ d S rœ   )	rÁ   r   rP   r8   r9   rO   rX   r<   r=   )r>   rý   Úorigr�  rB   rB   rC   Ú#test_constructor_frame_shallow_copyƒ  s
    z=TestDataFrameConstructors.test_constructor_frame_shallow_copyc                 C   sú   |s||j  ¡ }t|ƒ}d|d< |r:|j d dk ¡ rPJ ‚n|j d dk ¡ sPJ ‚t|dd�}d|d< |j d dk ¡ röJ ‚nz|j  ¡ }t|ƒ}|jjd jjs¢J ‚d|d< |jd dks¼J ‚t|dd�}|jjd jjrÜJ ‚d	|d< |jd d	ksöJ ‚d S )
Nr•   TrÑ   rF   r   r  rÅ   Fiè  )	rÇ   rÁ   r   r   rP   r�   rÍ   rÎ   rÆ   )r>   rý   rR   rÈ   r?   r@   rB   rB   rC   Útest_constructor_ndarray_copyŽ  s&    

z7TestDataFrameConstructors.test_constructor_ndarray_copyc                 C   sP   |j }td|d idd�}d|j|jd |jd …df< |d dk ¡ rLJ ‚d S )NrÜ   TrÑ   r•   r   rø   )r-  r   rÚ   rX   r   )r>   rý   r  r@   rB   rB   rC   Útest_constructor_series_copy¬  s    z6TestDataFrameConstructors.test_constructor_series_copyr@   rW   gš™™™™™ñ?gš™™™™™@r–   rœ  rà  )rL  rL   rK   r¼   c                 C   sú   t t|jƒƒD ]}|jd d …|f  qt t|jƒ¡t|jƒ }t|ƒdkr�tjt	dd��$ |j
d d …tjf  W d   ƒ qö1 s„0    Y  nft|ƒdkrÌt |jd d …|d f |j
d d …tjf ¡ n*t |jd d …|f |j
d d …tjf ¡ d S )Nr   z^nan$r]   rL   )r˜   rO   r—   rÆ   r8   r9   r#   rd   re   ÚKeyErrorrÚ   rc   r<   rq   r=   )r>   r@   r  ZindexerrB   rB   rC   Útest_constructor_with_nas¶  s    40z3TestDataFrameConstructors.test_constructor_with_nasc                 C   s:   t dtjdgiƒ}|d jtjks&J ‚|d d r6J ‚d S )Nrv   FrL   )r   r8   rc   r6   r°   )r>   r{   rB   rB   rC   Ú&test_constructor_lists_to_object_dtype×  s    z@TestDataFrameConstructors.test_constructor_lists_to_object_dtypec                 C   sZ   t g d¢ƒ}t |¡ dd¡}t |d¡}t||jd�}t||||dœƒ}t ||¡ d S )Nrà   rø   rL   r  r5   rœ  )	r   r8   rb   r:   Zbroadcast_tor   r6   r<   r=   )r>   Úcatr?   rs   rA   rB   rB   rC   Ú*test_constructor_ndarray_categorical_dtypeÝ  s    zDTestDataFrameConstructors.test_constructor_ndarray_categorical_dtypec                 C   sÔ   t dtdƒidd�}ttdƒddd�}t |d |¡ ttdƒdd�}| ¡ }ttdƒddd�}t |d |¡ |jdd�}ttdƒddd�}t |d |¡ t tdƒdd�}ttdƒddd�}t |d |¡ d S )	NrÜ   r   Úcategoryr5   r`   r   r¯   rm   )r   rù   r   r<   rq   r3  )r>   r@   rA   r•  rs   rB   rB   rC   Útest_constructor_categoricalç  s    z6TestDataFrameConstructors.test_constructor_categoricalc                 C   s6   t tdƒƒ}t|gƒ}t| t¡gƒ}t ||¡ d S )Nr   )r   rù   r   r;   rn   r<   r=   )r>   rŠ  r@   rA   rB   rB   rC   Ú-test_construct_from_1item_list_of_categoricalý  s    
zGTestDataFrameConstructors.test_construct_from_1item_list_of_categoricalc                 C   s@   t ttdƒƒttdƒƒgƒ}t g d¢g d¢gƒ}t ||¡ d S )Nr   Zabdr³   )rv   r´   r{   ©r   r   rù   r<   r=   rW  rB   rB   rC   Ú(test_construct_from_list_of_categoricals	  s    zBTestDataFrameConstructors.test_construct_from_list_of_categoricalsc                 C   s<   t ttdƒƒtdƒgƒ}t g d¢g d¢gƒ}t ||¡ d S )Nr   Údefr³   ©r{   r;  Úfr�  rW  rB   rB   rC   Ú%test_from_nested_listlike_mixed_types	  s    z?TestDataFrameConstructors.test_from_nested_listlike_mixed_typesc                 C   s@   t ttdƒƒttdƒƒgƒ}t tdƒtdƒgƒ}t ||¡ d S )Nr   Zabdefgr�  rW  rB   rB   rC   Ú0test_construct_from_listlikes_mismatched_lengths	  s    zJTestDataFrameConstructors.test_construct_from_listlikes_mismatched_lengthsc                 C   sÆ   g d¢}t |ƒ d¡}t |dd�}t ||¡ g d¢}t |ƒ d¡}t |dd�}t ||¡ tddd�}t ttjtjtjgg d¢d	�ƒ}||_t	d
|iƒ}t	d
t g d¢dd�i|d�}t 
||¡ d S )N)rL   rK   r4   rL   rŒ  r5   )rv   r´   rµ   rv   Z20000101r4   r  r³   )rÇ   Ú
categoriesrŒ   rW   )r   r;   r<   rq   r"   r   r8   rc   rX   r   r=   )r>   rd  r$  ÚresrX   rA   r@   rB   rB   rC   Ú#test_constructor_categorical_series	  s     ÿz=TestDataFrameConstructors.test_constructor_categorical_seriesr6   c                 C   s,   t dddgidg|d�}|jj|ks(J ‚d S )Nrv   rL   rK   r´   rJ  )r   r´   r6   )r>   r6   r¨   rB   rB   rC   Ú%test_check_dtype_empty_numeric_column2	  s    
z?TestDataFrameConstructors.test_check_dtype_empty_numeric_columnc                 C   sF   t dddgidg|d�}|r0|tjv r0t |¡ |jjjdksBJ ‚d S )Nrv   rL   rK   r´   rJ  rn   )r   r<   ÚBYTES_DTYPESr¥  Ú&mark_array_manager_not_yet_implementedr´   r6   ra   )r>   Úrequestr6   rR   r¨   rB   rB   rC   Ú$test_check_dtype_empty_string_column@	  s    
z>TestDataFrameConstructors.test_check_dtype_empty_string_columnc                 C   sL   t dtd� ¡ j}t dtiƒ}t ||¡ tt dtd�ƒj}t ||¡ d S )Nr   r/  )r   rn   r3  rí   r<   rq   r   rM  rB   rB   rC   Útest_to_frame_with_falsey_namesN	  s
    z9TestDataFrameConstructors.test_to_frame_with_falsey_names)Nr*   rŒ  c                 C   s\   t dg d¢i|pdd�}t tdƒdg|d�}t ||¡ t dtdƒi|d�}t ||¡ d S )NrÜ   )r   rL   rK   r4   r3   r0   r5   r•   rJ  )r   r˜   r<   r=   )r>   r6   rA   rs   rB   rB   rC   Útest_constructor_range_dtypeW	  s
    z6TestDataFrameConstructors.test_constructor_range_dtypec                 C   sT   G dd„ dt ƒ}tg d¢g d¢gƒ}t||g d¢ƒ|g d¢ƒgƒƒ}t ||¡ d S )Nc                   @   s   e Zd ZdS )zETestDataFrameConstructors.test_frame_from_list_subclass.<locals>.ListNr  rB   rB   rB   rC   ÚListf	  s   r   ry  r\  )rù   r   r<   r=   )r>   r   rA   rs   rB   rB   rC   Útest_frame_from_list_subclassd	  s     z7TestDataFrameConstructors.test_frame_from_list_subclassÚextension_arrZaabbcz1/1/2017z1/1/2018)rT  Úendr¨  c                 C   s$   t t|ƒƒ}t |ƒ}t ||¡ d S rœ   r  )r>   r¢  rA   rs   rB   rB   rC   Ú%test_constructor_with_extension_arraym	  s    z?TestDataFrameConstructors.test_constructor_with_extension_arrayc                 C   s\   t  ¡ }||f}t|ttdƒtdƒd�i|gd�}tg d¢tt|gƒƒd�}t ||¡ d S )Nr4   rW   r–   r*  )r   Útodayr   r   r˜   r   r<   r=   )r>   ri  Útuprs   rA   rB   rB   rC   Ú*test_datetime_date_tuple_columns_from_dict|	  s
    "zDTestDataFrameConstructors.test_datetime_date_tuple_columns_from_dictc                 C   sx   t g d¢tg d¢ƒd�}t g d¢tg d¢ƒd�}t||gƒ}tt dddtjtjgg d	¢g¡g d
¢d�}t ||¡ d S )N)é'   rF   r3   )ÚfemaleÚmaleÚunknownrW   )rK   é˜   rK   éò   é–   )r“  r©  r‡   rª  r«  r¨  rF   r3   )g      c@g     @n@g     Àb@r»   r»   )r©  rª  r«  r“  r‡   r–   )r   r   r   r8   rb   rc   r<   r=   )r>   r1  r6  rs   rA   rB   rB   rC   Ú/test_construct_with_two_categoricalindex_series„	  s    
þþzITestDataFrameConstructors.test_construct_with_two_categoricalindex_seriesz7ignore:invalid value encountered in cast:RuntimeWarningc                 C   s  t tdƒƒ}t|dƒ ¡  d¡}t|dƒ ¡  d¡}t||dœƒ}ttdddd�tdd	dd�td	d
dd�td
ddd�tdddd�tdddd�tdddd�tdddd�tdddd�tdddd�g
dd�}tdgd t	j
gd  t	j
gd dgd  dœ|d�}t ||¡ d S )Nr  rã   r•   r&  gòÒMbX¹¿gÍÌÌÌÌÌ#@r­  )ÚclosedgÍÌÌÌÌÌ3@g33333³=@gÍÌÌÌÌÌC@g     ÀH@g33333³M@g33333SQ@gÍÌÌÌÌÌS@gfffffFV@rÄ   T)ZorderedrW   )r   r˜   r!   Zvalue_countsÚheadÚtailr   r   r   r8   rc   r<   r=   )r>   rÝ  Úser1Úser2rs   rX   rA   rB   rB   rC   Ú1test_constructor_series_nonexact_categoricalindex’	  s,    öó.ÿzKTestDataFrameConstructors.test_constructor_series_nonexact_categoricalindexc                 C   s®   t dddddƒt dddddƒfg}tj|ddgd	�}t|ƒ}|d
 d |d d ksXJ ‚|d d |d d kstJ ‚t|d
 ƒ}t|d tƒs’J ‚|d |d d ksªJ ‚d S )Nr_  rŠ  r   r‰  rr  rã   )ÚDaterQ  )ÚForecastingrQ  r5   r¶  r·  rL   )r	   r8   rb   r   r   r‘   r    )r>   r\  r?   r@   r•  rB   rB   rC   Útest_from_M8_structured¯	  s    "z1TestDataFrameConstructors.test_from_M8_structuredc                 C   s>   G dd„ dt ƒ}td|dddddƒgiƒ}|j jdks:J ‚d S )Nc                   @   s   e Zd ZdS )zOTestDataFrameConstructors.test_from_datetime_subclass.<locals>.DatetimeSubclassNr  rB   rB   rB   rC   ÚDatetimeSubclass½	  s   r¹  r	   iä  rL   r]  )r	   r   r6   )r>   r¹  r¨   rB   rB   rC   Útest_from_datetime_subclass»	  s    z5TestDataFrameConstructors.test_from_datetime_subclassc                 C   sT   t dddd�}d}tjt|d��  t|tdƒd� W d   ƒ n1 sF0    Y  d S )	NrE   r4   rG   rH   z@Shape of passed values|Passed arrays should have the same lengthr]   r3   rW   )r"   rd   re   r·   r   r˜   )r>   rS   rf   rB   rB   rC   Ú(test_with_mismatched_index_length_raisesÃ	  s    zBTestDataFrameConstructors.test_with_mismatched_index_length_raisesc                 C   sX   t dddd�}t |¡}ttj d¡ t|ƒ¡|dœƒ}t |d j	t 	d¡¡sTJ ‚d S )	Nz1/1/2000 00:00:00z1/1/2000 1:59:50rj  r§  rK   r  rl   rh   )
r"   r8   r½  r   rä   rå   rs  rO   Z
issubdtyper6   )r>   rþ   r\  r@   rB   rB   rC   Ú!test_frame_ctor_datetime64_columnÊ	  s    
ÿz;TestDataFrameConstructors.test_frame_ctor_datetime64_columnc                 C   s‚   g d¢g d¢g}t tj d¡ d¡dd„ |D ƒd�}t|jtƒsDJ ‚t|jtƒrTJ ‚t tj d¡ d¡|d�}t|jtƒs~J ‚d S )	N)rv   rv   r´   r´   )rŒ   r™   rŒ   r™   rK   )r3   r3   c                 S   s   g | ]}t  |¡‘qS rB   rÛ  rŠ   rB   rB   rC   r�   Ø	  rŽ   zYTestDataFrameConstructors.test_dataframe_constructor_infer_multiindex.<locals>.<listcomp>rW   r–   )	r   r8   rä   rå   rs  r‘   rX   r   r—   )r>   Zindex_listsZmultirB   rB   rC   Ú+test_dataframe_constructor_infer_multiindexÓ	  s    þÿzETestDataFrameConstructors.test_dataframe_constructor_infer_multiindexÚ
input_valsr'  rØ   ri  ru  ro  rk  c                 C   s6   t d|i|d�}t d|iƒ d|i¡}t ||¡ d S )NrÜ   r5   )r   r;   r<   r=   )r>   r¾  rö   rs   rA   rB   rB   rC   Útest_constructor_list_strâ	  s    z3TestDataFrameConstructors.test_constructor_list_strc                 C   s8   t dg d¢i|d�}t dg d¢itd�}t ||¡ d S )NrÜ   rÉ  r5   )z1.0z2.0N)r   rn   r<   r=   )r>   rö   rs   rA   rB   rB   rC   Útest_constructor_list_str_naõ	  s    z6TestDataFrameConstructors.test_constructor_list_str_narÁ   FTc           
         s4  |r"|s"|t jt j vr"t |¡ tjddg|d�‰ tjddg|d�‰ˆjjdv rdt	 
ˆj› d�¡ tjddg|d�‰ˆ ¡ }tˆ ˆˆdœ|d	�‰d
d„ ‰dtdœ‡ ‡‡‡‡fdd„}|sÀ|ƒ  t ˆjjd d¡rÚd }	nt}	t j|	dd��$ dˆjd< dˆjd< W d   ƒ n1 �s0    Y  |�s0|dƒ tjddgˆjd�ˆjd d …df< ˆjjd ˆjk�sjJ ‚|�s~|�s~|dƒ |�rˆ jjdk�rÌˆ d ˆ j dd¡k�s®J ‚ˆd ˆj dd¡k�s J ‚n4ˆ d ˆ j d¡k�sæJ ‚ˆd ˆj d¡k�s J ‚ˆd |d k�s0J ‚n|�s0ˆd dk�s0J ‚d S )NrL   rK   r5   r4   r3   )ÚSÚUz2 get cast, making the checks below more cumbersomer³   rÑ   c                 S   s0   t | tjƒr| jS t | jtjƒr(| jjS t‚d S rœ   )r‘   r8   ZndarrayÚbaser6   Z_ndarrayrƒ   ©r“   rB   rB   rC   Úget_base
  s
    z<TestDataFrameConstructors.test_dict_nocopy.<locals>.get_baseF©Zc_onlyc                    sv   t ‡fdd„ˆjjD ƒƒdks"J ‚| r*d S t ‡ ‡fdd„ˆjjD ƒƒdksNJ ‚t ‡‡fdd„ˆjjD ƒƒdksrJ ‚d S )Nc                 3   s   | ]}|ˆ u V  qd S rœ   rB   rŠ   )rµ   rB   rC   r¢   &
  rŽ   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>rL   c                 3   s(   | ] }t |jtjƒrˆ|ƒˆ u V  qd S rœ   ©r‘   r6   r8   rŠ   )rv   rÅ  rB   rC   r¢   -
  s   þc                 3   s(   | ] }t |jtjƒrˆ|ƒˆ u V  qd S rœ   rÇ  rŠ   )r´   rÅ  rB   rC   r¢   5
  s   þ)ÚsumrP   r�   rÆ  ©rv   r´   rµ   r@   rÅ  rB   rC   Úcheck_views
  s    "þûÿ	þûÿz?TestDataFrameConstructors.test_dict_nocopy.<locals>.check_viewsr   ZfciuOzincompatible dtyper]   rÅ   rM   Tr
  é.   rˆ   rU   )F)r<   ÚSTRING_DTYPESrš  r¥  r›  r8   rb   r6   r†   rd   Úskipr©  rÁ   r   r  r   Zis_np_dtyperí   rÆ   ÚFutureWarningr?  Útype)
r>   rœ  rÁ   Zany_numeric_ea_dtypeZany_numpy_dtyperR   rÈ   Zc_origrÊ  ÚwarnrB   rÉ  rC   Útest_dict_nocopyú	  sN    ÿþý
	
*"z*TestDataFrameConstructors.test_dict_nocopyc                 C   s<   t g d¢dd�}td|iƒ}t |jj|d jj¡r8J ‚d S )Nry  rÊ  r5   rv   )r   r   r8   rÔ   rÇ   rN   )r>   rÝ  r@   rB   rB   rC   Ú"test_construct_from_dict_ea_seriesc
  s    z<TestDataFrameConstructors.test_construct_from_dict_ea_seriesc                 C   s2   t tddd�dgd�}t dgd�}t ||¡ d S )NrL   r¯   rm   rß   r–   r  rM  rB   rB   rC   Ú'test_from_series_with_name_with_columnsj
  s    zATestDataFrameConstructors.test_from_series_with_name_with_columnsc                 C   sV   t g d¢g d¢gg d¢g d¢gd�}t g d¢g d¢gt g d¢¡d�}t ||¡ d S )Nry  r\  )rÜ   rÜ   rÜ   r³   r–   ))rÜ   rv   )rÜ   r´   )rÜ   rµ   )r   r   rQ  r<   r=   rM  rB   rB   rC   Útest_nested_list_columnsp
  s    ÿþz2TestDataFrameConstructors.test_nested_list_columnsc           
      C   s   t jddd�}|j t¡ dd¡}t|ƒ}|jdks8J ‚|j|j	k 
¡ sLJ ‚||k 
¡  
¡ s`J ‚t j g d¢¡}|j t¡ dd¡}t|ƒ}|jdksšJ ‚|j|j	k 
¡ s®J ‚||k 
¡  
¡ sÂJ ‚tj||||f j}t|ƒ}t||||dœƒ}	t ||	¡ d S )	Nz
2016-04-05r4   r  rL   rø   ©rL   r4   )r4   r3   r•   rF   rœ  )r©  r³  rN   r;   rn   r:   r   rÅ  rí   r6   r   ZIntervalIndexZfrom_breaksr8   Zr_r�  r<   r=   )
r>   Úpir¨   r@   ÚiiZdata2rÏ   Zdata3rÿ   rA   rB   rB   rC   Ú1test_from_2d_object_array_of_periods_or_intervals{
  s     zKTestDataFrameConstructors.test_from_2d_object_array_of_periods_or_intervalszcol_a, col_bc                 C   sD   d}t jt|d�� t||dœƒ W d   ƒ n1 s60    Y  d S )Nz,Per-column arrays must each be 1-dimensionalr]   rñ   r5  )r>   Zcol_aZcol_brf   rB   rB   rC   Útest_error_from_2darray‘
  s    	z1TestDataFrameConstructors.test_error_from_2darrayc                 C   sˆ   t g d¢g d¢dd�}t |d j|d j¡r2J ‚d|jd< t dtjtjgtjtjtjgtjtjtjgdœg d¢td	�}t ||¡ d S )
Nry  r³   F)rX   r—   rÁ   rv   r´   r   rÅ   ©rX   r6   )	r   r8   rÔ   Z_valuesrÆ   rc   rn   r<   r=   rW  rB   rB   rC   Ú&test_from_dict_with_missing_copy_falsež
  s    
ýù	z@TestDataFrameConstructors.test_from_dict_with_missing_copy_falsec                 C   sL   d}t jt|d��& tt g ¡ddgd� W d   ƒ n1 s>0    Y  d S )Nz:Shape of passed values is \(0, 1\), indices imply \(0, 2\)r]   rv   r´   rK  )rd   re   r·   r   r8   rb   r6  rB   rB   rC   Ú1test_construction_empty_array_multi_column_raises¯
  s    zKTestDataFrameConstructors.test_construction_empty_array_multi_column_raisesc                 C   s8   t g d¢dgdd�}t dg d¢idd�}t ||¡ d S )N)r'  rØ   Nrv   r7   rJ  r5   r­   rW  rB   rB   rC   Ú$test_construct_with_strings_and_noneµ
  s    z>TestDataFrameConstructors.test_construct_with_strings_and_nonec                 C   sÐ  t jtjd�}tdddgi|tdg|d�d�}t  dd¡�  tdddgiƒ}W d   ƒ n1 s`0    Y  t ||¡ tdddgi|tdg|d�tdd	g|d�d
�}t  dd¡�( tdddgidd	gd�}W d   ƒ n1 sÞ0    Y  t ||¡ tdddgidtdg|d�d�}t  dd¡�  tdddgiƒ}W d   ƒ n1 �sH0    Y  t ||¡ tdddgidtdg|d�d�}t  dd¡�$ tdddgidd�}W d   ƒ n1 �s¶0    Y  t ||¡ d S )NrF  rv   r´   r5   ©r6   r—   úfuture.infer_stringTrŒ   r™   )r6   r—   rX   rW   rL   rn   )	r©  rG  r8   rc   r   r   Úoption_contextr<   r=   ©r>   r6   rA   r@   rB   rB   rC   Útest_frame_string_inference»
  s8    ÿ.
ü6ÿ0ÿ4z5TestDataFrameConstructors.test_frame_string_inferencec                 C   sp  t jtjd�}tdddgi|tdg|d�d�}t  dd¡�& tdt ddg¡iƒ}W d   ƒ n1 sf0    Y  t 	||¡ tddgdd	gd
œ|d�}t  dd¡�* tt ddgdd	gg¡ƒ}W d   ƒ n1 sÒ0    Y  t 	||¡ tddgdd	gdœ|tddg|d�d�}t  dd¡�2 tt ddgdd	gg¡ddgd�}W d   ƒ n1 �sV0    Y  t 	||¡ d S )NrF  rv   r´   r5   rÞ  rß  Trµ   r{   rM   rñ   r–   )
r©  rG  r8   rc   r   r   rà  rb   r<   r=   rá  rB   rB   rC   Ú.test_frame_string_inference_array_string_dtypeÝ
  s&    ÿ48ýBzHTestDataFrameConstructors.test_frame_string_inference_array_string_dtypec                 C   s`   t  dd¡�* tt ddgddgg¡ƒ}W d   ƒ n1 s<0    Y  |jjd jdks\J ‚d S )Nrß  TZhelloZgoodbyeZHellor   rK   )r©  rà  r   r8   rb   rP   rQ   rÖ  rj   rB   rB   rC   Ú%test_frame_string_inference_block_dimõ
  s    8z?TestDataFrameConstructors.test_frame_string_inference_block_dimc                 C   s  t tdƒgtd�}tjtdd�� t|dgd�}W d   ƒ n1 sD0    Y  |jjd t	j
ksdJ ‚td|iƒ}|jjd t	j
ks†J ‚ttdƒgtd�}tjtdd�� t|dgd�}W d   ƒ n1 sÊ0    Y  |jjd t	j
ksêJ ‚td|iƒ}|jjd t	j
k�sJ ‚d S )Nz
2019-12-31r5   zDtype inferencer]   rv   r–   r   )r   r    rn   r<   r?  rÎ  r   rí   rÆ   r8   r°   r   )r>   rr   rs   rÝ  rB   rB   rC   Ú test_inference_on_pandas_objectsû
  s    ,,z:TestDataFrameConstructors.test_inference_on_pandas_objects)érñ  rò  ró  rD   rT   r[   rg   rk   rt   r}   r~   r…   rd   ÚmarkÚparametrizer”   rš   rª   r¬   r   r®   r²   r¹   rÃ   rË   rÐ   r¥  Zskip_array_manager_invalid_testrÖ   r×   rÛ   rÞ   rð   rô   r÷   r   r  r  r8   rb   rn   r  r+   r,   r-   r  r  r%  r)  r,  r.  r1  r3  r7  rc   r:  rÂ   rC  rH  rL  rN  rT  rX  rc  rg  rk  rn  rq  rt  rv  rx  r|  r~  r‚  rƒ  r’  r�  r¦  rª  r«  r   r   r   r   r    r   r±  r¶  r¹  rº  r¾  Úfilterwarningsr¿  rÀ  rÄ  rÆ  rù   r˜   r°   r6   râ   rÇ  r©  ZBooleanDtypeZFloat64DtypeZ
Int64DtyperG  rÌ  rÎ  rÏ  rÑ  rÓ  r×  rÙ  rÜ  rÞ  rá  rå  ræ  rZ   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.  r2  r5  r8  r>  rA  rC  rD  rE  rH  rK  rM  rR  r[  r^  rd  rh  rn  rp  r	   ri   r‚   r   rq  r|  r~  r€  r‚  r„  r…  r†  r   rˆ  r‰  r‹  r�  rŽ  r�  r”  r•  r˜  r<   ZALL_NUMERIC_DTYPESZDATETIME64_DTYPESZTIMEDELTA64_DTYPESZBOOL_DTYPESr™  rÌ  rš  ZOBJECT_DTYPESr�  rž  Zarm_slowrŸ  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ã  rä  rå  rB   rB   rB   rC   r1   M   sî  		
!õþ
þþ
ýþ


úþ
	
úþ



úþ
(	



<	



üþ	
	

þýþ
8ÿ
A
"ûþ

üþ	

'
	
üþ	


&ùþ		&þ
 Søþþþ=
"(,$ÿ&ùþ
	ÿþýþÿ		üþ	ÿ	
ûþ
	h"ýþ"r1   c                   @   sJ   e Zd Zdd„ Zdd„ Zej ddddgdgd	d	d
gdgg¡dd„ ƒZdS )Ú&TestDataFrameConstructorIndexInferencec                 C   sˆ   t jdddd�}ttj d¡ t|ƒ¡|ƒ}t jdddd�}ttj d¡ t|ƒ¡|ƒ}t||dœƒ}t jdddd�}t	 
|j|¡ d S )	Nz1/1/1999ú1/1/2012rˆ   r§  rK   z1/1/1980z	12/1/2001)r1  r6  )r©  r³  r   r8   rä   rå   rs  rO   r   r<   rû   rX   )r>   Zrng1r1  Zrng2r6  r@   r$  rB   rB   rC   ÚAtest_frame_from_dict_of_series_overlapping_monthly_period_indexes  s    zhTestDataFrameConstructorIndexInference.test_frame_from_dict_of_series_overlapping_monthly_period_indexesc                 C   s.  t ddd�}ttdƒ|d�}ttdƒ| d¡d�}ttdƒ| d¡d�}ttdƒƒ}t|||dœƒ}tt|jƒt|jƒ t|jƒ td�}t	 
|j|¡ t|||d	œƒ}tt|jƒt|jƒ t|jƒ td�}	t	 
|j|	¡ t|||d
œƒ}
tt|jƒt|jƒ t|jƒ td�}	t	 
|
j|	¡ t|||dœƒ}tt|jƒt|jƒ t|jƒ td�}t	 
|j|¡ d}tjt|d��" t||||dœƒ W d   ƒ n1 �s 0    Y  tjt|d��  t|||dœƒ W d   ƒ n1 �sà0    Y  tjt|d��  t|||dœƒ W d   ƒ n1 �s 0    Y  d S )NrE   r4   r  rW   rf  z
US/Centralrà   r5   )rÜ   rá   rl   )rl   rÜ   rá   )rá   rl   rÜ   z0Cannot join tz-naive with tz-aware DatetimeIndexr]   )rÜ   rl   rá   r9  )rÜ   rl   r9  )r9  rÜ   rl   )r"   r   r˜   ro   r   r   rù   rX   rn   r<   rû   rd   re   rƒ   )r>   rS   r³  r´  Zser3Zser4r7  Z	exp_indexrÏ   Z
exp_index3rÿ   Zdf4Z
exp_index4rf   rB   rB   rC   Ú/test_frame_from_dict_with_mixed_tzaware_indexes  s@    ÿÿÿÿ20zVTestDataFrameConstructorIndexInference.test_frame_from_dict_with_mixed_tzaware_indexeszkey_val, col_vals, col_typero  Ú4Úutf8r4   r3   r.   c              
   C   s”   t  d¡}tj |j|| | ¡ t||ƒƒ ¡d�¡}t	|ddgi|d�}t	dt
jgdt
jgg|d�}| d|jd d …df  t¡¡ t ||¡ d S )NrÒ   )rÏ  rL   rK   r–   )rd   Zimportorskipr©  r�   ZArrowExtensionArrayrb   Ú
dictionaryr.   Úgetattrr   r8   rc   ZisetitemrÆ   r;   rn   r<   r=   )r>   Zkey_valZcol_valsZcol_typeÚpar>  rs   rA   rB   rB   rC   Ú%test_dict_data_arrow_column_expansionE  s    	
 ÿ zLTestDataFrameConstructorIndexInference.test_dict_data_arrow_column_expansionN)	rñ  rò  ró  rë  rì  rd   ræ  rç  rò  rB   rB   rB   rC   ré    s   ,þþré  c                   @   s   e Zd Zdd„ ZdS )Ú)TestDataFrameConstructorWithDtypeCoercionc                 C   s€  t j d¡ d¡}d}tjt|d�� t|dd� W d   ƒ n1 sF0    Y  t| ¡ dd�}|j	dk 
¡ srJ ‚t j|d< d}tjt|d�� t|dd� W d   ƒ n1 s°0    Y  tjt|d��  t|d	 dd� W d   ƒ n1 sî0    Y  d}tjt|d�� t|ƒ d¡ W d   ƒ n1 �s00    Y  tjt|d��" t|d	 ƒ d¡ W d   ƒ n1 �sr0    Y  d S )
NrK   r²  z)Trying to coerce float values to integersr]   r_   r5   rÅ   r\   r   )r8   rä   rå   rs  rd   re   r·   r   Úroundrí   r   rc   r   r   r;   )r>   r?   rf   r@   rB   rB   rC   Ú"test_floating_values_integer_dtypeY  s"    *
*..zLTestDataFrameConstructorWithDtypeCoercion.test_floating_values_integer_dtypeN)rñ  rò  ró  rõ  rB   rB   rB   rC   ró  X  s   ró  c                   @   sø   e Zd Zej dddg¡dd„ ƒZej dddg¡d	d
„ ƒZdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zej deeg¡dd„ ƒZd d!„ Zd"d#„ Zd$d%„ Zejje d&d'�ej d(g d)¢g d*¢g d+¢d)œg¡d,d-„ ƒƒZd.S )/Ú&TestDataFrameConstructorWithDatetimeTZrJ   r®  zdateutil/US/Easternc           
      C   sÎ   t dddd�}| |¡}td|dœ|d�}td|jƒ}|d	 j|ksHJ ‚d
d„ |D ƒ}dd„ |D ƒ}td|iƒ}||d< ||d< ||d< |j}tt d¡t|d�t d¡t|d�gg d¢d�}	t	 
||	¡ d S )Nú2011/1/1ú2012/1/1úW-FRIr§  r¯   r  rW   rU   rl   c                 S   s   g | ]}|  ¡ ‘qS rB   rU  rW  rB   rB   rC   r�   „  rŽ   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes.<locals>.<listcomp>c                 S   s   g | ]}|  ¡ ‘qS rB   rU  rW  rB   rB   rC   r�   …  rŽ   rg  Údr_tzÚdatetimes_naiveÚdatetimes_with_tzr]  r¯  )rg  rú  rû  rü  )r"   ro   r   r   Útzinfor6   rí   r   r8   r<   rq   )
r>   rJ   rg  rú  r@   Ztz_expectedrû  rü  rs   rA   rB   rB   rC   Ú*test_construction_preserves_tzaware_dtypesy  s*    
üù	zQTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypesÚpydtTFc                 C   sú  |}t d|d�}|r| ¡ }d}tjt|d��" td|gidd� W d   ƒ n1 sV0    Y  d}tjt|d��$ td|idgdd	� W d   ƒ n1 sœ0    Y  tjt|d�� t|gdd� W d   ƒ n1 sØ0    Y  tjt|d��( ttj|gt	d�dd� W d   ƒ n1 �s 0    Y  tjt|d��$ t|dgdgdd
� W d   ƒ n1 �sd0    Y  tjt|d��$ tt
|gƒgdd� W d   ƒ n1 �s¨0    Y  tjt|d��$ t|ggdgdd� W d   ƒ n1 �sì0    Y  d S )NÚ2019r¯  úsCannot convert timezone-aware data to timezone-naive dtype. Use pd.Series\(values\).dt.tz_localize\(None\) instead.r]   r   r]  r5   ú/Cannot unbox tzaware Timestamp to tznaive dtyperÚ  rÕ  rJ  )r    rV  rd   re   r·   r   rƒ   r8   rb   rn   r   )r>   Ztz_aware_fixturerÿ  rJ   rX  rf   Zmsg2rB   rB   rC   Ú'test_constructor_data_aware_dtype_naive–  s*    ÿ02,844zNTestDataFrameConstructorWithDatetimeTZ.test_constructor_data_aware_dtype_naivec                 C   sˆ   t tdddd�dd�}tddd�}t||d	œƒ}|d
 jsBJ dƒ‚|d
 jd
ksTJ ‚t |d
 t|d
d�¡ t |d t|dd�¡ d S )Nre  r4   r®  rH   r¯   rm   Z20130110r  r  rÜ   zM8[ns, US/Easternrl   )r   r"   r   r6   ra   r<   rq   r   )r>   rr   rg  r@   rB   rB   rC   Útest_from_dict¸  s    z5TestDataFrameConstructorWithDatetimeTZ.test_from_dictc                 C   sª   t ddddd�}t|ƒ}t |d t|dd�¡ tt|ƒƒ}t |d t|dd�¡ t dddd�}t|ƒ}t |d t|dd�¡ tt|ƒƒ}t |d t|dd�¡ d S )	Nre  r4   r®  r¯   )rI   rJ   ra   rm   rH   r   )r"   r   r<   rq   r   )r>   r:  rÏ   rB   rB   rC   Útest_from_indexÆ  s    z6TestDataFrameConstructorWithDatetimeTZ.test_from_indexc                 C   sB   t ddd�}t||d�}td|dœ|d� td|jdœ|d� d S )Nrê  rã   r  rW   r¯   rñ   )r"   r   r   rÇ   )r>   rg  r•  rB   rB   rC   Ú+test_frame_dict_constructor_datetime64_1680Ô  s    zRTestDataFrameConstructorWithDatetimeTZ.test_frame_dict_constructor_datetime64_1680c                 C   s@   t dddd�}t|ƒ}td|dœ|d�}|d  ¡  ¡ s<J ‚d S )	Nr÷  rø  rù  r§  r¯   r  rW   rl   )r"   r   r   r#   r   )r>   rg  rX  r{   rB   rB   rC   Ú+test_frame_datetime64_mixed_index_ctor_1681Ü  s    zRTestDataFrameConstructorWithDatetimeTZ.test_frame_datetime64_mixed_index_ctor_1681c                 C   sX   t ddddd�}t|dgd�}tdtddd�td	dd�td
dd�giƒ}t ||¡ d S )Nz20130101T10:00:00r4   Úminr®  )rT  rI   r¨  rJ   Z
timestampsr–   r¯  z20130101T10:01:00z20130101T10:02:00)r"   r   r    r<   r=   )r>   rg  rs   rA   rB   rB   rC   Útest_frame_timeseries_columnä  s    ÿ


ýÿÿ	zCTestDataFrameConstructorWithDatetimeTZ.test_frame_timeseries_columnc                 C   sf   ddg}dddœdddd	œd
œ}t |g d¢|d�}t ddtjtjfg|tg d¢ƒd�}t ||¡ d S )NÚNevadaÚOhioç333333@ç333333@)rN  éÒ  r  ç333333û?çÍÌÌÌÌÌ@)r  rN  r  )r
  r  )rN  r  iÓ  r«   )r  r  )r  r  rU  )r   r8   rc   r   r<   r=   )r>   r—   Úpoprs   rA   rB   rB   rC   Útest_nested_dict_constructionõ  s    
þ
ýzDTestDataFrameConstructorWithDatetimeTZ.test_nested_dict_constructionc                 C   sd   t dddd�}|j t¡ dd¡}t|ƒ}|jdks8J ‚|j|jk 	¡ sLJ ‚||k 	¡  	¡ s`J ‚d S )Nz2016-04-05 04:30r4   rf  rH   rL   rø   rÕ  )
r"   rN   r;   rn   r:   r   rÅ  rí   r6   r   )r>   rS   r¨   r@   rB   rB   rC   Útest_from_tzaware_object_array  s    zETestDataFrameConstructorWithDatetimeTZ.test_from_tzaware_object_arrayc              	   C   s†   t jtdƒtdƒtdƒgtddd�tjtddd�gtdd	d�tjtd
d	d�ggtd�j}t|g d¢d�}g d¢}|j|k 	¡ s‚J ‚d S )Nz2013-01-01 00:00:00z2013-01-02 00:00:00z2013-01-03 00:00:00z2013-01-01 00:00:00-0500r®  r¯  z2013-01-03 00:00:00-0500z2013-01-01 00:00:00+0100ZCETz2013-01-03 00:00:00+0100r5   rà   r–   )r]  r`  zdatetime64[ns, CET])
r8   rb   r    r©  r   rn   r�  r   rí   r   )r>   r?   r—  Zexpected_dtypesrB   rB   rC   Ú$test_from_tzaware_mixed_object_array  s&    ý

ý

ýõîzKTestDataFrameConstructorWithDatetimeTZ.test_from_tzaware_mixed_object_arrayc                 C   s:   t  d¡ d¡}t|dd�}t|ƒ d¡}t ||¡ d S )Nrã   )r•   rK   zdatetime64[ns, UTC]r5   )r8   r9   r:   r   r;   r<   r=   )r>   Z
array_dim2r@   rA   rB   rB   rC   Útest_from_2d_ndarray_with_dtype,  s    zFTestDataFrameConstructorWithDatetimeTZ.test_from_2d_ndarray_with_dtyperî   c                 C   sŽ   |h d£ƒ}d|j › d�}tjt|d�� td|iƒ W d   ƒ n1 sJ0    Y  tjt|d�� t|ƒ W d   ƒ n1 s€0    Y  d S )N>   rL   rK   r4   ú'z' type is unorderedr]   rv   )rñ  rd   re   rƒ   r   r   )r>   rî   rÇ   rf   rB   rB   rC   Ú!test_construction_from_set_raises4  s    *zHTestDataFrameConstructorWithDatetimeTZ.test_construction_from_set_raisesc                 C   s>   t jdddd� dd¡}t|ƒ}tdd„ |jjD ƒƒs:J ‚d S )	Nr   r2   r]  r5   r3   r4   c                 s   s   | ]}t |tƒV  qd S rœ   )r‘   r$   )r‹   r?   rB   rB   rC   r¢   D  rŽ   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelike.<locals>.<genexpr>)r8   r9   r:   r   r   rP   r�   ©r>   r?   r@   rB   rB   rC   Ú+test_construction_from_ndarray_datetimelike?  s    zRTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelikec                 C   s²   t j d¡ d¡}t dg¡j}d}tjt	|d��  t
|dg|d� W d   ƒ n1 sX0    Y  t g d¢¡}tjt	|d��  t
|dd	gd
� W d   ƒ n1 s¤0    Y  d S )NrK   rÔ  r»   z'len\(arrays\) must match len\(columns\)r]   r¯   rJ  )r»   r¼   rl  rß   r–   )r8   rä   rå   rs  r©  rb   r6   rd   re   r·   r   )r>   r?   r6   rf   Zarr2rB   rB   rC   Ú>test_construction_from_ndarray_with_eadtype_mismatched_columnsF  s    .zeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_with_eadtype_mismatched_columnsc                 C   s�   g d¢g d¢g}t jtdd��  t|ddhd� W d   ƒ n1 sD0    Y  t jtdd��  t|h d	£d
� W d   ƒ n1 s‚0    Y  d S )Nry  r\  zindex cannot be a setr]   rv   r´   rW   zcolumns cannot be a set>   rµ   r´   rv   r–   r5  rÃ  rB   rB   rC   Ú"test_columns_indexes_raise_on_setsQ  s
    .zITestDataFrameConstructorWithDatetimeTZ.test_columns_indexes_raise_on_setsz/StringDType only available in numpy 2 and above)Úreasonr¨   r³   )rº   r»   r¼   r’  c                 C   s\   ddl m} tj|d |ƒ d�|d< t|ƒ}|d jtjks@J ‚|d |d k ¡ sXJ ‚d S )Nr   )ÚStringDTyperv   r5   )Znumpy.dtypesr  r8   rb   r   r6   r°   r   )r>   r¨   r  r—  rB   rB   rC   Ú test_np_string_array_object_castZ  s
    
zGTestDataFrameConstructorWithDatetimeTZ.test_np_string_array_object_castN)rñ  rò  ró  rd   ræ  rç  rþ  r  r  r  r  r  r	  r  r  r  r  ÚsetÚ	frozensetr  r  r  r  Zskipifr   r  rB   rB   rB   rC   rö  x  s6   

!	

	ÿÿþrö  c                 C   s"   t | tƒr| jd S | jd S d S )Nr   rÅ   )r‘   r   rÆ   rÄ  rB   rB   rC   Úget1l  s    

r!  c                   @   sú   e Zd Zejeedgd�dd„ ƒZejdd„ ƒZej	 
ddd	g¡d
d„ ƒZdd„ Zdd„ Zdd„ Zej	 
dejejg¡dd„ ƒZej	 
deejg¡dd„ ƒZej	jdd„ ƒZej	 
deejg¡dd„ ƒZej	jej	 
dejejg¡dd„ ƒƒZdd„ ZdS )ÚTestFromScalarN©Úparamsc                 C   s   |j S rœ   ©Úparam©r>   rœ  rB   rB   rC   Úboxt  s    zTestFromScalar.boxc                    sŽ   dt dƒi‰ ˆtu rdgˆ d< |d u r8tjˆfi ˆ ¤ŽS |tu rfˆtu rV‡ ‡fdd„S ‡ ‡fdd„S n$ˆtu r|‡ ‡fdd„S ‡ ‡fd	d„S d S )
NrX   rK   rÜ   r—   c                    s   ˆ| | dœfi ˆ ¤|¤ŽS )NrM   rB   ©rŒ   Úkwargs©Úextrar„   rB   rC   rž   ƒ  s   ÿÿÿz,TestFromScalar.constructor.<locals>.<lambda>c                    s   ˆd| ifi ˆ ¤|¤ŽS ©NrÜ   rB   r)  r+  rB   rC   rž   ‡  rŽ   c                    s   ˆ| | gfi ˆ ¤|¤ŽS rœ   rB   r)  r+  rB   rC   rž   ‰  rŽ   c                    s   ˆd| | gifi ˆ ¤|¤ŽS r-  rB   r)  r+  rB   rC   rž   ‹  rŽ   )r˜   r   Ú	functoolsÚpartialrì   r   )r>   r„   r(  rB   r+  rC   r›   x  s    
zTestFromScalar.constructorr6   rh   r�   c                 C   s8   |t j|d�}t |j|k¡s"J ‚t | ¡ ¡s4J ‚d S rÐ  )r©  r   r8   r   rí   r#   )r>   r6   r›   r“   rB   rB   rC   Útest_from_nat_scalar�  s    z#TestFromScalar.test_from_nat_scalarc                 C   s(   t dƒ}||dd�}t|ƒ|ks$J ‚d S )NrL   r�   r5   ©r   r!  )r>   r›   r¥  r“   rB   rB   rC   Ú*test_from_timedelta_scalar_preserves_nanos“  s    z9TestFromScalar.test_from_timedelta_scalar_preserves_nanosc                 C   s,   |t dƒ }||dd�}t|ƒ|ks(J ‚d S )NrL   rh   r5   r1  )r>   r›   Zfixed_now_tsrX  r“   rB   rB   rC   Ú*test_from_timestamp_scalar_preserves_nanos™  s    z9TestFromScalar.test_from_timestamp_scalar_preserves_nanosc                 C   s4   t dƒ}| ¡ }||td�}tt|ƒtjƒs0J ‚d S )NrL   r5   )r   Zto_timedelta64rn   r‘   r!  r8   rŸ  )r>   r›   r¥  Ztd64r“   rB   rB   rC   Ú#test_from_timedelta64_scalar_objectŸ  s    z2TestFromScalar.test_from_timedelta64_scalar_objectÚclsc                 C   sÂ   |ddƒ}t jdt jdi| }|t ju r.d}nd}d d|g¡}tjt|d	�� |||d
� W d   ƒ n1 sp0    Y  |ddƒ}tjt|d	�� |||d
� W d   ƒ n1 s´0    Y  d S )Nr   rU   r�   rh   r€   z:<class 'numpy.timedelta64'> is not convertible to datetimeú|rz  r]   r5   r3   )r8   r‚   rŸ  Újoinrd   re   rƒ   )r>   r›   r5  r8  r6   Zmsg1rf   rB   rB   rC   Ú(test_from_scalar_datetimelike_mismatched¦  s    

*
z7TestFromScalar.test_from_scalar_datetimelike_mismatchedc                 C   s¦   |t u s|tu r2|tu r2tjjddd�}| |¡ tdddƒ}d}|tj	u r\t 	|d¡}d}||ƒ}	t
|	ƒ}
t |	¡}t|
ƒtu s†J ‚|
jj|ks–J ‚||ks¢J ‚d S )	NziTimestamp constructor has been updated to cast dt64 to non-nano, but DatetimeArray._from_sequence has notT©r  Ústricté'  rL   rQ  r9  rP  )rù   r   rì   rd   ræ  ÚxfailÚapplymarkerr	   r8   r‚   r!  r<   Ú	get_dtyperÏ  r    Úasm8r6   ©r>   r›   r5  rœ  r(  r„   ræ  r8  r}  rs   Úitemr6   rB   rB   rC   Ú#test_from_out_of_bounds_ns_datetime¸  s"    ý


z2TestFromScalar.test_from_out_of_bounds_ns_datetimec                 C   sR   t  t  t j¡jd¡}||ƒ}t|ƒ}t|ƒt ju s8J ‚t |¡}|t	ksNJ ‚d S rž  )
r8   r‚   Úiinfor0   Úmaxr!  rÏ  r<   r>  rn   )r>   r›   r8  rs   rA  r6   rB   rB   rC   Útest_out_of_s_bounds_datetime64Ô  s    
z.TestFromScalar.test_out_of_s_bounds_datetime64c                 C   s²   |t u s|tu r2|tu r2tjjddd�}| |¡ tdddƒtdddƒ }d}|tj	u rht 	|d¡}d	}||ƒ}	t
|	ƒ}
t |	¡}t|
ƒtu s’J ‚|
jj|ks¢J ‚||ks®J ‚d S )
NzoTimedeltaArray constructor has been updated to cast td64 to non-nano, but TimedeltaArray._from_sequence has notTr9  r;  rL   i²  zm8[us]r9  zm8[s])rù   r   rì   rd   ræ  r<  r=  r	   r8   rŸ  r!  r<   r>  rÏ  r   r?  r6   r@  rB   rB   rC   Ú$test_from_out_of_bounds_ns_timedeltaÝ  s"    ý


z3TestFromScalar.test_from_out_of_bounds_ns_timedeltac                 C   sN   |t  t j¡jdƒ}||ƒ}t|ƒ}t|ƒ|u s4J ‚t |¡}|tksJJ ‚d S rž  )	r8   rC  r0   rD  r!  rÏ  r<   r>  rn   )r>   r›   r5  r8  rs   rA  r6   rB   rB   rC   Ú test_out_of_s_bounds_timedelta64ø  s    
z/TestFromScalar.test_out_of_s_bounds_timedelta64c                 C   sx   d}t d|d�}|d u s(|tu r2|tu r2d}t}nd}t}tj||d�� ||dd� W d   ƒ n1 sj0    Y  d S )	Nr®  r   r¯  r  r  r]   rh   r5   )r    r   rì   rƒ   r·   rd   re   )r>   r›   r(  r„   rJ   rX  rf   ÚerrrB   rB   rC   Útest_tzaware_data_tznaive_dtype  s    ÿz.TestFromScalar.test_tzaware_data_tznaive_dtype)rñ  rò  ró  rd   Úfixturerù   rì   r(  r›   ræ  rç  r0  r2  r3  r4  r8   r‚   rŸ  r8  r	   rB  Z
skip_ubsanrE  r
   rF  rG  rI  rB   rB   rB   rC   r"  s  s*   






r"  c                   @   sZ   e Zd Zejddgd�dd„ ƒZejdd„ ƒZdd	„ Zd
d„ Zdd„ Z	dd„ Z
dd„ ZdS )ÚTestAllowNonNanoTFr#  c                 C   s   |j S rœ   r%  r'  rB   rB   rC   Úas_td  s    zTestAllowNonNano.as_tdc                 C   sL   t  d¡ t j¡ d¡}|r8||d  }tj||jd�S tj||jd�S d S )Nr•   rP  r   r5   )	r8   r9   r;   r0   r�   r(   Z_simple_newr6   r$   )r>   rL  rÇ   rB   rB   rC   r?     s
    zTestAllowNonNano.arrc                 C   s   t |ƒ}|j|jksJ ‚d S rœ   )r   r6   )r>   r?   rr   rB   rB   rC   Útest_index_allow_non_nano&  s    z*TestAllowNonNano.test_index_allow_non_nanoc                 C   s,   |rt  |¡}nt|ƒ}|j|jks(J ‚d S rœ   )r©  ZTimedeltaIndexr   r6   )r>   r?   rL  rr   rB   rB   rC   Útest_dti_tdi_allow_non_nano*  s    z,TestAllowNonNano.test_dti_tdi_allow_non_nanoc                 C   s   t |ƒ}|j|jksJ ‚d S rœ   )r   r6   )r>   r?   rÝ  rB   rB   rC   Útest_series_allow_non_nano1  s    z+TestAllowNonNano.test_series_allow_non_nanoc                 C   s    t |ƒ}|jd |jksJ ‚d S r¤   ©r   rí   r6   r  rB   rB   rC   Útest_frame_allow_non_nano5  s    z*TestAllowNonNano.test_frame_allow_non_nanoc                 C   s$   t d|iƒ}|jd |jks J ‚d S r¤   rP  r  rB   rB   rC   Ú#test_frame_from_dict_allow_non_nano9  s    z4TestAllowNonNano.test_frame_from_dict_allow_non_nanoN)rñ  rò  ró  rd   rJ  rL  r?   rM  rN  rO  rQ  rR  rB   rB   rB   rC   rK    s   

rK  )Jrb   Úcollectionsr   r   r   r   Úcollections.abcr   Údataclassesr   r	   r   r
   r.  r$  Únumpyr8   r   Znumpy.mar   rd   ra  Zpandas._libsr   Zpandas.compat.numpyr   Zpandas.errorsr   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsr¥  Zpandas.core.dtypes.commonr   Zpandas.core.dtypes.dtypesr   r   r   r   Zpandasr©  r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   Zpandas._testingZ_testingr<   Zpandas.arraysr$   r%   r&   r'   r(   ré   rè   r1   ré  ró  rö  r!  r"  rK  rB   rB   rB   rC   Ú<module>   sj   D                     UK  u #