
    yhh                       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c 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ZB G d d          ZC G d d          ZD G d d          ZE G d d          ZFd ZG G d d          ZH G 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)float16float32float64)uint8uint16uint32uint64int8int16int32int64c                      e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zej                            d
ddg          d             Zd Zej                            dd d d d d d d d d d d g          d             Zej                            dd d g          d             Zej                            dg g ed            ed!          fg g g ed"           ed!          fd# d$D             g ed            ed!          fg          d%             Zd& Zd' Zd( Zd) Zd* Zej        d+             Zej        d,             Zd- Zd. Zej                            d/d0i gd0d d1d2d3gd4i gg          d5             Z d6 Z!d7 Z"d8 Z#d9 Z$d: Z%ej                            d; e&j'        d<ge(=           e&j'        d"d>z  g          d?g e&j'        d@ge(=           e&j'        dAg          d"d>z   d"z
  gg          dB             Z)ej                            d; e&j'        d ge&j*        =           e&j'        d ge&j+        =           e&j'        d ge&j,        =           e&j*        d           g e&j+        d           g e&j,        d           gg          dC             Z-dD Z.dE Z/dF Z0dG Z1dH Z2dI Z3dJ Z4dK Z5ej                            dLd"e&j6        dMdNg          dO             Z7ej                            dPd"e&j6        dM e8dQ          g          dR             Z9ej                            dPe&j6        dM e8dQ          g          dS             Z:dT Z;dU Z<dV Z=dW Z>dX Z?dY Z@dZ ZAd[ ZBd\ ZCd] ZDd^ ZEd_ ZFd` ZGda ZHdb ZIdc ZJdd ZKde ZLej                            dfdg dhfdi djfdk dlfdm dnfg          do             ZMdp ZNdq ZOej                            dr ePds           eQd          f eRd!dtu           eSdvdw          f eTdxdyz           eUd{dy|          fg          d}             ZVd~ ZWd ZXd ZYd ZZej        [                    d          d             Z\d Z]d Z^d Z_ej                            ddM e` ead                    ddge(e&jb        fdMdMddgdv e&jc        dv          fdM e` ead                    ddged e&jc        d          fi dMd1d2gdMe&jb        fdd i e` ead                     e`d          ed e&jc        d          fg          d             Zeej                            dg ddefjg        fg ddefjh        fg ddefji        fg ddefjj        ff          d             Zkd Zld Zmd Znd Zod Zpd Zqd Zrd Zsd Ztd Zud Zvej                            d eTd          ggd eTd          igd eTd          gid eTd          w                    d          ig          d             Zxd Zyd Zzd Z{d Z|d Z}d Z~d Zd Zd Zd Zej                            deeg          d             Zej                            deeg          d             Zd Zd Zd Zd Zd Zd Zd Zej                            dd$g fd$g fdd$d$gfdg g gfg g fg g gfd gd"gfd gd"ggfg dg dfg dg dgfg          d             Zd Zd ZdÄ ZdĄ Zdń ZdƄ ZdǄ ZdȄ ZdɄ Zej                            dg dˢ          d̄             Zd̈́ Zd΄ Zdτ ZdЄ Zdф Zd҄ Zdӄ ZdԄ ZdՄ Zdք Zdׄ Zd؄ Zdل Zdڄ Zej                            d e&j'        dMdMdMdM ej                    dMg           e&j'        dMdM ej                    dMg           e&j        dܦ          gdMgg e&j        dܦ          gefj        ggdMg e&j        dܦ          ggdMgefj        ggefj        g e&j        dܦ          ggefj        gdMggg          d݄             Zej                            dg dߢ          ej                            dg d          d                         Zej                            dg dߢ          ej                            dg d          d                         Zd Zd Zd Zd Zd Zej                            d eg dg dgd e&j6        g           eg dg dgdde&j6        g           eg dg dge&j6        dde&j6        g           eg dg dge&j6        dde&j6        g           eg dg dge&j6        d d"d"g          g          d             Zd Zd Zd Zd Zd Zd Zd Zd Zej                            dej        ej        z   ej        z   ej        z             d             Zej                            dej        ej        z   ej        z             d             Zd Zej        j        ej                            dg d          d                          Zɐd Zej                            d e e`d                     ed e&j6        e&j6        e&j6        g           e eRd!d            eRd dt          g           e efj        ddd                    g          d             ZАd Zѐd	 Zej        [                    d
          d             ZӐd ZԐd ZՐd Z֐d Zאd Zej                            dd d"gddg e` eِdd"d                     e` eِdd"ddy                     eRd!dtu          gg          d             Zڐd Zej                            dddg          d             Zܐd Zݐd Zސd  Zߐd! Zej                            d"d gd"gg e&j'        d gd"gg          f e&j'        d gd"gg          d gd"ggf e&j'        d gd"gg           e&j'        d gd"gg          fg          d#             Zd$ Zd% Zd& Zd' Zd( Zd) Zd* ZdMS (+  TestDataFrameConstructorsc                     t          j        d                              dd          }t          |t                    }t          |                    t                    d          }t          j        ||           d S )N         dtypestr)nparangereshaper   r=   astypetmassert_frame_equal)selfarrdfexpecteds       [/var/www/histauto/venv/lib/python3.11/site-packages/pandas/tests/frame/test_constructors.py,test_constructor_from_ndarray_with_str_dtypezFTestDataFrameConstructors.test_constructor_from_ndarray_with_str_dtypeN   sh     imm##Aq))s#&&&SZZ__E:::
b(+++++    c                 :   t          ddd          }|j                            dd          }t          |          }t          |d d df         |d d df         d	          }t	          j        ||           |st          |j        j                  dk    sJ d S d S )
N
2016-01-01   
US/Pacificperiodstzr:      r      r   rS   )	r#   _datar@   r   rB   rC   len_mgrblocks)rD   using_array_managerdtidtarF   rG   s         rH   &test_constructor_from_2d_datetimearrayz@TestDataFrameConstructors.test_constructor_from_2d_datetimearrayV   s    q\BBBi1%%s^^QQQTs111a4y99::
b(+++" 	,rw~&&!++++	, 	,++rJ   c                 b   t          d                              d          }|                    d          }t          d|idg          }t          d|gi          }t	          j        ||           t          |dgd          }t          |gdgd          }t	          j        ||           d S )	Nz2019-11-03 01:00:00-0700zAmerica/Los_Angelesnsdtr   indexrS   )r_   value)r!   
tz_convertas_unitr   rB   rC   )rD   r_   rF   rG   s       rH   )test_constructor_dict_with_tzaware_scalarzCTestDataFrameConstructors.test_constructor_dict_with_tzaware_scalara   s    122==>STTZZbz!---dRD\**
b(+++ bA3//00RDA37788
b(+++++rJ   c                 r   t          j        dt           j        gddgg          }d}t          j        t
          |          5  t          |d           d d d            n# 1 swxY w Y   t          j        t
          |          5  t          |d         dd	           d d d            d S # 1 swxY w Y   d S )
NrS   rR   r:   9Cannot convert non-finite values \(NA or inf\) to integermatchi8r;   r   r<   name)r>   arraynanpytestraisesr   r   r   )rD   rE   msgs      rH   -test_construct_ndarray_with_nas_and_int_dtypezGTestDataFrameConstructors.test_construct_ndarray_with_nas_and_int_dtypeo   s8   hBFaV,--J]-S999 	' 	'c&&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]-S999 	/ 	/3q6A....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s$   A  A$'A$B,,B03B0c                     t          t          j                    t          j                    g          }|d         j        t	          j        d          k    sJ d S )Nr   M8[ns])r   r
   nowr<   r>   rD   rF   s     rH   %test_construct_from_list_of_datetimesz?TestDataFrameConstructors.test_construct_from_list_of_datetimesz   sG    788!u{bhx00000000rJ   c                 0   t          ddgd          }|                    d          }t          t          j        |                                d          d          }|j        |j        k    sJ t          |          }t          j        ||           d S )Nz2013-1-1 13:00z2013-1-2 14:00Brl   rN   objectr;   )	r   tz_localizer   r>   rm   tolistr<   rB   assert_series_equal)rD   naiveidxrG   results        rH   +test_constructor_from_tzaware_datetimeindexzETestDataFrameConstructors.test_constructor_from_tzaware_datetimeindex~   s     /1ABMMM--"(3::<<x@@@sKKK~**** 
vx00000rJ   c                     d}t          dddg|ddgi          }|                    d          }dd|didd|dig}||k    sJ d S )	N_barS   rR   r:   r9   recordsorientr   to_dict)rD   col_underscorerF   dref_ds        rH   6test_columns_with_leading_underscore_work_with_to_dictzPTestDataFrameConstructors.test_columns_with_leading_underscore_work_with_to_dict   se    aV^aV<==JJiJ((q.!,sA~q.IJzzzzzzrJ   c                     d}t          dddg|ddgi          }|                    d          }dd|didd|dig}||k    sJ d S )	N1_br   rS   rR   r:   r9   r   r   r   )rD   col_with_numrF   r   r   s        rH   Atest_columns_with_leading_number_and_underscore_work_with_to_dictz[TestDataFrameConstructors.test_columns_with_leading_number_and_underscore_work_with_to_dict   se    aV\Aq6:;;JJiJ((q,*S!\1,EFzzzzzzrJ   c                 ,   t          j        dd          }t          j        |gt                    }|t          u r|                    dd          }d}t          j        t          |          5   ||d           d d d            d S # 1 swxY w Y   d S )NNaTr^   r;   rS   =Invalid type for timedelta scalar: <class 'numpy.datetime64'>rh   m8[ns])	r>   
datetime64rm   r{   r   r@   ro   rp   	TypeError)rD   frame_or_seriesnatrE   rq   s        rH   ,test_array_of_dt64_nat_with_td64dtype_raiseszFTestDataFrameConstructors.test_array_of_dt64_nat_with_td64dtype_raises   s    mE4((huF+++i''++a##CM]9C000 	1 	1OCx0000	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1s   .B		BBkindmMc                    |dk    r
d}t           }n	d}t          }t          j        dd                              |                              dd          }|t          u r|d d d	f         } ||t                    }|j        j	        d	         j
        t          k    sJ t          |j        j	        d	                                         d	         |          sJ  | ||          t                    }|j        j	        d	         j
        t          k    sJ t          |j        j	        d	                                         d	         |          sJ  | ||          t          t                              }|j        j	        d	         j
        t          k    sJ t          |j        j	        d	                                         d	         |          sJ |t          u rzd
 |D             } ||t                    }|j        j	        d	         j
        t          k    sJ t          |j        j	        d	                                         d	         |          sJ d S d S )Nr   rt   r   rM   rj   r;   r:   rR   r   c                 ,    g | ]}t          |          S  r   .0xs     rH   
<listcomp>zXTestDataFrameConstructors.test_datetimelike_values_with_object_dtype.<locals>.<listcomp>   s    +++!F1II+++rJ   )r!   r    r>   r?   viewr@   r   r{   rW   arraysr<   
isinstanceravelr   r   )rD   r   r   r<   scalar_typerE   objserss           rH   *test_datetimelike_values_with_object_dtypezDTestDataFrameConstructors.test_datetimelike_values_with_object_dtype   sB    3;;E#KKE#Ki&&&++E22::1a@@f$$aaad)Coc000xq!'61111#(/!,2244Q7EEEEE oooc22&AAAxq!'61111#(/!,2244Q7EEEEEoooc22,v:N:NOOOxq!'61111#(/!,2244Q7EEEEEi''++s+++D!/$f555C8?1%+v5555choa06688;[IIIII ('
 JIrJ   c                 b   t          t          d          d          }t          t          d          d          }t          |dg          }t          g dg          }t          j        ||           t          |dg          }t          g dg          }t          j        ||           d S )N   rS   rz   r   columns)r   ranger   rB   rC   )rD   r   yr   rG   s        rH   )test_series_with_name_not_matching_columnzCTestDataFrameConstructors.test_series_with_name_not_matching_column   s    588!$$$588!$$$1qc***R!---
fh///1qc***R!---
fh/////rJ   constructorc                      t                      S Nr   r   rJ   rH   <lambda>z"TestDataFrameConstructors.<lambda>   s
    IKK rJ   c                       t          d           S r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    IdOO rJ   c                       t          d          S Nr   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>       IbMM rJ   c                       t          g           S r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   r   rJ   c                  4    t          d dD                       S )Nc              3      K   | ]}|V  d S r   r   r   _s     rH   	<genexpr>z5TestDataFrameConstructors.<lambda>.<locals>.<genexpr>   s      __Aa______rJ   r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    I_____,, rJ   c                  :    t          t          d                    S Nr   r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    IeAhh'' rJ   c                  "    t          d           S Ndatar   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    I4((( rJ   c                  "    t          d          S )Nr   r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>       I2&&& rJ   c                  "    t          g           S r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   r   rJ   c                  6    t          d dD                       S )Nc              3      K   | ]}|V  d S r   r   r   s     rH   r   z5TestDataFrameConstructors.<lambda>.<locals>.<genexpr>   s      ??!A??????rJ   r   r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    I??r???333 rJ   c                  <    t          t          d                    S )Nr   r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   s    I588,,, rJ   c                     t                      } |            }t          |j                  dk    sJ t          |j                  dk    sJ t	          j        ||           d S r   )r   rV   ra   r   rB   rC   rD   r   rG   r   s       rH   test_empty_constructorz0TestDataFrameConstructors.test_empty_constructor   sg    " ;;6<  A%%%%6>""a''''
fh/////rJ   c                       t          i           S r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   r   rJ   c                  "    t          i           S r   r   r   rJ   rH   r   z"TestDataFrameConstructors.<lambda>   r   rJ   c                    t          t          d          t          d                    } |            }t          |j                  dk    sJ t          |j                  dk    sJ t          j        ||d           d S )Nr   ra   r   T)check_index_type)r   r   rV   ra   r   rB   rC   r   s       rH   #test_empty_constructor_object_indexz=TestDataFrameConstructors.test_empty_constructor_object_index   s     :a==*Q--HHH6<  A%%%%6>""a''''
fhFFFFFFrJ   z)emptylike,expected_index,expected_columnsrS   r   rR   c              #      K   | ]}|V  d S r   r   r   s     rH   r   z#TestDataFrameConstructors.<genexpr>  s      ooQqoooooorJ   r   c                 p    t          ||          }t          |          }t          j        ||           d S )Nr   r   rB   rC   )rD   	emptylikeexpected_indexexpected_columnsrG   r   s         rH   test_emptylike_constructorz4TestDataFrameConstructors.test_emptylike_constructor   s=     >;KLLL9%%
fh/////rJ   c                 L    |rdnt           j        }|d         j        |k    sJ d S )Nr=   foo)r>   object_r<   )rD   float_string_frameusing_infer_stringr<   s       rH   test_constructor_mixedz0TestDataFrameConstructors.test_constructor_mixed	  s1    +;!%(.%777777rJ   c                 ,   d}t          j        t          |          5  t          dg dit          j                   d d d            n# 1 swxY w Y   t          t	          j        d                    }t	          j        d                                          |d<   d}t          j        t          |          5  t	          j        d          |d	<   d d d            n# 1 swxY w Y   t	          j        d                                          |d
<   d S )Nz!could not convert string to floatrh   r   r   bcr;   )r9   rR   r   z5Expected a 1D array, got an array with shape \(4, 2\)testfoo2)ro   rp   
ValueErrorr   r>   r,   onesr}   )rD   rq   rF   s      rH   test_constructor_cast_failurez7TestDataFrameConstructors.test_constructor_cast_failure  s~    2]:S111 	@ 	@sOOO,BJ????	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ rwv'' GFOO**,,5	 H]:S111 	) 	)BvJ	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) WV__++--6


s#    A

AA<C  C$'C$c                     t          dgdgdgd          }t          |t          d          }d|d<   |d         d	         dk    sJ d S )
N      ?       @      @)col1col2col3Tr<   copyg      i@r   r   )r   float)rD   orig_dfnew_dfs      rH   test_constructor_dtype_copyz5TestDataFrameConstructors.test_constructor_dtype_copy"  s\    cUSEC5IIJJ7%d;;;vvq!S((((((rJ   c                 6   t          ddgg          }t          ||d         j                  }|rd|j        d<   |j        d         dk    sJ d S t	          j        |          5  d|j        d<   d d d            n# 1 swxY w Y   |j        d         dk    sJ d S )NrS   rR   r   r;   c   r   r   )r   r<   ilocvaluesrB   assert_cow_warning)rD   using_copy_on_writewarn_copy_on_writerF   should_be_views        rH   ,test_constructor_dtype_nocast_view_dataframezFTestDataFrameConstructors.test_constructor_dtype_nocast_view_dataframe*  s     Ax  "2RU[999 	)(*N%9T?a''''''&'9:: / /,.#D)/ / / / / / / / / / / / / / /9T?b((((((s   $A;;A?A?c                 :   t          ddgddggd          }|sB|s@t          |j        |d         j                  }d|j        d	<   |j        d	         dk    sJ d S t          |j        |d         j                  }|j        j        d         j        j        sJ d S )
NrS   rR   r:   r9   r4   r;   r   a   r   )r   r  r<   r  rW   r   flagsc_contiguous)rD   rY   r  r  rF   r  df2s          rH   +test_constructor_dtype_nocast_view_2d_arrayzETestDataFrameConstructors.test_constructor_dtype_nocast_view_2d_array7  s     AA'w777" 
	9+> 
	9&ry1DDDN )+N%9T?b(((((( BIRU[999C8?1%+888888rJ   c                    t          j        ddgd          }t          |d          }|rG|d         j        j        dk    rnLt          j        |d                                         |          sJ nt          j        |j        |          sJ t          |t          d	          }t          j        |j        |          sJ d S )
Nr   r   r{   r;   Fr   r   pyarrowr   	r>   rm   r   r<   storageshares_memoryto_numpyr  r{   rD   r   rE   rF   s       rH   "test_1d_object_array_does_not_copyz<TestDataFrameConstructors.test_1d_object_array_does_not_copyG  s     hSz222s''' 	4!u{"i// '1(8(8#>>>>>>#BIs33333s&u555	3///////rJ   c                    t          j        ddgddggd          }t          |d          }|rG|d	         j        j        d
k    rnLt          j        |d	                                         |          sJ nt          j        |j        |          sJ t          |t          d          }t          j        |j        |          sJ d S )Nr   r   r   r   r{   r;   Fr  r   r  r   r  r  s       rH   "test_2d_object_array_does_not_copyz<TestDataFrameConstructors.test_2d_object_array_does_not_copyY  s     hc
S#J/x@@@s''' 	4!u{"i// '1(8(8#>>>>>>#BIs33333s&u555	3///////rJ   c                     t          ddgd dggt                    }|j        d         J |j        d         dk    sJ d S )NrS   2r   r;   rS   r   rT   )r   r{   locrv   s     rH    test_constructor_dtype_list_dataz:TestDataFrameConstructors.test_constructor_dtype_list_datak  sP    C4+.f===vd|###vd|s""""""rJ   c                    t                      }t          j        d          }t          j        t
          d          5  t          |g           d d d            n# 1 swxY w Y   t          j        t
          d          5  t          |g           d d d            n# 1 swxY w Y   t          dddgi          }t          j        t
          d          5  t          ||g           d d d            d S # 1 swxY w Y   d S )Nr   zshape=\(1, 0, 0\)rh   ArS   rR   zshape=\(2, 2, 1\))r   r>   emptyro   rp   r   )rD   r   r   s      rH   "test_constructor_list_of_2d_raisesz<TestDataFrameConstructors.test_constructor_list_of_2d_raisesp  s   KKHV]:-ABBB 	 	qcNNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]:-ABBB 	 	qcNNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 sQFm$$]:-ABBB 	 	q!f	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s5   AA"ABB"%B"C66C:=C:ztyp, adr   r   barr  ry   Cintc                    |dk    rt           }d |D             }n|dk    rt          }d |D             }t          ||          D ]\  }}|j        |k    sJ |                    t          t          ||                               t          |          }t          t           z   }|D ]}||v r|j        |         |k    sJ d S )Nr%  c                     g | ]H}t          j        t           j                            d                               d          |          IS )rR   
   r;   )r>   rm   randomdefault_rngr   r   s     rH   r   zKTestDataFrameConstructors.test_constructor_mixed_dtypes.<locals>.<listcomp>  sR       KL..q1188<<AFFF  rJ   r   c                     g | ]J}t          j        t           j                            d                               dd          |          KS )rR   r(  )sizer;   )r>   rm   r)  r*  integersr+  s     rH   r   zKTestDataFrameConstructors.test_constructor_mixed_dtypes.<locals>.<listcomp>  sZ        ..q11::2B:GGqQQQ  rJ   )MIXED_INT_DTYPESMIXED_FLOAT_DTYPESzipr<   updatedictr   dtypes)rD   typadr4  r   r   r   rF   s           rH   test_constructor_mixed_dtypesz7TestDataFrameConstructors.test_constructor_mixed_dtypes~  s    %<<%F PV  FF G^^'F   F
 '' 	  	 DAq7a<<<<<
		$s66**++,,,r]]#&66 	) 	)ABwwy|q((((	) 	)rJ   c                    t           j                            d                              d                              t           j                  }t           j                            d                              d                              t           j                  }t          ||d          }|j        |j        j        k    sJ |j        |j	        j        k    sJ d S )NrR   r(  r   r   )
r>   r)  r*  rA   	complex64
complex128r   r<   r   r   rD   r   r   rF   s       rH   test_constructor_complex_dtypesz9TestDataFrameConstructors.test_constructor_complex_dtypes  s    I!!!$$++B//66r|DDI!!!$$++B//66r}EEQQ''((w"$*$$$$w"$*$$$$$$rJ   c                 F   t          ddd gi|          }|                                }t          dddgi          }t          j        ||           |j        d         J t          ddt
          j        gi|          }t          j        |j        d                   sJ d S )Nr  r   r;   FTr  )r   r$   rB   rC   r  r>   rn   isnan)rD   string_dtyperF   r   rG   s        rH   $test_constructor_dtype_str_na_valuesz>TestDataFrameConstructors.test_constructor_dtype_str_na_values  s    c4[)>>>cE4=122
fh///wt}$$$c26]+<@@@x&&&&&&&rJ   c                    |                     d          }t          |j        j                  d d d         |j        _        |j        }t          |          }t          j        |j        t          |j        j                             t          ||          }t          j        |j        t          |j        j                             t          j        |j        |           t          j        t          |                    d d d         }t          ||ddg          }t          ||                              ddg          }t          j        ||           d S )NFr`   r$  ry   r   r   )
to_recordslistr<   namesra   r   rB   assert_index_equalr   r   r>   r?   rV   reindexrC   )	rD   float_framerecra   rF   r  rngdf3rG   s	            rH   test_constructor_recz.TestDataFrameConstructors.test_constructor_rec  s.   $$5$11sy//"5	!s^^
bj%	*@*@AAA5)))
ck5+A+ABBB
ci/// iC!!$$B$'3c
;;;S,,,44c3Z4HH
c8,,,,,rJ   c                     t          t          j        dt                    t          j        dt                    d          }|j        j        t          j        k    sJ d S )Nr(  r;   rT   )r   r>   r   boolzerosr  r<   bool_rv   s     rH   test_constructor_boolz/TestDataFrameConstructors.test_constructor_bool  sR    272T222rx$7O7O7OPPQQy"(******rJ   c                    t          j        d t          dd          D             t           j                  }t	          d|i          }|d         j        t           j        k    sJ g d}ddg}t          j        t          |          f|          }||d d <   t	          |          }|d	         j        t           j        k    sJ d S )
Nc                     g | ]}d |z
  S )            r   r   is     rH   r   zMTestDataFrameConstructors.test_constructor_overflow_int64.<locals>.<listcomp>  s    ;;;519;;;rJ   rS   r(  r;   r   ))l   Y2<   )l   FJLW]L*    )l   M:M^ -   )l   8Ma i  )l   r*R3_PvN rX  )uidu8)scorer\  r[  )r>   rm   r   r0   r   r<   rP  rV   )rD   r  r   data_scoresr<   r   	df_crawlss          rH   test_constructor_overflow_int64z9TestDataFrameConstructors.test_constructor_overflow_int64  s    ;;eArll;;;29MMMC=))c{ BI----
 
 
 0x[))+5999QQQdOO	%222222rJ   r  rU  r;   A   l           l        l        c                     |d         }t          |          }|d         j        t          k    sJ |d         d         |k    sJ d S r   )r   r<   r{   rD   r  rb   r   s       rH   test_constructor_int_overflowz7TestDataFrameConstructors.test_constructor_int_overflow  sP     q	6""ay&((((ay|u$$$$$$rJ   c                     |d         }t          |          }|d         j        |j        k    sJ |d         d         |k    sJ d S r   r   r<   rc  s       rH   test_constructor_numpy_uintsz6TestDataFrameConstructors.test_constructor_numpy_uints  sR     q	6""ay%+----ay|u$$$$$$rJ   c           	      P   d}t          t          |                    }t          j                            d                              |           d |D             }t          t          t          |dgg|z                                }|t          |j	                  k    sJ d S )Nd   rR   c                     g | ]}d |d	S )r  r   r   rV  s     rH   r   zJTestDataFrameConstructors.test_constructor_ordereddict.<locals>.<listcomp>
  s     ,,,!IIII,,,rJ   r   )
rE  r   r>   r)  r*  shuffler   r   r1  r   )rD   nitemsnumsrG   rF   s        rH   test_constructor_ordereddictz6TestDataFrameConstructors.test_constructor_ordereddict  s    E&MM""
	a  ((...,,t,,,{3x1##@#@AABB4
++++++++rJ   c                    t          t          j        dt          j                  t	          dd                    }|dd          }t          ||d          }t          |          dk    sJ t          |          dk    sJ t          j        |d	         |	                    d	                     t          t          j
        t          j        gdz  |j        g          |j        d
          }t          j        ||d
                    t          ||dg d          }t          |          t          |          k    sJ d	|vsJ t          |d                                                   sJ t          t                                dk    sJ d}t!          j        t$          |          5  t          dddg dd           d d d            d S # 1 swxY w Y   d S )N   r;   
2020-01-01rP   r`   r   r   r      r   r   ra   rl   )r   r   col4r   r   r   <Mixing dicts with non-Series may lead to ambiguous ordering.rh   r   r   r9  r   r  ry   )r   r>   r?   r,   r#   r   rV   rB   r~   renameconcatenatern   r  ra   r$   allro   rp   r   )rD   datetime_seriesdatetime_series_shortframeexprq   s         rH   test_constructor_dictz/TestDataFrameConstructors.test_constructor_dict  se    Ib
+++:lTV3W3W3W
 
 
 !0 3?<QRRSS ?##r))))())R////
uV}o.D.DV.L.LMMMNRVHqL*?*FGHH!'
 
 

 	sE&M222$.CDD,,,
 
 

 5zzS!6777777U""""E&M""&&((((( 9;;1$$$$ M]:S111 	I 	I#C00GGHHH	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	Is   1GGGc                     t          ddddi          }t          j        |j        t	          ddg                     d S )Nr  rS   rR   1r  r  r  )r   rB   rG  ra   r   rD   r~  s     rH   test_constructor_dict_length1z7TestDataFrameConstructors.test_constructor_dict_length16  sC    3aa 0 0122
ek5#s+<+<=====rJ   c                 `    t          g d          }t          i |          }|j        |u sJ d S )Nr   rS   rR   r`   )r   r   ra   rD   r   r~  s      rH    test_constructor_dict_with_indexz:TestDataFrameConstructors.test_constructor_dict_with_index;  s>    III"C((({c!!!!!!rJ   c                     t          g d          }t          i ||          }|j        |u sJ |j        |u sJ t	          |j                  dk    sJ d S )Nr  r   r:   )r   r   ra   r   rV   _seriesr  s      rH   ,test_constructor_dict_with_index_and_columnszFTestDataFrameConstructors.test_constructor_dict_with_index_and_columnsA  sn    III"C555{c!!!!}####5=!!Q&&&&&&rJ   c                     t          g g dddg          }t          j        |j        t	          d          d           d S )Nrx  r  ry   r   r   Texact)r   rB   rG  ra   r   r  s     rH   $test_constructor_dict_of_empty_listsz>TestDataFrameConstructors.test_constructor_dict_of_empty_listsI  sF    ,,sCjAAA
ek:a==EEEEEErJ   c                     t          dd idg          }t          dd gidg          }|                    dd          J |                    dd          J t          j        ||           d S )Nr   r   r`   )r   
_get_valuerB   rC   )rD   
frame_noneframe_none_lists      rH   test_constructor_dict_with_nonez9TestDataFrameConstructors.test_constructor_dict_with_noneN  s     T{1#666
#S4&M!===$$Q,,444))!S11999
j/:::::rJ   c                 "   d}t          j        t          |          5  t          ddi           d d d            n# 1 swxY w Y   t          j        t          |          5  t          ddidg           d d d            d S # 1 swxY w Y   d S )N2If using all scalar values, you must pass an indexrh   r   gffffff?r   ro   rp   r   r   rD   rq   s     rH   test_constructor_dict_errorsz6TestDataFrameConstructors.test_constructor_dict_errorsW  s    C]:S111 	" 	"sCj!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" ]:S111 	1 	1sCj3%0000	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1s!   <A A "BBBscalarNDc                 z    t          d|idg          }t          dg          }t          j        ||           d S )Nr   r   r   r   )rD   r  r   rG   s       rH   %test_constructor_invalid_items_unusedz?TestDataFrameConstructors.test_constructor_invalid_items_unuseda  sG     C=3%888cU+++
fh/////rJ   rb   rn   c                 >   d|dgd|gddgddgddggfdt          d          D             }t          |                              d                              dd	          }t          t          j        d
d                              dd                    }t          j        ||           t          |                              dd	          }t          j        ||           t          |          }t          j        ||           d S )NrS   r:   r   r   r9   rR   r   c                 L    i | ] }|         t          |                    !S r`   r   r   r   colsr   r  s     rH   
<dictcomp>zKTestDataFrameConstructors.test_constructor_dict_nan_key.<locals>.<dictcomp>n  0    HHH!Qq	555HHHrJ   axisrM   r4   r;   r   r`   )r   r   sort_valuesr>   r?   r@   rB   rC   rD   rb   r   r   rG   r  r   r  s        @@@rH   test_constructor_dict_nan_keyz7TestDataFrameConstructors.test_constructor_dict_nan_keyh  s8    5!}Ela&1a&1a&)HHHHHHuQxxHHH4,,Q//;;Ca;HHIaw'''//155S$
 
 
 	fh///4s+++77!7DD
fh///4sD999
fh/////rJ   c                    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t          d          D             }t          |                              d                              d|fd          }t          t	          j        dd                              dd                    }t          j        ||           t          |                              d|fd          }t          j        ||           t          |          }t          j        ||           d S )N)            r   rR   r   r:   rS   r9   r   c                 L    i | ] }|         t          |                    !S r  r   r  s     rH   r  zQTestDataFrameConstructors.test_constructor_dict_nan_tuple_key.<locals>.<dictcomp>  r  rJ   r  rM   r4   r;   r   r`   )	r   r   r   r  r>   r?   r@   rB   rC   r  s        @@@rH   #test_constructor_dict_nan_tuple_keyz=TestDataFrameConstructors.test_constructor_dict_nan_tuple_key{  sc    hb%[9::c5\E1:.//a&1a&1a&)HHHHHHuQxxHHH4,,X66BBC<VWBXXIaw'''//155S$
 
 
 	fh///4s+++77e17MM
fh///4sD999
fh/////rJ   c                 &   t          t          j        dt          j                  t	          dd                    }|d d         }||d}t          |          }t          |t          d	          
          }t          j        ||           d S )Nr(  r;   rq  rr  r`   r   r   r   r   bar   r   )	r   r>   r?   r,   r#   r   rE  rB   rC   )rD   r|  r}  r   r~  rG   s         rH   %test_constructor_dict_order_insertionz?TestDataFrameConstructors.test_constructor_dict_order_insertion  s     Ib
+++:lTV3W3W3W
 
 
 !0 3 (o>>q!!!!T$ZZ888
eX.....rJ   c                     t          t          j        ddgdddgit          j        dg          }t          ddgddggt          j        dg          }t          j        ||           d S )NrS   rR   r:   r   )r   r>   rn   rB   rC   rD   r   rG   s      rH   )test_constructor_dict_nan_key_and_columnszCTestDataFrameConstructors.test_constructor_dict_nan_key_and_columns  sk    BFQFA1v6LLLq!fq!f-{CCC
fh/////rJ   c                    g d}t          j        |          }t          ||          }t          |          j                                                                        sJ g d}t          j        |          }t          ||          }t          |          j                                                                        sJ d S )N)rR   r:   r:   r:   r  r   )r  r  r  )r   from_tuplesr   r$   r  r   r{  )rD   tuplesmirF   s       rH   test_constructor_multi_indexz6TestDataFrameConstructors.test_constructor_multi_index  s     *))#F++R,,,Bxx$$&&**,,,,,)))#F++R,,,Bxx$$&&**,,,,,,,rJ   c                    t          dggdggddg          }t          ddgt          ddgd          t          dggdgg                    }t          j        ||           t          dggdggddgg          }t          ddgt          ddggddgg          t          dggdgg                    }t          j        ||           d S )	NrS   rR   r   ra   r4   r;   r   )levelscodesr   )r   r   r   rB   rC   rD   rF   rG   s      rH   test_constructor_2d_indexz3TestDataFrameConstructors.test_constructor_2d_index  s    useAq6:::FAg...seQC5999
 
 

 	b(+++useQF8<<<FaVHaVH===seQC5999
 
 

 	b(+++++rJ   c           	         d}t          j        t          |          5  t          t	          j        d          dg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          ddd	g d
d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          t	          j        d                              d          g dt          dd                     d d d            n# 1 swxY w Y   t	          j	        g dg          }d}t          j        t          |          5  t          dgt          d          |           d d d            n# 1 swxY w Y   t	          j	        g d          }d}t          j        t          |          5  t          dgt          d          |           d d d            n# 1 swxY w Y   t          j        t          d          5  t          t	          j        d          g ddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          t          j                            d                              d          g ddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          t          j                            d                              d          d d!gddg           d d d            n# 1 swxY w Y   d"}t          j        t          |          5  t          t          d#          t          d#d$          fd%&           d d d            n# 1 swxY w Y   d'}t          j        t          |          5  t          d(d)d	           d d d            d S # 1 swxY w Y   d S )*Nz)Empty data passed with indices specified.rh   r   rS   r`   rw  r   r   r9  r   rx  z:Shape of passed values is \(4, 3\), indices imply \(3, 3\)r8   )r9   r:   r   r"  baz
2000-01-01r:   rr  r  r9   r   rM   z:Shape of passed values is \(1, 3\), indices imply \(1, 4\)r9   ra   r   r   z:Shape of passed values is \(3, 1\), indices imply \(1, 4\)Must pass 2-d inputr:   r:   r:   r#  :Shape of passed values is \(2, 3\), indices imply \(1, 3\)rR   r  :Shape of passed values is \(2, 3\), indices imply \(2, 2\)r  ry   z,2 columns passed, passed data had 10 columnsr(     )r   twosr   r  FT)ro   rp   r   r   r>   r   r?   r@   r#   rm   r   rP  r)  r*  )rD   rq   rE   s      rH   test_constructor_error_msgsz5TestDataFrameConstructors.test_constructor_error_msgs  s   9]:S111 	. 	.bhqkk!----	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. M]:S111 	I 	I#C00GGHHH	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I 	I L]:S111 	 		"%%f----- q999   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 h			{##K]:S111 	= 	=QCq<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= hyyy!!K]:S111 	= 	=QCq<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= ]:-BCCC 	O 	Obhy))???1#NNNN	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O L]:S111 	 		%%a((//77'c   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 L]:S111 	 		%%a((//77c
!f   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 =]:S111 	L 	LuRyy%B--0:JKKKK	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L C]:S111 	/ 	/E--...	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   %AAA7BB"BA	DDD!FFF!G//G36G3(I		II1AKK
K+AL>>MM&/N!!N%(N%	O))O-0O-c                     |d t          d          D                        |d t          d          D                       d}t          |          }t          d |                                D                       }t          j        ||            ||                                          }t          |          }t          j        ||           d S )Nc              3   $   K   | ]}|d |z  fV  dS )g      $@Nr   r   s     rH   r   zKTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<genexpr>   *      !C!CA1dQh-!C!C!C!C!C!CrJ   r(  c              3   $   K   | ]}|d |z  fV  dS )g      4@Nr   r   s     rH   r   zKTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<genexpr>  r  rJ   rs  c                 X    i | ]'\  }}|t          |                                          (S r   )r3  items)r   colvals      rH   r  zLTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<dictcomp>  s.    OOOhc33SYY[[ 1 1OOOrJ   )r   r   r  rB   rC   )rD   dict_subclassr   rF   refdfs        rH   test_constructor_subclass_dictz8TestDataFrameConstructors.test_constructor_subclass_dict  s     "M!C!Cr!C!C!CCC!M!C!Cr!C!C!CCC
 
 t__OO$**,,OOOPP
eR(((}TZZ\\**t__
eR(((((rJ   c                    i }t           j        |j        d |j        d         df<   |                                D ]E\  }}t          t                    }|                    |                                           |||<   Ft          |          }|
                    |j                  }t          j        ||           d S )Nr(  ry   r`   )r>   rn   r  ra   r  r   r3  r2  r   r   rH  rB   rC   )rD   rI  r   kvdctr~  rG   s           rH   test_constructor_defaultdictz6TestDataFrameConstructors.test_constructor_defaultdict  s    8:/++B//45%%'' 	 	DAqd##CJJqyy{{###DGG$=={'8=99
k844444rJ   c                     t          j        g dg          }t          dgdgdgdgdg d          }t          j        |j        |           d S )N)      @r   r   r   r  r   r   r   )r   r   r   r   r   )r>   rm   r   rB   assert_numpy_array_equalr  )rD   rG   rF   s      rH   test_constructor_dict_blockz5TestDataFrameConstructors.test_constructor_dict_block  sl    8111233%se3%se<<(((
 
 
 	#BIx88888rJ   c                    dddddddd}t          |t          	          }t          |          d
k    sJ |d         j        t          j        k    sJ |d         j        t          j        k    sJ t          |          }t          |          d
k    sJ |s|d         j        t          j        k    snnJ |d         j        t          j        k    sJ d S )NrS   rR   r  r  r  3)r  r  r  rx  r;   r:   ry   r  )r   r   rV   r<   r>   r,   r   )rD   r   	test_datar~  s       rH   test_constructor_dict_castz4TestDataFrameConstructors.test_constructor_dict_cast   s     !**s31O1OPP	)51115zzQSz2:----Sz2:----)$$5zzQ5GRuSz2:------Sz2:------rJ   c           	         t          t          t          d          d t          d          D                                 t          t          t          d          t          j                            d                              d                              d}t          j        t          d          5  t          |t                     d d d            d S # 1 swxY w Y   d S )	Nr  c                     g | ]}d | S )word_r   rV  s     rH   r   zITestDataFrameConstructors.test_constructor_dict_cast2.<locals>.<listcomp>0  s    %E%E%Eakakk%E%E%ErJ      rR   rx  zcould not convert stringrh   r;   )r3  r1  r   r>   r)  r*  standard_normalro   rp   r   r   r   )rD   r  s     rH   test_constructor_dict_cast2z5TestDataFrameConstructors.test_constructor_dict_cast2-  s    c%))%E%E599%E%E%EFFGGc%))RY%:%:1%=%=%M%Mb%Q%QRRSS
 
	 ]:-GHHH 	. 	.iu----	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.s   8CC #C c                     ddt           j        di}t          |          }t          |d         d         t                    sJ d S )NCol1zA String)Row1Row2r  )r>   rn   r   r   r   )rD   r   rF   s      rH   !test_constructor_dict_dont_upcastz;TestDataFrameConstructors.test_constructor_dict_dont_upcast6  sF    j"&99:q\\"V*V,e4444444rJ   c                     t          ddgddggddgddg          }t          |d         d         t                    sJ d S )NrS   rR   r   r   r   )r   r   r%  )rD   dms     rH   "test_constructor_dict_dont_upcast2z<TestDataFrameConstructors.test_constructor_dict_dont_upcast2;  sO    Ac
+Aq6Aq6JJJ"Q%(C(((((((rJ   c                     ddd}t          |          }t          d |                                D                       }t          j        ||d           d S )NrS   rR   r:   r  r9  c                 4    i | ]\  }}|t          |          S r   )rE  )r   r  r  s      rH   r  zMTestDataFrameConstructors.test_constructor_dict_of_tuples.<locals>.<dictcomp>D  s$    BBBTQaaBBBrJ   Fcheck_dtype)r   r  rB   rC   rD   r   r   rG   s       rH   test_constructor_dict_of_tuplesz9TestDataFrameConstructors.test_constructor_dict_of_tuples?  s\    Y//4BBTZZ\\BBBCC
fhEBBBBBBrJ   c                     t          d          t          dd          d}t          |          }t          g dg dd          }t          j        ||           d S )Nr:   rM   r9  r  )r:   r9   r   r   r   rB   rC   r  s       rH   test_constructor_dict_of_rangesz9TestDataFrameConstructors.test_constructor_dict_of_rangesG  s^    1XXE!QKK004999999==>>
fh/////rJ   c                     t          t          d                    t          t          d                    d}t          |          }t          g dg dd          }t	          j        ||           d S )Nr:   r9  r  rR   rS   r   )iterr   reversedr   rB   rC   r  s       rH   "test_constructor_dict_of_iteratorsz<TestDataFrameConstructors.test_constructor_dict_of_iteratorsO  sj    %((^^(588*<*<==4999999==>>
fh/////rJ   c                     d t          d          D             d t          t          d                    D             d}t          |          }t          g dg dd          }t          j        ||           d S )Nc              3      K   | ]}|V  d S r   r   rV  s     rH   r   zPTestDataFrameConstructors.test_constructor_dict_of_generators.<locals>.<genexpr>Y  s"      ,,Aa,,,,,,rJ   r:   c              3      K   | ]}|V  d S r   r   rV  s     rH   r   zPTestDataFrameConstructors.test_constructor_dict_of_generators.<locals>.<genexpr>Y  s"      3R3R!A3R3R3R3R3R3RrJ   r9  r  r  )r   r  r   rB   rC   r  s       rH   #test_constructor_dict_of_generatorsz=TestDataFrameConstructors.test_constructor_dict_of_generatorsW  s    ,,%((,,,3R3Rxa?Q?Q3R3R3RSS4999999==>>
fh/////rJ   c                    dddddddddd	d
dd}t          |                                          }t          |          }t          d |D             t          j        d |D                                 j        }t          j        |j                  |_        t          j        ||           ddddd|d<   |	                    dd|d         f           t          d |D             t          d |D             d                    j        }t          |j        d          |_        t          |          }|                    |j        |j                  }t          j        ||           d S )Nr   rS   rR   )rW  rW  rW  jr  rW  rM   r   r9         	   ))r   r   r  )r   r   c                     g | ]
}|d          S rS   r   r   s     rH   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>g      aQqTrJ   c                     g | ]
}|d          S r   r   r   s     rH   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>g  s    =O=O=Oqad=O=O=OrJ   r`   g     ^@o   )r   r  r  r  zc                     g | ]
}|d          S r  r   r   s     rH   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>r  r  rJ   c                     g | ]
}|d          S r  r   r   s     rH   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>r  s    ,>,>,>aQqT,>,>,>rJ   F)tupleize_colsr  )sortedr  r   r   r  Tra   rB   rC   insertr   rH  r   )rD   r   _drF   rG   s        rH    test_constructor_dict_multiindexz:TestDataFrameConstructors.test_constructor_dict_multiindex^  s   %&A1EE%&A1EE%&A1EE
 

 AGGIIq\\2j&<=O=OB=O=O=O&P&P
 
 

 	 $/??
	
 	
 	

 #3CPP#
		!c1S6]###2e,>,>2,>,>,>e&T&T&T
 
 

 	 x~UCCCq\\ZZ 0ZGG
b(+++++rJ   c           
        	 g d		fd} |t           j                  } |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             
          }t          |          }t          |          }t          |          }t	          j        ||           t	          j        ||           t	          j        ||           d S )N)z
1984-02-19z
1988-11-06z
1989-12-03z
1990-03-15c                 <      fdt                    D             S )Nc                 8    i | ]\  }}| |          d |z  iS rR   r   )r   rW  sr   s      rH   r  ziTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_data.<locals>.<dictcomp>~  s0    SSS41aAAA.SSSrJ   )	enumerate)r   dates_as_strs   `rH   create_datazUTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_data}  s&    SSSS9\;R;RSSSSrJ   c                 ,    t          j        | d          S )Nz%Y-%m-%d)r
   strptimer   s    rH   r   zRTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<lambda>  s    h.?:.N.N rJ   r   r   rS   rR   r:   rR   r9   rM   c                 ,    g | ]}t          |          S r   )r!   )r   r_   s     rH   r   zTTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<listcomp>  s    888R9R==888rJ   r`   )r>   r   r!   r   rB   rC   )
rD   r+  data_datetime64data_datetimedata_TimestamprG   result_datetime64result_datetimeresult_Timestampr*  s
            @rH   &test_constructor_dict_datetime64_indexz@TestDataFrameConstructors.test_constructor_dict_datetime64_indexy  s5   OOO	T 	T 	T 	T 	T &+bm44#$N$NOO$Y//$4D11Q4D11TaD11Tdq11	 98<888
 
 
 &o66#M22$^44
/:::
ox888
.99999rJ   z
klass,namec                 ,    t          j        | d          S Nr  )r>   timedelta64r.  s    rH   r   z"TestDataFrameConstructors.<lambda>  s    r~a-- rJ   r:  c                 "    t          |           S )N)days)r   r.  s    rH   r   z"TestDataFrameConstructors.<lambda>  s    ya((( rJ   pytimedeltac                 "    t          | d          S r9  r    r.  s    rH   r   z"TestDataFrameConstructors.<lambda>  s    yC(( rJ   zTimedelta[ns]c                 H    t          | d                              d          S )Nr  r(  )r    rd   r.  s    rH   r   z"TestDataFrameConstructors.<lambda>  s    yC((0055 rJ   zTimedelta[s]c           
          g d}f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             	          }t          |          }t          j        ||           d S )
NrS   rR   r:   r9   c                 8    i | ]\  }}| |          d |z  iS r'  r   )r   rW  r(  klasss      rH   r  zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<dictcomp>  s0    FFFAEE!HHa!e$FFFrJ   r   r/  rR   r9   rM   c                 .    g | ]}t          |d           S )r  r?  )r   tds     rH   r   zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<listcomp>  s"    :::"9R%%:::rJ   r`   )r)  r   rB   rC   )rD   rD  rl   	td_as_intr   rG   r   s    `     rH   'test_constructor_dict_timedelta64_indexzATestDataFrameConstructors.test_constructor_dict_timedelta64_index  s     !LL	FFFF91E1EFFF$4D11Q4D11TaD11Tdq11	 ;:	:::
 
 
 4
fh/////rJ   c                    t          j        g dd          }t          j        g dd          }t          ||d          }|d         j        |j        k    sJ |d         j        |j        k    sJ 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   r  r9  r   r   )pdPeriodIndexr   r<   rA   r{   r}   r<  s       rH   test_constructor_period_dictz6TestDataFrameConstructors.test_constructor_period_dict  s    N888sCCCN>>>SIIIQQ''((#w}''''#w}'''' QXXf--4466QXXf=M=M=T=T=V=VWWXX#w}''''#w}''''''rJ   c                     |\  }}t          d|idg          }|d         j        |k    sJ t          dgdg|          }t          j        ||           d S )Nr   r   r`   r  )r   r<   rB   rC   )rD   ea_scalar_and_dtype	ea_scalarea_dtyperF   rG   s         rH   &test_constructor_dict_extension_scalarz@TestDataFrameConstructors.test_constructor_dict_extension_scalar  sm    1	8Y's333#w}((((A3IFFF
b(+++++rJ   z
data,dtypez2020-01r   )leftrightr4   rU  z
2011-01-01
US/EasternrQ   r(  )unitrQ   c                     t          ddgddg|          }|d         j        |k    sJ |d         j        |k    sJ t          j        |gdz  |          }t          ||d          }t	          j        ||           d S )	Nr   rS   r   r   r  rR   r;   r9  )r   r<   rL  rm   rB   rC   )rD   r   r<   rF   rE   rG   s         rH   &test_constructor_extension_scalar_dataz@TestDataFrameConstructors.test_constructor_extension_scalar_data  s     aVc3ZdCCC#w}%%%%#w}%%%%hvz///3S1122
b(+++++rJ   c                 b   t          j        dd          }t          t          j                            d                              d          |          }i }|j        D ]9}|j        D ]/}|	                    ||          |
                    |i           |<   0:t          ||          }t          j        ||           i }|j        D ]9}|j        D ]/}|	                    ||          |
                    |i           |<   0:t          ||          j        }t          j        ||           d S )Nz1/1/2000r   rr  rR   r(  r   r   r`   )rL  period_ranger   r>   r)  r*  r  r   ra   r  
setdefaultrB   rC   r   )rD   rK  rF   r   r  rowr   s          rH   "test_nested_dict_frame_constructorz<TestDataFrameConstructors.test_nested_dict_frame_constructor  sR   oj!444ry,,Q//??HHRUVVV: 	H 	HCx H H02c30G0GR((--H 4---
fb))): 	H 	HCx H H02c30G0GR((--H 4s+++-
fb)))))rJ   c                 V    |dt                     }t          |g dddg          }t          |j                  dk    sJ t          |j                  dk    sJ t           |d          d	gg d
          }t          |j                  dk    sJ t          |j                  dk    sJ |t
          j        urXd}t          j        t          |          5  t          |g dddgt
          j
                   d d d            n# 1 swxY w Y   d S t          |g dddgt
          j
                  }|j        j        t
          j
        k    sJ d}t          j        t          |          5  t          |g ddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          |d	dgddg           d d d            n# 1 swxY w Y   t          j        t          d          5  t           |d          g ddg           d d d            n# 1 swxY w Y   t          |          }t          j        |j        t!          t#          d                    d           t          j        |j        t!          t#          d                    d           t          |ddg          }t          j        |j        t!          t#          d                    d           t          |g d          }t          j        |j        t!          t#          d                    d           t           |d                    }t          |j                  dk    sJ t           |d                    }t          |j                  dk    sJ d S )Nr  r;   r#  rS   rR   r  r:   )r:   r  r  rg   rh   r   ra   r<   r  r  ry   r  r  Tr  r`   r   )r   r:   r   )r:   r   )r   r   rV   ra   r   r>   r   ro   rp   r   r4   r  r<   r   rB   rG  r   r   )rD   r   matr~  rq   s        rH   _check_basic_constructorz2TestDataFrameConstructors._check_basic_constructor  s    eF%(((#q!fEEE5;1$$$$5=!!Q&&&& %%++uIIIFFF5;1$$$$5=!!Q&&&&NC1=== V V#q!fBHUUUUV V V V V V V V V V V V V V VF___QF"(  E <%1111 L]:S111 	? 	?c???1#>>>>	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	?K]:S111 	= 	=cC:aV<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= ]:-BCCC 	L 	LeeI&&sKKKK	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L #
ek5q??$GGGG
emU588__DIIII#aV,,,
emU588__DIIII#777
ek5q??$GGGG %%--((5;1$$$$%%--((5=!!Q&&&&&&sH   "DDD/FFF9GG #G H--H14H1c                     |                      t          j                   t          ddgddgdg          }t	          |          dk    sJ d S )Nr   r"  r   rS   r  r   rR   )rd  r>   r   r   rV   r  s     rH   test_constructor_ndarrayz2TestDataFrameConstructors.test_constructor_ndarray+  sM    %%bg...5%.AFFF5zzQrJ   c                    |                      t          j                   t          j        dt                    }d|d<   d|d<   t	          |g ddd	g
          }d|d         d         k    sJ d|d         d	         k    sJ t          j        dt                    }t	          |g ddd	g
          }t          j        t          j        ||k                         sJ d S )Nr  r;   r   r   r   rS   rR   r#  rS   rR   r  r  r$  )rd  r   
masked_allr   r   r>   r{  asarray)rD   rc  r~  s      rH   test_constructor_maskedarrayz6TestDataFrameConstructors.test_constructor_maskedarray1  s    %%bm444 mF%000D	D	#q!fEEEeCjm####eCjm#### mF%000#q!fEEEvrz%5.1112222222rJ   z7ignore:elementwise comparison failed:DeprecationWarningc                 V   t          j        dt                    }t          |g dddg          }t	          |j                  dk    sJ t	          |j                  dk    sJ t          j        t          j	        ||k                         sJ t          |g dddgt          j
                  }|j        j        t          j
        k    sJ t          j        |          }d|d	<   d|d
<   t          |g dddg          }d|d         d         k    sJ d|d         d         k    sJ t          j        dd          }t          |g dddg          }t	          |j                  dk    sJ t	          |j                  dk    sJ t          |          j                                        sJ d}t          j        t"          |          5  t          |g dddgt          j                   d d d            n# 1 swxY w Y   t          j        |          }d|d	<   d|d
<   t          |g dddg          }d|d                             d          d         k    sJ d|d                             d          d         k    sJ t          j        dt(                    }t          |g dddg          }t	          |j                  dk    sJ t	          |j                  dk    sJ t          j        t          j	        ||k                         sJ t          |g dddgt*                    }|j        j        t*          k    sJ t          j        |          }d|d	<   d|d
<   t          |g dddg          }|d         d         du sJ |d         d         du sJ d S )Nr  r;   r#  rS   rR   r  r:   rb  r   rh  r  r$  rt   z8datetime64\[ns\] values and dtype=int64 is not supportedrh   rj   TF)r   ri  r%  r   rV   ra   r   r>   r{  rj  r,   r  r<   r   r$   ro   rp   r   r4   rA   rO  r{   )rD   rc  r~  mat2rq   s        rH   %test_constructor_maskedarray_nonfloatz?TestDataFrameConstructors.test_constructor_maskedarray_nonfloatA  s.   
 mF#...#q!fEEE5;1$$$$5=!!Q&&&&vrz%5.11122222 #q!fBJWWW|!RZ//// ws||T
T
$1vFFFE#JqM!!!!E#JqM!!!! mF(333#q!fEEE5;1$$$$5=!!Q&&&&E{{!%%''''' J]9C000 	R 	Rc???1a&QQQQ	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R 	R ws||T
T
$1vFFFE#J%%d++A.....E#J%%d++A..... mF$///#q!fEEE5;1$$$$5=!!Q&&&&vrz%5.11122222 #q!fFSSS|!V++++ ws||T
T
$1vFFFSz!}$$$$Sz!}%%%%%%s   "G??HHc                 B   t          j        dt                                                    }t	          |ddgddg          }t	          t
          j        t
          j        gt
          j        t
          j        gdddgddgt          	          }t          j        ||           t          j	        dt                                                    }t	          |ddgddg          }t	          d
d
gd
d
gdddgddgt          	          }t          j        ||           d S )N)rR   rR   r;   r  ry   rS   rR   r  rx  rb  r   )
r   ri  r   harden_maskr   r>   rn   rB   rC   r   )rD   mat_hardr   rG   s       rH   %test_constructor_maskedarray_hardenedz?TestDataFrameConstructors.test_constructor_maskedarray_hardened  s$   =u555AACC8c3Z1vFFF626""&"&)9::#Ja&	
 
 
 	fh///76///;;==8c3Z1vFFF*C:..#Ja&	
 
 
 	fh/////rJ   c                 d   t           j                            t           j                            dddg          dgdz            }|                    t
          j                  }t          j        t          d          5  t          |t                     d d d            d S # 1 swxY w Y   d S )	Nr   )r	   <f8)pricert  r;   F)maskzPass \{name: data\[name\]rh   )r>   r   rm   rP  r   r   	mrecarrayro   rp   r   r   r%  rD   r   s     rH   %test_constructor_maskedrecarray_dtypez?TestDataFrameConstructors.test_constructor_maskedrecarray_dtype  s    u{{EKK/3C!DKEEUGVWK  
 
 yy+,,]9,HIII 	' 	'd#&&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	's   B%%B),B)c                 J    t          g           }|j        j        dk    sJ d S )Nr`   r   )r   r  shaperv   s     rH   test_constructor_corner_shapez7TestDataFrameConstructors.test_constructor_corner_shape  s-    R   y&((((((rJ   z%data, index, columns, dtype, expectedr(  r   r   r,   r   c                 N    t          ||||          }|j        j        |k    sJ d S r   )r   r  r<   )rD   r   ra   r   r<   rG   rF   s          rH   test_constructor_dtypez0TestDataFrameConstructors.test_constructor_dtype  s2     tUGU33y(******rJ   zdata,input_dtype,expected_dtype)TFNbooleanr   r   NFloat64)rS   rR   NInt64r   stringc                 b    t          d|i|          }|d         j         |            k    sJ d S )Nr   r;   rf  )rD   r   input_dtypeexpected_dtyperF   s        rH   0test_constructor_dtype_nullable_extension_arrayszJTestDataFrameConstructors.test_constructor_dtype_nullable_extension_arrays  s?     T{+666#w} 0 0000000rJ   c                    dddddd}t          |t          j        d                    }|d	         j        t          j        k    sJ |d
         j        t          j        k    sJ |d         j        t          j        k    sJ |d         j        t          j        k    sJ |s|d         j        t          j        k    snd S J d S )NrS   Tr   y              @r   )r%  rO  r   complexr{   r(  r`   r%  rO  r   r  r{   )	r   r>   r?   r<   r4   rQ  r,   r;  r   )rD   r   r   rF   s       rH   !test_constructor_scalar_inferencez;TestDataFrameConstructors.test_constructor_scalar_inference  s    $uUUt29R==111%y"(****&z28++++'{ BJ....)}"bm33337ITr(|!RZ/////////rJ   c                    t          t          j                            d                              d          dd          }t          |d         j        dgdz  d          }t          j        ||           t          j	        t          d          5  t          ddd           d d d            d S # 1 swxY w Y   d S )	NrR   r(  Tr9  r   zmust pass an indexrh   F)r   r>   r)  r*  r  r  rB   rC   ro   rp   r   )rD   rF   r  s      rH   #test_constructor_arrays_and_scalarsz=TestDataFrameConstructors.test_constructor_arrays_and_scalars  s    RY22155EEbIIPTUUVVbgnD6B;??@@
b#&&&]:-ABBB 	/ 	/E--...	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   B44B8;B8c                     t          |          }t          j        ||           t          |t          j                  }|j        j        t          j        k    sJ d S Nr;   )r   rB   rC   r>   r4   r  r<   )rD   rI  rF   	df_casteds       rH   test_constructor_DataFramez4TestDataFrameConstructors.test_constructor_DataFrame  sU    {##
b+...k:::	%111111rJ   c                     t          t                      d          }t          g d          }t          j        ||           d S )Nr{   r;   r   )rD   actualrG   s      rH    test_constructor_empty_dataframez:TestDataFrameConstructors.test_constructor_empty_dataframe  sC    9;;h777Rx000
fh/////rJ   c                 T   t           j                            d                              d          }t	          |dgt          j        d                    }|j        j        dk    sJ t           j                            d                              d          }t	          |          }|j        j        dk    sJ |j        j        dk    sJ t	          ddgt          j        d                    }|j        j        dk    sJ t	          ddg          }|j        j        d	k    sJ t	          t          j        d          
          }|j        j        dk    sJ t          j	        ddgt                                        dd          }d}t          j        t          |          5  t	          |ddgdgt                     d d d            n# 1 swxY w Y   t	          t	          |j                            }t#          j        ||           t	          t          j        dt(                    t          j        dt           j                  dt          j        d          
          }t-          |j                  dk    sJ |j        j        t           j        k    sJ d S )NrR   r(  r  r  r   ry   r(  rR   r   )r   rR   r`   )r(  r   r   r"  r;   rS   z(could not convert string to float: 'foo'rh   ra   r   r<   rx  )r>   r)  r*  r  r   r?   r  ndimr{  rm   r{   r@   ro   rp   r   r   r  rB   rC   r   r%  r,   rV   r   r<   )rD   rI  rE   r  rc  rq   s         rH   test_constructor_morez/TestDataFrameConstructors.test_constructor_more  s   i##A&&66r::sSE2???y~""""i##A&&66q99s^^y~""""y~"""" Sz2???y'))))Sz***y&((((RYr]]+++y')))) hu~V444<<QBB8]:S111 	C 	Cc!Q!EBBBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C y!45566
b+... '"C(((rwr/L/L/LMM)B--
 
 

 2:!####y"*,,,,,,s   ,GGGc                 N   t          g g           }t          g           }t          j        ||           t          g ddg          }t          i ddg          }t          j        ||           d }t           |            ddg          }t          j        ||           d S )Nr`   r  ry   r   c               3      K   dE d {V  d S r   r   r   rJ   rH   	empty_genzHTestDataFrameConstructors.test_constructor_empty_list.<locals>.empty_gen  s      MMMMMMMMMrJ   r   )rD   rF   rG   r  s       rH   test_constructor_empty_listz5TestDataFrameConstructors.test_constructor_empty_list  s    r$$$2&&&
b(+++ rC:...R#s444
b(+++	 	 	 yy{{S#J777
b(+++++rJ   c                 h   t          ddgddggddg          }t          |d                   sJ |s|d         j        t          j        k    snnJ t          dt          j        d	          i          }d
 t          d	          D             }t          |          }t          j        ||           d S )NrS   r   rR   r   numr=   r  r   r(  c                 6    g | ]}t          j        |          S r   r>   rm   r   s     rH   r   zLTestDataFrameConstructors.test_constructor_list_of_lists.<locals>.<listcomp>&  s     //////rJ   )	r   r   r<   r>   r   r?   r   rB   rC   )rD   r   rF   rG   r   r   s         rH   test_constructor_list_of_listsz8TestDataFrameConstructors.test_constructor_list_of_lists  s    aX3x05%.III5	*****4FQr%y"*,,,,,, a2/00//U2YY///4
fh/////rJ   c                 `   t          ddg          }t          j        d d gt                    }||d<   |dz  |d<   t	          |          }t	          t          j        |                    }t          j        ||           |j        dk    sJ t          j	        |d         j
        |           d S )NrS   rR   r;   r   )rR   rS   )r   r>   rm   r{   r   rL  rB   rC   r{  r  r  )rD   serrE   rF   rG   s        rH   .test_nested_pandasarray_matches_nested_ndarrayzHTestDataFrameConstructors.test_nested_pandasarray_matches_nested_ndarray*  s    aVnnhd|6222AqAs^^RXc]]++
b(+++x6!!!!
#BqEL#66666rJ   c                     t          d          t          d          g}t          g dg dg|          }t          j        |          }t          g dg dg|          }t	          j        ||           d S )NabcdcdefrB  r9   r   rM   r  r   )rE  r   r   from_arraysrB   rC   )rD   r   r   r  rG   s        rH   2test_constructor_list_like_data_nested_list_columnzLTestDataFrameConstructors.test_constructor_list_like_data_nested_list_column8  s    v,,V-LLL,,,7HHH#F++lllLLL92FFF
fh/////rJ   c                     t          d          t          d          g}d}t          j        t          |          5  t	          g dg dg|           d d d            d S # 1 swxY w Y   d S )Nr   cdez#3 columns passed, passed data had 4rh   rB  r  r   rE  ro   rp   r   r   rD   r   rq   s      rH   0test_constructor_wrong_length_nested_list_columnzJTestDataFrameConstructors.test_constructor_wrong_length_nested_list_columnB  s    u++tE{{+3]:S111 	D 	D|||\\\2FCCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D   A!!A%(A%c                     t          d          t          d          g}d}t          j        t          |          5  t	          g dg dg|           d d d            d S # 1 swxY w Y   d S )Nr  r  zall arrays must be same lengthrh   rB  r  r   r  r  s      rH   2test_constructor_unequal_length_nested_list_columnzLTestDataFrameConstructors.test_constructor_unequal_length_nested_list_columnJ  s    v,,U, /]:S111 	D 	D|||\\\2FCCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	Dr  r   
2021-01-01r   r^   c                     t          |g ddg          }t          dt          d          gdz  i          }t          j        ||           d S )Nr  r   r   r  r:   )r   r!   rB   rC   r  s       rH   &test_constructor_one_element_data_listz@TestDataFrameConstructors.test_constructor_one_element_data_listS  sY     4yyy3%@@@cIl$;$;#<q#@ABB
fh/////rJ   c                      G d dt           j                  } |ddg           |ddg          g}ddg}t          ||	          }t          ddgddgg|	          }t          j        ||d
           d S )Nc                   (    e Zd ZddZd ZdefdZdS )PTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainerreturnNc                     || _         d S r   )_lst)rD   lsts     rH   __init__zYTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__init__g  s    			rJ   c                 6    | j                             |          S r   )r  __getitem__)rD   ns     rH   r  z\TestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__getitem__j  s    y,,Q///rJ   c                 4    | j                                         S r   )r  __len__)rD   s    rH   r  zXTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__len__m  s    y((***rJ   )r  N)__name__
__module____qualname__r  r  r%  r  r   rJ   rH   DummyContainerr  f  sR               0 0 0+ + + + + + +rJ   r  rS   r   rR   r   r  r=   r   Fr  )r   Sequencer   rB   rC   )rD   r  lst_containersr   r   rG   s         rH   test_constructor_sequence_likez8TestDataFrameConstructors.test_constructor_sequence_likeb  s    	+ 	+ 	+ 	+ 	+S\ 	+ 	+ 	+ ).!S22NNAs84L4LM%.>7;;;q#hC17CCC
fhEBBBBBBrJ   c           	      F   t          dt          j        dt          d                    i          }t          dt          t          d                    i          }t	          j        ||d           t          t          t          d                    t          t          d                    g          }t          t          j        dt          d                    t          j        dt          d                    g          }t	          j        ||d           d S )Nr  rW  r(  Fr  )r   rm   r   rE  rB   rC   r  s      rH   test_constructor_stdlib_arrayz7TestDataFrameConstructors.test_constructor_stdlib_arrayv  s     CS%))!<!<=>>c4b		??344
fhEBBBBd599ootE"II?@@EKU2YY77S%PR))9T9TUVV
fhEBBBBBBrJ   c                     t          t          d                    }t          t          t          d                              }t          j        ||           d S Nr(  r   r   rE  rB   rC   r  s      rH   test_constructor_rangez0TestDataFrameConstructors.test_constructor_range  sG    599%%T%))__--
fh/////rJ   c                    t          t          d          t          d          g          }t          t          t          d                    t          t          d                    g          }t          j        ||           d S r  r  r  s      rH   test_constructor_list_of_rangesz9TestDataFrameConstructors.test_constructor_list_of_ranges  sc    E"IIuRyy122d599ootE"II?@@
fh/////rJ   c                      G d d          }t          g dgdz            }t           |                      }t          j        ||           d S )Nc                       e Zd ZdefdZdS )ATestDataFrameConstructors.test_constructor_iterable.<locals>.Iterr  c              3   :   K   t          d          D ]}g dV  	d S )Nr(  r  )r   )rD   rW  s     rH   __iter__zJTestDataFrameConstructors.test_constructor_iterable.<locals>.Iter.__iter__  s4      r $ $A#))OOOO$ $rJ   N)r  r  r  r   r  r   rJ   rH   Iterr    s/        $( $ $ $ $ $ $rJ   r  r  r(  r   )rD   r  rG   r   s       rH   test_constructor_iterablez3TestDataFrameConstructors.test_constructor_iterable  sp    	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$
 iii[2-..4466""
fh/////rJ   c                     t          t          t          d                              }t          t          t          d                              }t	          j        ||           d S r  r   r  r   rE  rB   rC   r  s      rH   test_constructor_iteratorz3TestDataFrameConstructors.test_constructor_iterator  sM    4b		??++T%))__--
fh/////rJ   c                 D   t          t          t          d                    t          t          d                    g          }t          t          t          d                    t          t          d                    g          }t	          j        ||           d S r  r  r  s      rH   "test_constructor_list_of_iteratorsz<TestDataFrameConstructors.test_constructor_list_of_iterators  so    DrOOT%))__=>>d599ootE"II?@@
fh/////rJ   c                    d t          d          D             }d t          d          D             }t          t          t          d                    t          t          d                    g          }t          ||g          }t          j        ||           d t          d          D             }t          |          }t          t          d          dd          }t          j        ||d           d S )	Nc              3      K   | ]}|V  d S r   r   rV  s     rH   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  "      %%a%%%%%%rJ   r(  c              3      K   | ]}|V  d S r   r   rV  s     rH   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  r  rJ   c              3      K   | ]}|d gV  	dS )r   Nr   rV  s     rH   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  s&      ++A3x++++++rJ   r   rT   Fr  )r   r   rE  rB   rC   )rD   gen1gen2rG   r   gens         rH   test_constructor_generatorz4TestDataFrameConstructors.test_constructor_generator  s     &%599%%%%%599%%%d599ootE"II?@@D$<((
fh///++r+++3rs3344
fhEBBBBBBrJ   c                     t          i g          }t          t          d          g           }t          j        ||           d S )NrS   r   )r   r   rB   rC   r  s      rH   test_constructor_list_of_dictsz8TestDataFrameConstructors.test_constructor_list_of_dicts  s@    B4:a=="===
fh/////rJ   c                     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          }t          j        ||           d S )N)r   rS   )r   rR   )r   rR   )r   r   r   r   rS   rR   r   )r   r   r   r   )r   ra   )r   r   rB   rC   )rD   nested1nested2r   r   rG   s         rH   3test_constructor_ordered_dict_nested_preserve_orderzMTestDataFrameConstructors.test_constructor_ordered_dict_nested_preserve_order  s    x233x233VW-/@ABB4AA//$sCj999
fh/////rJ   	dict_typec                    t          ddggddg          } |            }dg|d<   dg|d<   t          |          }t          j        ||            |            }d|d<   d|d<   t          |g          }t          j        ||           d S )NrR   rS   r   r   r   r   )rD   r  rG   r   r   s        rH   ,test_constructor_ordered_dict_preserve_orderzFTestDataFrameConstructors.test_constructor_ordered_dict_preserve_order  s     q!fXSz:::y{{CS	CS	4
fh///y{{S	S	D6""
fh/////rJ   c                 d    |            }d|d<   d|d<    |            }d|d<   d|d<   ddd}t          ddgddggddg          }t          ||g          }t          j        ||           t          ddgddgddggddg          }t          |||g          }t          j        ||           d S )NrR   r   rS   r   r  r   r   )rD   r  row_onerow_two	row_threerG   r   s          rH   0test_constructor_ordered_dict_conflicting_orderszJTestDataFrameConstructors.test_constructor_ordered_dict_conflicting_orders  s     )++)++!$$	q!fq!f-SzBBBGW-..
fh///q!fq!fq!f5SzJJJGWi899
fh/////rJ   c                     d t          d          D             }t          |          }t          g dg dg ddg dg d          }t          j        ||           d S )Nc           	      P    g | ]#}t          |g d t          |                    $S )r   r   r   ru  )r   r=   rV  s     rH   r   z[TestDataFrameConstructors.test_constructor_list_of_series_aligned_index.<locals>.<listcomp>  s1    RRRA&///A???RRRrJ   r:   r  r  )0r  r  r  r  )rD   seriesr   rG   s       rH   -test_constructor_list_of_series_aligned_indexzGTestDataFrameConstructors.test_constructor_list_of_series_aligned_index  s~    RRqRRR6""))))))))<<#OO!//
 
 

 	fh/////rJ   c                      G d dt                     }ddd} ||          g}|g}t          |          }t          |          }t          j        ||           d S )Nc                       e Zd ZdS )TTestDataFrameConstructors.test_constructor_list_of_derived_dicts.<locals>.CustomDictNr  r  r  r   rJ   rH   
CustomDictr            DrJ   r        ?r:   r9  )r3  r   rB   rC   )rD   r  r   data_customr   result_customr   s          rH   &test_constructor_list_of_derived_dictsz@TestDataFrameConstructors.test_constructor_list_of_derived_dicts  s    	 	 	 	 	 	 	 	 A!z!}}os!+..4
fm44444rJ   c                 V   t           j                            d                              d          t           j                            d                              d          d}t	          j        t          d          5  t          |           d d d            d S # 1 swxY w Y   d S )NrR   r(  r  rx  z%All arrays must be of the same lengthrh   )r>   r)  r*  r  ro   rp   r   r   rx  s     rH   test_constructor_raggedz1TestDataFrameConstructors.test_constructor_ragged  s    &&q))99"==&&q))99!<<
 
 ]:-TUUU 	 	dOOO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   BB"%B"c                     t          t          d                    }t          ddi|          }t          dg di|          }t          j        ||d           d S )Nr:   r   r   r`   )r   r   r   Fr  )r   r   r   rB   rC   )rD   r   rF   rG   s       rH   test_constructor_scalarz1TestDataFrameConstructors.test_constructor_scalar  sb    E!HHooQxs+++c999-S999
b(>>>>>>rJ   c                 j    t          |d         |j        dg          }|                                 d S )Nr  r   )r   ra   r   )rD   rI  rF   s      rH    test_constructor_Series_copy_bugz:TestDataFrameConstructors.test_constructor_Series_copy_bug  s1    {3'{/@3%PPP
					rJ   c                    i }dddd|d<   t          g dg d          |d	<   t          |          }|j        j        sJ t	          j        t          d
          5  t          ddgdddd           d d d            n# 1 swxY w Y   t          ddgt          ddgddg          d          }t          ddgddgdddg          }t          j        ||           d S )NrS   rR   r:   r  r  )r9   r:   rR   rS   )r"  quxr  r   r`   ry   zambiguous orderingrh   r   r   r9  rx  )	r   r   ra   is_monotonic_increasingro   rp   r   rB   rC   r  s       rH   &test_constructor_mixed_dict_and_Seriesz@TestDataFrameConstructors.test_constructor_mixed_dict_and_Series  sg   a22S	<<</K/K/KLLLS	4|3333 ]:-ABBB 	D 	DS#J3S-A-ABBCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D #s&#sCQT:2V2V2VWWXXC:S#J??SzRRR
fh/////s   B  BBc                     ddgdg}t          |          }t          ddgddgg          }t          j        ||           d S )NrS   rR   r:   r9   r:   r9   r   r  s       rH    test_constructor_mixed_type_rowsz:TestDataFrameConstructors.test_constructor_mixed_type_rows"  sN    A4q!fq!f-..
fh/////rJ   ztuples,lists)r   r   r  r  c                 l    t          |          }t          |          }t          j        ||           d S r   r   )rD   r  listsr   rG   s        rH   test_constructor_tuplez0TestDataFrameConstructors.test_constructor_tuple)  s7     6""U##
fh/////rJ   c                     t          dddgi          }t          dt          ddg          i          }t          j        ||           d S )Nr  rh  r  r   r   rB   rC   r  s      rH   test_constructor_list_of_tuplesz9TestDataFrameConstructors.test_constructor_list_of_tuples;  sQ    C&&!1233c666*:#;#;<==
fh/////rJ   c                 `   t          dt          d                    } |dd           |dd          g}t          ddgddgd          }t          |          }t          j        ||           t          ddgddgd          }t          |d	d
g          }t          j        ||           d S )NPandasabrS   r:   rR   r9   r9  )r   r  r   r  r   )r   rE  r   rB   rC   )rD   named_tupler  rG   r   s        rH   $test_constructor_list_of_namedtuplesz>TestDataFrameConstructors.test_constructor_list_of_namedtuples@  s     4::66+a##[[A%6%67Aq6A77886""
fh/// Aq6A77886C:666
fh/////rJ   c                     t          ddt          fdt          fg          } |dd           |dd          g}t          ddgddgd          }t          |          }t          j        ||           d S )NPointr   r   r   r:   rS   r   r   )r   r%  r   rB   rC   )rD   r  r   rG   r   s        rH   $test_constructor_list_of_dataclassesz>TestDataFrameConstructors.test_constructor_list_of_dataclassesM  s}    w#sc3Z(@AAaUU1a[[)Aq6A77884
fh/////rJ   c                    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          j        ||           d S )Nr  r   r   HLinex0x1r   r:   rS   )r   r   r#  r$  )r   r%  r   r>   rn   rB   rC   )rD   r  r"  r   rG   r   s         rH   7test_constructor_list_of_dataclasses_with_varying_typeszQTestDataFrameConstructors.test_constructor_list_of_dataclasses_with_varying_typesV  s     w#sc3Z(@AAw$tSkC:(NOOaUU1a^^,bf+QF261+bfa[QQ
 
 4
fh/////rJ   c                    t          ddt          fdt          fg          }d}t          j        t          t          j        |                    5  t           |dd          dddg           d d d            d S # 1 swxY w Y   d S )	Nr  r   r   z0asdict() should be called on dataclass instancesrh   r   rS   r  )r   r%  ro   rp   r   reescaper   )rD   r  rq   s      rH   1test_constructor_list_of_dataclasses_error_thrownzKTestDataFrameConstructors.test_constructor_list_of_dataclasses_error_thrownd  s    w#sc3Z(@AA A]9BIcNN;;; 	7 	7uuQ{{!!$4$45666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7s   A<<B B c           	          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          j        ||           d S )NrS   r9   r  r(  )FirstSecondThirdFourthr   rR   r  r  )r,  r+  r.  r-  rM   r:   r8   r     r  )r,  r+  r.  r-  YYYXXXr  r  )r  r  r  )r(  r  r8   )NNr/  )NNr  )r+  r,  r-  r.  r0  r1  r   )rD   r   rG   r   s       rH   #test_constructor_list_of_dict_orderz=TestDataFrameConstructors.test_constructor_list_of_dict_orderm  s     1qB??1Q??1QrRTUU

 "#))"&,,'''''' 	
 	
 4
fh/////rJ   c                 t   t          g dg dd          }t          |          }|j        d         dk    sJ t          j        |j        |j                   t          j                            d          	                    d          }t          |d          }t          |          }t          d|i          }t          j
        ||           t          |t          d	d
                    }t          |          }t          d|i          }t          j
        ||           d}t          j        t          |          5  t          |ddg           d d d            n# 1 swxY w Y   t          g dt                    }t          |          }|j        d         dk    sJ t          |d          }t          ||g          j        }t          ||dddg          }t          j
        ||           t          ||g          j        }t          ||dddg          }t          j
        ||           d S )Nr  r   r   ru  r   rR   r(  rz   r:   r  r`   z<Shape of passed values is \(10, 1\), indices imply \(10, 2\)rh   rS   r   rl   r<   )r   	Unnamed 0r5  r  )r   r   r   rB   rG  ra   r>   r)  r*  r  rC   r   ro   rp   r   r{   r   )rD   r   rF   rE   r(  rG   rq   s1s           rH   test_constructor_Series_namedz7TestDataFrameConstructors.test_constructor_Series_named  si   999OOO#>>>q\\z!}####
bh000 i##A&&66r::3S!!!q\\c1X&&
b(+++3eArll+++q\\aV$$
b(+++M]:S111 	) 	)a!Q((((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 2Cv...q\\z!}#### Cc"""Cy!!#2C883BTUUU
b(+++ Ry!!#__q!f===
b(+++++s   E!!E%(E%c                    t          t          d          d          }t          t          d          d          }t          j        t	          |dg          |                                           t          j        t	          |dg          |                                           t	          |dg          j        sJ t	          |dg          j        sJ d S )Nr   r   rz   rS   r   )r   r   rB   rC   r   to_framer   )rD   s0r6  s      rH   )test_constructor_Series_named_and_columnszCTestDataFrameConstructors.test_constructor_Series_named_and_columns  s     E!HH1%%%E!HH1%%% 	iQC888"++--HHH
iQC888"++--HHH aS)))////aS)))//////rJ   c                    t          g dg dd          }t          g dg d          }t          ddg          }t          ||          }t          |                    |                    }|j        d         dk    sJ t          j        ||           t          ||          }t          |                    |                    }|j        d         dk    sJ t          j        |j        |           t          j        ||           d S )	Nr  r   r   ru  r`   r   r   r   )	r   r   r   rH  r   rB   rC   rG  ra   )rD   r6  s2other_indexdf1exp1r  exp2s           rH   +test_constructor_Series_differently_indexedzETestDataFrameConstructors.test_constructor_Series_differently_indexed  s   III___3??? III___555S#J''+...K0011{1~$$$$
c4(((+...K0011{1~""""
ci555
c4(((((rJ   z#name_in1,name_in2,name_in3,name_out))r   r   r   r   )r   r   NN)r   NNN)idx1idx2NN)rC  rC  rD  N)rC  rD  idx3N)NNNNc           	         t          g d|          t          g d|          t          g d|          g}d t          |g d          D             }t          |          }t          g 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|          }	t          j        ||	           d S )Nr   rz   )r   r   r   )r   r   ec                 <    i | ]\  }}|t          g d |          S )r  r`   r   )r   rW  r   s      rH   r  zJTestDataFrameConstructors.test_constructor_index_names.<locals>.<dictcomp>  s<     
 
 
.2aAviiiq)))
 
 
rJ   )r   r   r  r   r   r   r   rG  r   rS   rR   r`   )r   r1  r   r>   rn   rB   rC   )
rD   name_in1name_in2name_in3name_outindicesr  r   exp_indrG   s
             rH   test_constructor_index_namesz6TestDataFrameConstructors.test_constructor_index_names  s    ///111///111///111


 
69'???6S6S
 
 
 6""111AAAArvrv.faArv.fbfaA. 
 
 
 
 	fh/////rJ   c                    t          |j        d d                   }t          |j        d d                   }d}t          j        t
          |d          5  t          |j        ||          }d d d            n# 1 swxY w Y   t          j        |j        t          |                     t          j        |j        t          |                     d S )Nr   r:   z#Passing a BlockManager to DataFrameF)ri   check_stacklevelr   )
rE  ra   r   rB   assert_produces_warningDeprecationWarningr   rW   rG  r   )rD   rI  ra   r   rq   r   s         rH   test_constructor_manager_resizez9TestDataFrameConstructors.test_constructor_manager_resize  s   [&rr*++{*2A2.//3'cE
 
 
 	O 	O {/ugNNNF	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	O 	flE%LL999
fneGnn=====s   A;;A?A?c                    t          |d         t          |d                   dddg          }t          j        ||j        d d ddgf                    d}t          j        t          |          5  t          |d         t          |d                   d d         d           d d d            d S # 1 swxY w Y   d S )Nr  ry   rx  r   zdoes not match index lengthrh   )r   rE  rB   rC   r  ro   rp   r   )rD   rI  rF   rq   s       rH   %test_constructor_mix_series_nonseriesz?TestDataFrameConstructors.test_constructor_mix_series_nonseries  s%   c"k#.>)?)?@@3PS*
 
 
 	b+/!!!c3Z-"@AAA+]:S111 	Q 	QK,4C8H3I3I#2#3NOOPPP	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Qs   34B44B8;B8c                     d}t          j        t          |          5  t          t          j        dgddggt          j                   d d d            d S # 1 swxY w Y   d S )Nrg   rh   rS   r   r;   )ro   rp   r   r   r>   rn   r4   r  s     rH   %test_constructor_miscast_na_int_dtypez?TestDataFrameConstructors.test_constructor_miscast_na_int_dtype  s    J]-S999 	= 	={QF+28<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=s   ,AAAc                     t          ddggddg          }t          ddgg          }ddg|_        t          j        ||           t          j        dgddg          }t          j        ||           d S )Nr  r   r   r   )r  r   )r   r   rB   rC   from_records)rD   rF   edfidfs       rH   "test_constructor_column_duplicatesz<TestDataFrameConstructors.test_constructor_column_duplicates	  s    Ax#s444!Q!!Cj
b#&&&$fXSzBBB
c3'''''rJ   c                    t          ddgddgt                    }t          ddgddgt          j        t          j                            }t          ddgddgt                    }|rt          j        ||           nt          j        ||           t          ddgddgt          j	                  }t          j        ||           t          ddgddgd          }t          j        ||           d S )Nr   rS   r  na_valueU5)
r   r{   rL  StringDtyper>   rn   r=   rB   rC   str_)rD   r   rG   expected_strrF   s        rH   (test_constructor_empty_with_string_dtypezBTestDataFrameConstructors.test_constructor_empty_with_string_dtype  s   Aq6Aq6HHH a&1a&0O0O0O
 
 
 aVaV3??? 	0!"l3333!"h///aVaV27CCC
b(+++aVaV4@@@
b(+++++rJ   c                 x    t          dg|          }t          dg|          }t          j        ||           d S )Nc1r   r<   r   )rD   nullable_string_dtyperG   rF   s       rH   ,test_constructor_empty_with_string_extensionzFTestDataFrameConstructors.test_constructor_empty_with_string_extension&  sE    dV3HIIIv-BCCC
b(+++++rJ   c           
      6   t          dg dg d          }t          j        |t          t          j        |j                                      d          |j        |j                             t          dg dg d          }t          j        |t          t          j        |j                                      d          |j        |j                             t          dd	d
gddg          }t          j        |t          t          j	        ddgddggt                    d	d
gddg                     d}t          j        t          |          5  t          dd	d
g           d d d            n# 1 swxY w Y   t          j        t          |          5  t          dddg           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          dd	d
gddgt                     d d d            d S # 1 swxY w Y   d S )N        r  r   r   r,   r   r4   r   rS   rR   r   r;   z*DataFrame constructor not properly called!rh   r   zincompatible data and dtype)r   rB   rC   r>   rP  r{  rA   ra   r   rm   r{   ro   rp   r   r   r   )rD   rF   rq   s      rH   test_constructor_single_valuez7TestDataFrameConstructors.test_constructor_single_value,  s   s)))___EEE
	"(28,,33I>>"*UU	
 	
 	
 q			???CCC
	"(28,,33G<<bh
SS	
 	
 	
 s1a&3*===
3*sCj1@@@!fc
  	
 	
 	
 ;]:S111 	# 	#cAq6"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#]:S111 	/ 	/cC:....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ ,]9C000 	6 	6cAq6C:u555	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6s6   E77E;>E;F==GG%HHHc                    t          j        t                    j        }t          j        t           j                  j        }t          j        t           j                  j        }t          dddt          d          t          ddddd          dt          j	        d	          
          }|j
        }t          t          j        d          g|st          j        |          nt          j        t           j                  gdz  z   t          j        d          t          j        d          gz   t          d          
          }t!          j        ||           t          dddddd|t          j        d|          |t          j        d|          it          j	        d	          
          }|j
        }t          t          j        d          gt          j        d          gz   |st          j        d          nt          j        t           j                  gz   t          j        d          gz   t          j        |          gz   ddd||g
          }t!          j        ||           t          dddddd|t          j        dgd	z  |          |t          j        dgd	z  |          it          j	        d	          
          }|j
        }t          t          j        d          gt          j        d          gz   |st          j        d          nt          j        t           j                  gz   t          j        d          gz   t          j        |          gz   ddd||g
          }t!          j        ||           d S )NrS   r   r"  20010101  rR   r   )r  ry   r$  r  Er(  r`   r4   ra  M8[s]M8[us]ABCDEr   r   r   r   r;   r,   r{   )r>   r<   r%  rl   r,   r   r   r!   r
   r?   r4  r   rL  rd  rn   rE  rB   r~   rm   )rD   r   intname	floatname
objectnamerF   r   rG   s           rH   test_constructor_with_datetimesz9TestDataFrameConstructors.test_constructor_with_datetimesL  s   (3--$HRZ((-	Xbj)).
 z**dAq!Q//  )B--	
 	
 	
 Xg *5$$$^RV444
  x  "(8"4"456 w--

 

 

 	vx000 SQU28Cy999!7333 )B--	
 	
 	
 Xi  !x  !" *5"""^RV444 x	""#$ x  !" S)W5
 
 
 	vx000 SQU28SEBJi@@@1#('::: )B--	
 	
 	
 Xi  !x  !" *5"""^RV444 x	""#$ x  !" S)W5
 
 
 	vx00000rJ   c                 z    t          ddd          }d |D             }t          |          }|j        dk    sJ d S )Nr  r  r(  startrK  rP   c                 6    g | ]}|                                 S r   to_pydatetimer   tss     rH   r   zNTestDataFrameConstructors.test_constructor_with_datetimes1.<locals>.<listcomp>  $    666BR%%''666rJ   rt   )r#   r   r<   )rD   ind	datetimes
datetime_ss       rH    test_constructor_with_datetimes1z:TestDataFrameConstructors.test_constructor_with_datetimes1  sP    |#rBBB66#666	I&&
8++++++rJ   c                 2   t          ddd          }d |D             }d |D             }t          |dg          }||d	<   |j        }t          t	          j        d
          t	          j        d          gdd	g          }t          j        ||           d S )Nr  r  r(  r|  c                 6    g | ]}|                                 S r   r  r  s     rH   r   zNTestDataFrameConstructors.test_constructor_with_datetimes2.<locals>.<listcomp>  r  rJ   c                 6    g | ]}|                                 S r   )r	   r  s     rH   r   zNTestDataFrameConstructors.test_constructor_with_datetimes2.<locals>.<listcomp>  s     )))r)))rJ   r  r   datesdatetime64[ns]r{   r`   )r#   r   r4  r   r>   r<   rB   r~   )rD   r  r  r  rF   r   rG   s          rH    test_constructor_with_datetimes2z:TestDataFrameConstructors.test_constructor_with_datetimes2  s    |#rBBB66#666	))S)))y;-8887X&''(););<(
 
 
 	vx00000rJ   c                    t          j        d          }|                    t          ddd                    }t	          d|idg          }|j        d         |k    sJ t          j        |j        t          ddit          	                     t	          d|ig          }|j        d         |k    sJ t          j        |j        t          dd
it          	                     d S )NrV    rS   zEnd Dater   r`   r   zdatetime64[us, US/Eastern]r;   datetime64[ns, US/Eastern])pytztimezonelocalizer
   r   iatrB   r~   r4  r   r{   )rD   rQ   r_   rF   s       rH    test_constructor_with_datetimes3z:TestDataFrameConstructors.test_constructor_with_datetimes3  s     ]<(([[$1--..
B's333vd|r!!!!
Ivz+GHPVWWW	
 	
 	
 R()**vd|r!!!!
Ivz+GHPVWWW	
 	
 	
 	
 	
rJ   c                    t          dd          }t          d|i          }|j        d         j        J t          ddd          }t          d|i          }t	          |j        d         j                  dk    sJ t          ddd          }t          d|i          }t	          |j        d         j                  dk    sJ d S )	N20130101r:   rr  rb   r   UTCrO   rV  )r#   r   r  rQ   r=   )rD   drrF   s      rH    test_constructor_with_datetimes4z:TestDataFrameConstructors.test_constructor_with_datetimes4  s     
A...}%%vd|&&&
A%888}%%26$<?##u,,,,
A,???}%%26$<?##|333333rJ   c                 6   t          dddd          }t          d|                                                    d          i          }t                      }||d<   t	          j        ||           t          d|i          }t	          j        ||           d S )	N1/1/2011r   10srV  rP   rK  rQ   r   Tdropr#   r   	to_seriesreset_indexrB   rC   )rD   rW  rG   rF   s       rH    test_constructor_with_datetimes5z:TestDataFrameConstructors.test_constructor_with_datetimes5  s     z15\JJJc1;;==#<#<$#<#G#GHII[[3
b(+++Qx  
b(+++++rJ   c                    t          dddd          }t          ddd          }t          ||d          }t          |                                                    d	          |d          }t	          j        ||           d S )
Nr  r   r  rV  r  rP   rK  r9  Tr  r  )rD   rW  i_no_tzrF   rG   s        rH    test_constructor_with_datetimes6z:TestDataFrameConstructors.test_constructor_with_datetimes6  s    z15\JJJZ???QW--..1;;==#<#<$#<#G#GgVVWW
b(+++++rJ   rE   r   c                     t          |          j        }t          t          j        d          g          }t          j        ||           d S )Nr  )r   r4  r   r>   r<   rB   r~   )rD   rE   r   rG   s       rH   %test_constructor_datetimes_with_nullsz?TestDataFrameConstructors.test_constructor_datetimes_with_nulls  sF     3&28$455677
vx00000rJ   order)Kr  r$  FrX  )r   r  hr   r(  msusr^   c                    d| d}t          j        g dg dg||          }t          |          }t          |                    d                    }|dv r^t	          j        t          d	          5  |                    |           d d d            n# 1 swxY w Y   |                    d
          }n|                    |          }t          j        ||           d S )Nzdatetime64[])z
2015-01-01z
2015-01-02z
2015-01-03)z
2017-01-01z
2017-01-02z
2017-02-03r<   r  rt   )r   r  r  r   Cannot castrh   zdatetime64[s]r;   )	r>   rm   r   rA   ro   rp   r   rB   rC   )rD   r  rX  r<   narF   rG   s          rH   !test_constructor_datetimes_non_nsz;TestDataFrameConstructors.test_constructor_datetimes_non_ns  s8    &d%%%X:::::: 
 
 
 r]]RYYx0011'''y>>> ' '&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '  77HHU33H
b(+++++s   4BBB)r  r  r   r(  r  r  r^   c                    d| d}t          j        t          j        dd          t          j        dd          gt          j        dd          t          j        dd          gg||          }t          |          }|d	v rd
}n|}t          j        d| d          }t          t          dd          t          dd          gt          dd          t          dd          gg|          }t          j        ||           d S )Nztimedelta64[r  rS   r  rR   r9   r   r  )r  r  r   r(  zm8[r;   )r>   rm   r:  r   r<   r    rB   rC   )	rD   r  rX  r<   r  rF   exp_unit	exp_dtyperG   s	            rH   !test_constructor_timedelta_non_nsz;TestDataFrameConstructors.test_constructor_timedelta_non_ns  s'    't&&&X3''3)?)?@3''3)?)?@ 
 
 
 r]]?""HHHH.8...//	1c""Ia$5$561c""Ia$5$56 
 
 
 	b(+++++rJ   c           	         t          d t          d          D                       }|j        }t          t	          j        d          gdz            }t          j        ||           t          d t          d          D                       }|j        }t          t	          j        d          gdz            }t          j        ||           t          dddgi          }|j        j        d	         t	          j        d
          k    sJ t          ddg          }|j        j        d	         t	          j        d
          k    sJ t          ddg          }|j        j        d	         t	          j        d          k    sJ t          dddgi          }|j        j        d	         t	          j        d
          k    sJ t          dddgi          }|j        j        d	         t	          j        d          k    sJ t          ddit          d                    }|j        j        d	         t	          j        d
          k    sJ t          ddit          d                    }|j        j        d	         t	          j        d          k    sJ t          g dg dt          d          d t          d          D             g dd          }|j        }t          t	          j        d
          t	          j        d          |st	          j        d          nt          j        t          j                  t	          j        d          t	          j        d          gt          d                    }t          j        ||           d S )Nc                 6    g | ]}t          j        d           S )r   )r>   r?   r   s     rH   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>B  s     777	!777rJ   r   r%  c                 ^    g | ]*}t          j        t          j        d           d          +S )r   r3   r;   )r>   rm   r?   r   s     rH   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>G  s/    PPP!1W===PPPrJ   r3   r   l        l       r   r4   rS   rR   r   r   r,   r:   r`   )rS   rR   r9   r  )g333333?gffffff@gffffff@g333333@r  c                 0    g | ]}t          d dd          S )  rS   )r
   rV  s     rH   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>j  s$    ===qhtQ**===rJ   r9   )r   rR   r  r  rI  r{   ra  r  abcde)r   r   r4  r   r>   r<   rB   r~   r  rE  rL  rd  rn   )rD   r   rF   r   rG   s        rH   %test_constructor_for_list_with_dtypesz?TestDataFrameConstructors.test_constructor_for_list_with_dtypes@  sL   77eAhh7778828E??+a/00
vx000PPuQxxPPPQQ28G,,-122
vx000 eY/011y~a BHW$5$55555 1vy~a BHW$5$55555Sz""y~a BHY$7$77777aV}%%y~a BHW$5$55555c3Z())y~a BHY$7$77777QxuQxx000y~a BHW$5$55555Szq222y~a BHY$7$77777 !\\)))&\\==E!HH===%%% 
 
 !!##)5"""^RV444)**## w--
 
 
 	vx00000rJ   c                     t          |d          }d|d<   |d         dk                                    sJ |d         dk                                    rJ d S )NTr  r   r  )r   r{  )rD   rI  cops      rH   test_constructor_frame_copyz5TestDataFrameConstructors.test_constructor_frame_copy}  se    $///CCA""$$$$$$)..0000000rJ   c                     |                                 }t          |          }|j        |j        usJ t          j        t          |                    |_        t          j        ||           d S r   )	r   r   rW   r>   r?   rV   ra   rB   rC   )rD   rI  origr  s       rH   #test_constructor_frame_shallow_copyz=TestDataFrameConstructors.test_constructor_frame_shallow_copy  sh     !!$$x{/////Ic#hh''	
k400000rJ   c                    |s|j                                         }t          |          }d|d<   |r&|j         d         dk                                    rJ n%|j         d         dk                                    sJ t          |d          }d|d<   |j         d         dk                                    rJ d S |j                                         }t          |          }|j        j        d         j        j        sJ d|d<   |j        d         dk    sJ t          |d          }|j        j        d         j        j        rJ d	|d<   |j        d         d	k    sJ d S )
Nr   Tr  rM   r   ri  r   Fi  )	r  r   r   r{  rW   r   r
  r  r  )rD   rI  rY   r  rE   rF   s         rH   test_constructor_ndarray_copyz7TestDataFrameConstructors.test_constructor_ndarray_copy  sx    # 	)$))++C3BCF" 1IaLA-22444444	!)..000003T***BCF	!)..0000000$))++C3B7>!$*7777CI74=C'''' 3U+++Bw~a(.;;;;CI74=D((((((rJ   c                     |j         }t          d|d         id          }d|j        |j        d         |j        d         df<   |d         dk                                    rJ d S )Nr  Tr  r   r   rC  )r  r   r  ra   r{  )rD   rI  r  rF   s       rH   test_constructor_series_copyz6TestDataFrameConstructors.test_constructor_series_copy  sp    $VC[)555 34rx{RXb\)3./3K1$))+++++++rJ   rF   r`   g?g@r   r/  r  )rn  rS   rR   r   c                    t          t          |j                            D ]}|j        d d |f          t	          j        t          |j                            t          |j                           }t          |          dk    rQt          j        t          d          5  |j
        d d t          j        f          d d d            d S # 1 swxY w Y   d S t          |          dk    rEt          j        |j        d d |d         f         |j
        d d t          j        f                    d S t          j        |j        d d |f         |j
        d d t          j        f                    d S )Nr   z^nan$rh   rS   )r   rV   r   r  r>   r?   r$   ro   rp   KeyErrorr  rn   rB   r~   rC   )rD   rF   rW  indexers       rH   test_constructor_with_nasz3TestDataFrameConstructors.test_constructor_with_nas  s   " s2:'' 	 	AGAAAqDMMM)C
OO,,T"*-=-=> w<<1xw777 " "qqq"&y!!" " " " " " " " " " " " " " " " " " \\Q"27111gaj=#926!!!RV);LMMMMM !"'!!!W*"5rvaaai7HIIIIIs   "CCCc                     t          dt          j        dgi          }|d         j        t          j        k    sJ |d         d         rJ d S )Nr   FrS   )r   r>   rn   r<   r   )rD   r   s     rH   &test_constructor_lists_to_object_dtypez@TestDataFrameConstructors.test_constructor_lists_to_object_dtype  sM    sRVUO,--v|rz))))S6!9rJ   c                     t          g d          }t          j        |                              dd          }t          j        |d          }t          ||j                  }t          ||||d          }t          j        ||           d S )Nr#  rC  rS   r  r;   r/  )	r   r>   rm   r@   broadcast_tor   r<   rB   rC   )rD   catrE   r   rG   s        rH   *test_constructor_ndarray_categorical_dtypezDTestDataFrameConstructors.test_constructor_ndarray_categorical_dtype  s    ///**hsmm##B**oc6**3ci000==>>
fh/////rJ   c                    t          dt          d          id          }t          t          d          dd          }t          j        |d         |           t          t          d          d          }|                                }t          t          d          dd          }t          j        |d         |           |                    d          }t          t          d          dd          }t          j        |d         |           t          t          d          d          }t          t          d          dd          }t          j        |d         |           d S )	Nr  r   categoryr;   rk   r   r   rz   )r   rE  r   rB   r~   r9  )rD   rF   rG   r(  r   s        rH   test_constructor_categoricalz6TestDataFrameConstructors.test_constructor_categorical  s?    T%[[)<<<$u++ZcBBB
r#w111 4;;j111$u++Za@@@
vay(333''$u++ZeDDD
ve}h777 tE{{*555$u++Za@@@
r!uh/////rJ   c                     t          t          d                    }t          |g          }t          |                    t                    g          }t          j        ||           d S )Nr   )r   rE  r   rA   r{   rB   rC   )rD   r  rF   rG   s       rH   -test_construct_from_1item_list_of_categoricalzGTestDataFrameConstructors.test_construct_from_1item_list_of_categorical  s[     $u++&&ucjj00122
b(+++++rJ   c                     t          t          t          d                    t          t          d                    g          }t          g dg dg          }t          j        ||           d S )Nr   abdr   )r   r   r   r   r   rE  rB   rC   r  s      rH   (test_construct_from_list_of_categoricalszBTestDataFrameConstructors.test_construct_from_list_of_categoricals	  se     DKK00+d5kk2J2JKLLooo?@@
b(+++++rJ   c                     t          t          t          d                    t          d          g          }t          g dg dg          }t          j        ||           d S )Nr   defr   r   rG  fr  r  s      rH   %test_from_nested_listlike_mixed_typesz?TestDataFrameConstructors.test_from_nested_listlike_mixed_types	  s]     DKK00$u++>??ooo?@@
b(+++++rJ   c                    t          t          t          d                    t          t          d                    g          }t          t          d          t          d          g          }t          j        ||           d S )Nr   abdefgr  r  s      rH   0test_construct_from_listlikes_mismatched_lengthszJTestDataFrameConstructors.test_construct_from_listlikes_mismatched_lengths	  sg    DKK00+d8nn2M2MNOOd5kk4>>:;;
b(+++++rJ   c                 |   g d}t          |                              d          }t          |d          }t          j        ||           g d}t          |                              d          }t          |d          }t          j        ||           t	          dd          }t          t          t          j        t          j        t          j        gg d	                    }||_        t          d
|i          }t          d
t          g dd          i|          }t          j
        ||           d S )N)rS   rR   r:   rS   r  r;   )r   r   r   r   20000101r:   rr  r   )r  
categoriesr   r`   )r   rA   rB   r~   r#   r   r>   rn   ra   r   rC   )rD   r  r  resra   rG   rF   s          rH   #test_constructor_categorical_seriesz=TestDataFrameConstructors.test_constructor_categorical_series	  s1   Umm"":..U*---
sC((($$$Umm"":..U*---
sC((( :q1117OOOTTT
 
 c8_--VOOO:FFFGuUUU
b(+++++rJ   r<   c                 X    t          dddgidg|          }|j        j        |k    sJ d S )Nr   rS   rR   r   rj  )r   r   r<   )rD   r<   r   s      rH   %test_check_dtype_empty_numeric_columnz?TestDataFrameConstructors.test_check_dtype_empty_numeric_column2	  s=     #1vUCCCv|u$$$$$$rJ   c                     t          dddgidg|          }|r"|t          j        v rt          j        |           |j        j        j        dk    sJ d S )Nr   rS   rR   r   rj  r{   )r   rB   BYTES_DTYPESrF  &mark_array_manager_not_yet_implementedr   r<   rl   )rD   requestr<   rY   r   s        rH   $test_check_dtype_empty_string_columnz>TestDataFrameConstructors.test_check_dtype_empty_string_column@	  se     #1vUCCC 	?5BO#;#;5g>>>v| H,,,,,,rJ   c                 0   t          dt                                                    j        }t          dt          i          }t	          j        ||           t          t          dt                              j        }t	          j        ||           d S )Nr   r4  )r   r{   r9  r4  rB   r~   r   r  s      rH   test_to_frame_with_falsey_namesz9TestDataFrameConstructors.test_to_frame_with_falsey_namesN	  s}    Qf---6688?1f+&&
vx0006q77788?
vx00000rJ   )Nr-   r  c                    t          dg di|pd          }t          t          d          dg|          }t          j        ||           t          dt          d          i|          }t          j        ||           d S )Nr  )r   rS   rR   r:   r9   r4   r;   r   rj  )r   r   rB   rC   )rD   r<   rG   r   s       rH   test_constructor_range_dtypez6TestDataFrameConstructors.test_constructor_range_dtypeW	  s     c???35;KGLLL 588cU%@@@
fh/// Cq?%888
fh/////rJ   c           	           G d dt                     }t          g dg dg          }t           | |g d           |g d          g                    }t          j        ||           d S )Nc                       e Zd ZdS )ETestDataFrameConstructors.test_frame_from_list_subclass.<locals>.ListNr  r   rJ   rH   Listr  f	  r   rJ   r  r  r  )rE  r   rB   rC   )rD   r  rG   r   s       rH   test_frame_from_list_subclassz7TestDataFrameConstructors.test_frame_from_list_subclassd	  s    	 	 	 	 	4 	 	 	 iii34444iii$$yyy// BCCDD
fh/////rJ   extension_arraabbcz1/1/2017z1/1/2018)r}  endrK  c                     t          t          |                    }t          |          }t          j        ||           d S r   r  )rD   r  rG   r   s       rH   %test_constructor_with_extension_arrayz?TestDataFrameConstructors.test_constructor_with_extension_arraym	  s?     VM2233=))
fh/////rJ   c           	      4   t          j                    }||f}t          |t          t	          d          t	          d                    i|g          }t          g dt          t          |g                              }t          j        ||           d S )Nr:   r`   r   r  )r	   todayr   r   r   r   rB   rC   )rD   r  tupr   rG   s        rH   *test_datetime_date_tuple_columns_from_dictzDTestDataFrameConstructors.test_datetime_date_tuple_columns_from_dict|	  s    JLLdCaa!A!A!ABSERRRYYYfcUmm0D0DEEE
fh/////rJ   c           	      ^   t          g dt          g d                    }t          g dt          g d                    }t          ||g          }t          t          j        dddt          j        t          j        gg d	g          g d
          }t          j        ||           d S )N)'   rM   r9   )femalemaleunknownr`   )rR      rR         )r  r  r   r  r	  r  rM   r9   )g      c@g     @n@g     b@r   r   )r  r  r	  r  r   r   )r   r   r   r>   rm   rn   rB   rC   )rD   r6  r=  r   rG   s        rH   /test_construct_with_two_categoricalindex_serieszITestDataFrameConstructors.test_construct_with_two_categoricalindex_series	  s    JJJ&67T7T7T&U&UVVV!!!"#J#J#JKK
 
 
 B8$$Hr1a02Q2Q2QRSS;;;
 
 
 	fh/////rJ   z7ignore:invalid value encountered in cast:RuntimeWarningc                 R   t          t          d                    }t          |d                                                              d          }t          |d                                                              d          }t          ||d          }t          t          ddd          t          dd	d          t          d	d
d          t          d
dd          t          ddd          t          ddd          t          ddd          t          ddd          t          ddd          t          ddd          g
d          }t          dgdz  t          j
        gdz  z   t          j
        gdz  dgdz  z   d|          }t          j        ||           d S )Nri  r(  r   r  gMbXg#@rU  )closedg3@g33333=@gC@g     H@g33333M@g33333SQ@gS@gfffffFV@r   T)orderedr`   )r   r   r"   value_countsheadtailr   r   r   r>   rn   rB   rC   )rD   r  ser1ser2r   ra   rG   s          rH   1test_constructor_series_nonexact_categoricalindexzKTestDataFrameConstructors.test_constructor_series_nonexact_categoricalindex	  s   
 U3ZZ  3||((**//223||((**//22D1122 W555d7333tG444tG444tG444tG444tG444tG444tG444r'222 
 
 
 $(bfX\)1tax0GHHPU
 
 
 	h/////rJ   c                    t          ddddd          t          ddddd          fg}t          j        |ddg	          }t          |          }|d
         d         |d         d         k    sJ |d         d         |d         d         k    sJ t	          |d
                   }t          |d         t                    sJ |d         |d         d         k    sJ d S )Nr  r  r   r  r  r(  )Dateru  )Forecastingru  r;   r  r  rS   )r
   r>   rm   r   r   r   r!   )rD   r  rE   rF   r(  s        rH   test_from_M8_structuredz1TestDataFrameConstructors.test_from_M8_structured	  s    4Aq!,,htQ2r.J.JKLhu%79R$STTTs^^&z!}a++++- #uQx{22223v;!A$	*****tuQx{""""""rJ   c           
           G d dt                     }t          d |ddddd          gi          }|j         j        dk    sJ d S )Nc                       e Zd ZdS )OTestDataFrameConstructors.test_from_datetime_subclass.<locals>.DatetimeSubclassNr  r   rJ   rH   DatetimeSubclassr  	  r   rJ   r  r
   i  rS   r  )r
   r   r<   )rD   r  r   s      rH   test_from_datetime_subclassz5TestDataFrameConstructors.test_from_datetime_subclass	  st    	 	 	 	 	x 	 	 	 *'7'7aAq'I'I&JKLL}"&6666666rJ   c                     t          ddd          }d}t          j        t          |          5  t	          |t          d                     d d d            d S # 1 swxY w Y   d S )	NrL   r:   rN   rO   z@Shape of passed values|Passed arrays should have the same lengthrh   r9   r`   )r#   ro   rp   r   r   r   )rD   rZ   rq   s      rH   (test_with_mismatched_index_length_raiseszBTestDataFrameConstructors.test_with_mismatched_index_length_raises	  s    q\BBBP]:S111 	+ 	+cq****	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+s   AA #A c                 X   t          ddd          }t          j        |          }t          t          j                            d                              t          |                    |d          }t          j        |d         j	        t          j	        d                    sJ d S )	Nz1/1/2000 00:00:00z1/1/2000 1:59:50r  rJ  rR   rx  ry   rt   )
r#   r>   rj  r   r)  r*  r  rV   
issubdtyper<   )rD   rK  r  rF   s       rH   !test_frame_ctor_datetime64_columnz;TestDataFrameConstructors.test_frame_ctor_datetime64_column	  s    ,.@uMMM
3)''**::3s88DD5QQ
 
 }RW]BHX,>,>???????rJ   c                    g dg dg}t          t          j                            d                              d          d |D                       }t          |j        t                    sJ t          |j        t                    rJ t          t          j                            d                              d          |          }t          |j        t                    sJ d S )N)r   r   r   r   )r   r   r   r   rR   )r9   r9   c                 6    g | ]}t          j        |          S r   r  r   s     rH   r   zYTestDataFrameConstructors.test_dataframe_constructor_infer_multiindex.<locals>.<listcomp>	  s     444128A;;444rJ   r`   r   )	r   r>   r)  r*  r  r   ra   r   r   )rD   index_listsmultis      rH   +test_dataframe_constructor_infer_multiindexzETestDataFrameConstructors.test_dataframe_constructor_infer_multiindex	  s    +++-A-A-ABI!!!$$44V<<44444
 
 
 %+z22222emZ88888I!!!$$44V<<k
 
 
 %-4444444rJ   
input_valsr  r  r  r  r  r  c                     t          d|i|          }t          d|i                              d|i          }t          j        ||           d S )Nr  r;   )r   rA   rB   rC   )rD   r*  r@  r   rG   s        rH   test_constructor_list_strz3TestDataFrameConstructors.test_constructor_list_str	  sY     C,LAAAc:.//66\7JKK
fh/////rJ   c                     t          dg di|          }t          dg dit                    }t          j        ||           d S )Nr  r  r;   )z1.0z2.0N)r   r{   rB   rC   )rD   r@  r   rG   s       rH   test_constructor_list_str_naz6TestDataFrameConstructors.test_constructor_list_str_na	  sW    C!1!1!12,GGGc#7#7#78GGG
fh/////rJ   r   FTc                 >  
 |r1|s/|t           j        t           j        z   vrt          j        |           t          j        ddg|          
t          j        ddg|          j        j        dv rt          j
        j         d           t          j        ddg|                                          }t          
d|	          d
 ddt          f
fd}|s
 |             t          j        j        j        d         d          rd }	nt&          }	t          j        |	d          5  dj        d<   dj        d<   d d d            n# 1 swxY w Y   |s |d           t          j        ddgj                  j        d d df<   j        j        d         j        k    sJ |s|s |d           |r
j        j        dk    rO
d         
j                            dd          k    sJ d         j                            dd          k    sJ nL
d         
j                            d          k    sJ d         j                            d          k    sJ d         |d         k    sJ d S |sd         dk    sJ d S d S )NrS   rR   r;   r:   r9   )SUz2 get cast, making the checks below more cumbersomer   r  c                     t          | t          j                  r| j        S t          | j        t          j                  r| j        j        S t          r   )r   r>   ndarraybaser<   _ndarrayr   r   s    rH   get_basez<TestDataFrameConstructors.test_dict_nocopy.<locals>.get_base
  sC    #rz**  xCIrx00  |((rJ   Fc_onlyc                    t          fdj        j        D                       dk    sJ | rd S t          fdj        j        D                       dk    sJ t          fdj        j        D                       dk    sJ d S )Nc              3       K   | ]}|u V  	d S r   r   )r   r   r   s     rH   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>&
  s'      66!qAv666666rJ   rS   c              3   p   K   | ]0}t          |j        t          j                  ! |          u V  1d S r   r   r<   r>   )r   r   r   r7  s     rH   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>-
  X        !!'2844HQKK1$     rJ   c              3   p   K   | ]0}t          |j        t          j                  ! |          u V  1d S r   r<  )r   r   r   r7  s     rH   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>5
  r=  rJ   )sumrW   r   )r8  r   r   r   rF   r7  s    rH   check_viewsz?TestDataFrameConstructors.test_dict_nocopy.<locals>.check_views
  s     6666rw~66666!;;;;        W^    
          W^    
      rJ   r   fciuOzincompatible dtyperh   r   rT   TrZ  .   r   r^   )F)rB   STRING_DTYPESr  rF  r  r>   rm   r<   r   ro   skiprL  r   r   rO  r   is_np_dtyper4  r  FutureWarningrS  type)rD   r  r   any_numeric_ea_dtypeany_numpy_dtyperY   r  c_origr@  warnr   r   r   rF   r7  s             @@@@@rH   test_dict_nocopyz*TestDataFrameConstructors.test_dict_nocopy	  s_     	?	?  r'7"/'III 5g>>>HaV?333HaV?3337<:%%K17VVVWWWHaV#7888QQQ//d;;;	  	  	 	 	 	 	 	 	 	 	 	 	 	 	<  	KMMM ?29>!,g66 	!DD D'4HIII 	 	BGDMBGDM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	  	K "b9991y~a AG++++ 	/ 	K 	w|s""tqw||At444444tqw||At4444444tqw||A....tqw||A....Q46!9$$$$$$$ 	 Q42::::	 	 :s   :EE"Ec                     t          g dd          }t          d|i          }t          j        |j        j        |d         j        j                  rJ d S )Nr  r  r;   r   )r   r   r>   r  r  rU   )rD   r  rF   s      rH   "test_construct_from_dict_ea_seriesz<TestDataFrameConstructors.test_construct_from_dict_ea_seriesc
  sX     YYYg...Sz""#CJ$4bgn6JKKKKKKKrJ   c                     t          t          dd          dg          }t          dg          }t          j        ||           d S )NrS   r   rz   r"  r   r  r  s      rH   'test_from_series_with_name_with_columnszATestDataFrameConstructors.test_from_series_with_name_with_columnsj
  sN    6!%0005'BBBeW---
fh/////rJ   c                     t          g dg dgg dg dg          }t          g dg dgt          j        g d                    }t          j        ||           d S )Nr  r  )r  r  r  r   r   ))r  r   )r  r   )r  r   )r   r   r  rB   rC   r  s      rH   test_nested_list_columnsz2TestDataFrameConstructors.test_nested_list_columnsp
  s    YY			"___ooo,N
 
 
 YY			"*+O+O+OPP
 
 
 	fh/////rJ   c                    t          j        dd          }|j                            t                                        dd          }t          |          }|j        dk    sJ |j        |j	        k    
                                sJ ||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!          j        ||	           d S )	Nz
2016-04-05r:   rr  rS   rC  rS   r:   )r:   r9   r   rM   r/  )rL  r]  rU   rA   r{   r@   r   r{  r4  r<   r{  IntervalIndexfrom_breaksr>   r_r   rB   rC   )
rD   pir   rF   iidata2r  data3rL  rG   s
             rH   1test_from_2d_object_array_of_periods_or_intervalszKTestDataFrameConstructors.test_from_2d_object_array_of_periods_or_intervals{
  s   _\1555xv&&..q"55t__x6!!!!	RX%**,,,,,b~~##%%%%%)),,,77''//266yF""""
bh&++-----r	  $$&&&&& dE4./1rb99::
c8,,,,,rJ   zcol_a, col_bc                     d}t          j        t          |          5  t          ||d           d d d            d S # 1 swxY w Y   d S )Nz,Per-column arrays must each be 1-dimensionalrh   r9  r  )rD   col_acol_brq   s       rH   test_error_from_2darrayz1TestDataFrameConstructors.test_error_from_2darray
  s     =]:S111 	0 	0E..///	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0s   >AAc                    t          g dg dd          }t          j        |d         j        |d         j                  rJ 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          	          }t          j        ||           d S )
Nr  r   F)ra   r   r   r   r   r   r   ra   r<   )	r   r>   r  _valuesr  rn   r{   rB   rC   r  s      rH   &test_from_dict_with_missing_copy_falsez@TestDataFrameConstructors.test_from_dict_with_missing_copy_false
  s    YYYeLLL#BsGORW_EEEEE(fbfbf-fbfbf- 
 ))
 
 
 	b(+++++rJ   c                     d}t          j        t          |          5  t          t	          j        g           ddg           d d d            d S # 1 swxY w Y   d S )Nz:Shape of passed values is \(0, 1\), indices imply \(0, 2\)rh   r   r   r  )ro   rp   r   r   r>   rm   r  s     rH   1test_construction_empty_array_multi_column_raiseszKTestDataFrameConstructors.test_construction_empty_array_multi_column_raises
  s    K]:S111 	= 	=28B<<#s<<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=s   &AAAc                     t          g ddgd          }t          dg did          }t          j        ||           d S )N)r  r  Nr   r=   rj  r;   r   r  s      rH   $test_construct_with_strings_and_nonez>TestDataFrameConstructors.test_construct_with_strings_and_none
  sV    '''#eDDDc#3#3#34EBBB
b(+++++rJ   c           	      L   t          j        t          j                  }t	          dddgi|t          dg|                    }t          j        dd          5  t	          dddgi          }d d d            n# 1 swxY w Y   t          j        ||           t	          dddgi|t          dg|          t          dd	g|          
          }t          j        dd          5  t	          dddgidd	g          }d d d            n# 1 swxY w Y   t          j        ||           t	          dddgidt          dg|                    }t          j        dd          5  t	          dddgi          }d d d            n# 1 swxY w Y   t          j        ||           t	          dddgidt          dg|                    }t          j        dd          5  t	          dddgid          }d d d            n# 1 swxY w Y   t          j        ||           d S )Nra  r   r   r;   r<   r   future.infer_stringTr   r   )r<   r   ra   r`   rS   r{   )	rL  rd  r>   rn   r   r   option_contextrB   rC   rD   r<   rG   rF   s       rH   test_frame_string_inferencez5TestDataFrameConstructors.test_frame_string_inference
  sk   ///3*UE3%u4M4M4M
 
 
 4d;; 	. 	.C#s,--B	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.
b(+++3*3%u---c
%000	
 
 
 4d;; 	@ 	@C#s,S#J???B	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@
b(+++3(O8UC55N5N5N
 
 
 4d;; 	, 	,C#q?++B	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,
b(+++3*XucU%7P7P7P
 
 
 4d;; 	> 	>C#s,H===B	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>
b(+++++sH   A;;A?A?(DDD'FFF"HHHc                    t          j        t          j                  }t	          dddgi|t          dg|                    }t          j        dd          5  t	          dt          j        ddg          i          }d d d            n# 1 swxY w Y   t          j	        ||           t	          ddgdd	gd
|          }t          j        dd          5  t	          t          j        ddgdd	gg                    }d d d            n# 1 swxY w Y   t          j	        ||           t	          ddgdd	gd|t          ddg|                    }t          j        dd          5  t	          t          j        ddgdd	gg          ddg          }d d d            n# 1 swxY w Y   t          j	        ||           d S )Nra  r   r   r;   rj  rk  Tr   r   rT   r9  r   )
rL  rd  r>   rn   r   r   rl  rm   rB   rC   rm  s       rH   .test_frame_string_inference_array_string_dtypezHTestDataFrameConstructors.test_frame_string_inference_array_string_dtype
  s   ///3*UE3%u4M4M4M
 
 
 4d;; 	8 	8C3*!5!5677B	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8 	8
b(+++#sc
;;5III4d;; 	? 	?28c3Z#s$<==>>B	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	?
b(+++*C:..3*E222
 
 

 4d;; 	S 	S28c3Z#s$<==SzRRRB	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S
b(+++++s6   &BBB(DDD-,F%%F),F)c                     t          j        dd          5  t          t          j        ddgddgg                    }d d d            n# 1 swxY w Y   |j        j        d         j        dk    sJ d S )Nrk  ThellogoodbyeHellor   rR   )rL  rl  r   r>   rm   rW   rX   r  rv   s     rH   %test_frame_string_inference_block_dimz?TestDataFrameConstructors.test_frame_string_inference_block_dim
  s    4d;; 	Q 	Q28gy%9GW;M$NOOPPB	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Q 	Qw~a %******s   (A

AAc                    t          t          d          gt                    }t          j        t
          d          5  t          |dg          }d d d            n# 1 swxY w Y   |j        j        d         t          j
        k    sJ t          d|i          }|j        j        d         t          j
        k    sJ t          t          d          gt                    }t          j        t
          d          5  t          |dg          }d d d            n# 1 swxY w 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-31r;   zDtype inferencerh   r   r   r   )r   r!   r{   rB   rS  rF  r   r4  r  r>   r   r   )rD   r   r   r  s       rH    test_inference_on_pandas_objectsz:TestDataFrameConstructors.test_inference_on_pandas_objects
  s   Y|,,-V<<<'=NOOO 	3 	3sSE222F	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3}!!$
2222C:&&}!!$
2222i--.f==='=NOOO 	3 	3sSE222F	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3}!!$
2222C:&&}!!$
222222s$    AA#&A#>DD!$D!)r  r  r  rI   r\   re   rr   rw   r   r   r   r   ro   markparametrizer   r   r   r   r   r   r   r   r   r  r  rF  skip_array_manager_invalid_testr  r  r  r!  r7  r=  rA  rM  rR  r`  r>   rm   r{   rd  r.   r/   r0   rg  rn  r  r  r  r  r  r  r  rn   r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  r  r  r#  r7  rH  rN  rS  r   r   r   r   r!   r   rZ  r`  rd  rf  rk  filterwarningsrn  rr  ry  r|  rE  r   r   r<   r%  r~  rL  BooleanDtypeFloat64Dtype
Int64Dtyperd  r  r  r  r  r  r  r  r  r  r  r  r  rd   r  r  r  r  r  r  r  r  r  r  r  r3  r   r  r  r  r  r  r  r
  r  r  r  r  r  r   r%  r)  r2  r7  r;  rB  rP  rU  rX  rZ  r_  rg  rl  ro  rz  r  r  r  r  r  r  r
   ru   r   r   r  r  r  r  r  r  r  r  r   r  r  r  r  r  r  r  r  r  rB   ALL_NUMERIC_DTYPESDATETIME64_DTYPESTIMEDELTA64_DTYPESBOOL_DTYPESr  rC  r  OBJECT_DTYPESr  r  arm_slowr  r  r   r(   r&   r'   r]  r   r  r  r  r  r  r!  r$  r)  r#   r,  r.  rL  rN  rP  rR  r\  r`  rd  rf  rh  rn  rp  ru  rw  r   rJ   rH   r6   r6   M   sv       , , ,	, 	, 	,, , ,	/ 	/ 	/1 1 11 1 1    	1 	1 	1 [Vc3Z00J J 10JB0 0 0 [##!!!!,,''((&&&&33,,	
  0 0!  0 [!!&&	
 G G G [3T::a==**Q--0"Xzz!}}jjmm4o"ooo

1zz!}}=	
 0 0 0
8 8 8. . .*) ) )) ) )9 9 9  '0 0 ('0" '0 0 ('0"# # #
   [ bMAE667BK	

 
) )
 
).% % %	' 	' 	'- - -&+ + +3 3 3* [BHeWF+++BHaeWKBHl^6222BHl^$$"uX\N	

 
% %
 
% [BHaS	***BHaS	***BHaS	***RYq\\NRYq\\NRYq\\N	

 
% %
 
%, , ,&I &I &IP> > >
" " "' ' 'F F F
; ; ;1 1 1 [X264'=>>0 0 ?>0 [Wq"&$e&EFF0 0 GF0$ [WrvtUU5\\&BCC0 0 DC0$/ / /0 0 0- - -, , ,&:/ :/ :/x) ) )5 5 59 9 9. . .. . .5 5 5
) ) )C C C0 0 00 0 00 0 0, , ,6: : :8 [--}=((-8((/:55~F		
 0 0 0(( ( (, , , [VIC 0 01X1A&&&gw(G(GH	,<888S\:::	

 

, 
,
 

,* * *(6' 6' 6'p  3 3 3  [A ?& ?& ?&B0 0 0,' ' ') ) ) [/44b		??S#J
C4#sWhbhw.?.?@44b		??S#JXRXi5H5HIu~tRZ81XttEE"IIUS("(9:M:MN	
	 	+ +	 	+ [)   )R_=y"/:\\7BM2__h7		
 1 1 1U U U/ / /2 2 20 0 0%- %- %-N, , ,"0 0 07 7 70 0 0D D DD D D [i%%&'99\**+,99\**+,))L))11$778		
 0 0 0C C C(	C 	C 	C0 0 00 0 0
	0 	0 	00 0 0
0 0 0
C C C0 0 0
0 0 0 [[4*=>>0 0 ?>0$ [[4*=>>0 0 ?>0*0 0 05 5 5  ? ? ?  0 0 0"0 0 0 [H2JBx Bx "XBx cA3Z1#s$ii#iii%;<	
 0 0 00 0 0
0 0 00 0 00 0 07 7 70 0 0($, $, $,L0 0 0) ) )( [-	
 	
 	
 0 0 00
> 
> 
>Q Q Q= = =
( 
( 
(, , ,", , ,6 6 6@Q1 Q1 Q1f, , ,1 1 1
 
 
$4 4 4, , ,, , , [BHdD$lhlnndCDDBHdD,(,..$788bmE""#dV,bmE""#bfX.VmbmE**+,VbfXfXe,,-.fXv		
 1 1 1 [W&:&:&:;;[333 , ,	  <;
,. [W&:&:&:;;[	
 	
 	
 , ,  <;,8;1 ;1 ;1z1 1 1	1 	1 	1) ) )<, , , [Iyyy))),QK@@@Iyyy))),sC6HIIII|||\\\2RVS#rv<VWWWI!!!<<<0263RV:T   I'''6Aq@QRRR	
 J J J*  0 0 00 0 0,, , ,, , ,, , ,, , ,
, , ,. [


	

	  .	 % % % [!BO3b6FF 	- 	- 	-1 1 1 [[W&A&A&ABB	0 	0 CB 	00 0 0 [KW&&KBFBFBF344M88Aq>>88Aq>>:;;KjjsSSSTT		
 0 0 00 0 00 0 0 [A 0 0 04
# 
# 
#7 7 7+ + +@ @ @5 5 5 [V3ZT**Z===>>T**ZNNNOOhAQ'''(	
	 	0 0	 	00 0 0
 [VeT]33d d 43dPL L L0 0 0	0 	0 	0- - -, [cA3ZA3*--.RXsQCj!!QC!:.RXsQCj!!828aS1#J#7#78	
 0 0 0
, , ,"= = =, , , ,  ,  ,D, , ,0+ + +3 3 3 3 3rJ   r6   c                   z    e Zd Zd Zd Zej                            ddddgdgdddgd	gg          d
             ZdS )&TestDataFrameConstructorIndexInferencec                    t          j        ddd          }t          t          j                            d                              t          |                    |          }t          j        ddd          }t          t          j                            d                              t          |                    |          }t          ||d          }t          j        ddd          }t          j
        |j        |           d S )	Nz1/1/19991/1/2012r   rJ  rR   z1/1/1980z	12/1/2001)r6  r=  )rL  r]  r   r>   r)  r*  r  rV   r   rB   rG  ra   )rD   rng1r6  rng2r=  rF   r  s          rH   Atest_frame_from_dict_of_series_overlapping_monthly_period_indexeszhTestDataFrameConstructorIndexInference.test_frame_from_dict_of_series_overlapping_monthly_period_indexes  s    z:C@@@BI))!,,<<SYYGGNNz;SAAABI))!,,<<SYYGGNNb++,,oj*3???
bh,,,,,rJ   c                    t          dd          }t          t          d          |          }t          t          d          |                    d                    }t          t          d          |                    d                    }t          t          d                    }t	          |||d          }t          t          |j                  t          |j                  z   t          |j                  z   t                    }t          j
        |j        |           t	          |||d	          }t          t          |j                  t          |j                  z   t          |j                  z   t                    }	t          j
        |j        |	           t	          |||d
          }
t          t          |j                  t          |j                  z   t          |j                  z   t                    }	t          j
        |
j        |	           t	          |||d          }t          t          |j                  t          |j                  z   t          |j                  z   t                    }t          j
        |j        |           d}t          j        t          |          5  t	          ||||d           d d d            n# 1 swxY w Y   t          j        t          |          5  t	          |||d           d d d            n# 1 swxY w Y   t          j        t          |          5  t	          |||d           d d d            d S # 1 swxY w Y   d S )NrL   r:   rr  r`   r  z
US/Centralr#  r;   )r  r$  ry   )ry   r  r$  )r$  ry   r  z0Cannot join tz-naive with tz-aware DatetimeIndexrh   )r  ry   r$  r  )r  ry   r  )r  r  ry   )r#   r   r   r|   r   r   rE  ra   r{   rB   rG  ro   rp   r   )rD   rZ   r  r  ser3ser4r?  	exp_indexr  
exp_index3rL  df4
exp_index4rq   s                 rH   /test_frame_from_dict_with_mixed_tzaware_indexeszVTestDataFrameConstructorIndexInference.test_frame_from_dict_with_mixed_tzaware_indexes  s   q111eAhhc***eAhhcooe&<&<===eAhhcool&C&CDDDeAhh dD99::tDJ///$tz2B2BB&
 
 
	 	ci333dD99::tDJ///$tz2B2BB&
 
 

 	ci444dD99::tDJ///$tz2B2BB&
 
 

 	ci444dD99::tDJ///$tz2B2BB&
 
 

 	ci444 A]9C000 	D 	DDt$TBBCCC	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D]9C000 	9 	9Dt$77888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9]9C000 	9 	9Dt$77888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9s6   K((K,/K,L..L25L2M55M9<M9zkey_val, col_vals, col_typer  4utf8r:   r9   r1   c                 2   t          j        d          }t          j                            |                    ||                    |                                 t          ||                                                    }t          |ddgi|          }t          dt          j        gdt          j        gg|          }|                    d|j        d d df                             t                               t!          j        ||           d S )Nr  )rG  rS   rR   r   )ro   importorskiprL  r   ArrowExtensionArrayrm   
dictionaryr1   getattrr   r>   rn   isetitemr  rA   r{   rB   rC   )rD   key_valcol_valscol_typepar  r   rG   s           rH   %test_dict_data_arrow_column_expansionzLTestDataFrameConstructorIndexInference.test_dict_data_arrow_column_expansionE  s      ++y,,HHXBMM"''))=RWR=R=R=T=T$U$UHVV
 
 GaV,d;;;q"&kArv;7FFF!X]111a4077??@@@
fh/////rJ   N)	r  r  r  r  r  ro   rx  ry  r  r   rJ   rH   r  r    s        	- 	- 	-*9 *9 *9X [%3*f%A	
 	0 	0 	0 	0 	0rJ   r  c                       e Zd Zd ZdS ))TestDataFrameConstructorWithDtypeCoercionc                    t           j                            d                              d          }d}t	          j        t          |          5  t          |d           d d d            n# 1 swxY w Y   t          |                                d          }|j	        dk    
                                sJ t           j        |d<   d}t	          j        t          |          5  t          |d           d d d            n# 1 swxY w Y   t	          j        t          |          5  t          |d	         d           d d d            n# 1 swxY w Y   d}t	          j        t          |          5  t          |                              d           d d d            n# 1 swxY w Y   t	          j        t          |          5  t          |d	                                       d           d d d            d S # 1 swxY w Y   d S )
NrR   r\  z)Trying to coerce float values to integersrh   rj   r;   r   rg   r   )r>   r)  r*  r  ro   rp   r   r   roundr4  r{  rn   r   r   rA   )rD   rE   rq   rF   s       rH   "test_floating_values_integer_dtypezLTestDataFrameConstructorWithDtypeCoercion.test_floating_values_integer_dtypeY  s    i##A&&66w??
 :]:S111 	' 	'c&&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' syy{{$///	T!&&((((( FD	J]-S999 	' 	'c&&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	']-S999 	' 	'3q6&&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' K]-S999 	( 	(cNN!!$'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(]-S999 	( 	(3q6NN!!$'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(sZ   A..A25A2'DD	D	+EEE7#F&&F*-F*)HH	HN)r  r  r  r  r   rJ   rH   r  r  X  s#        ( ( ( ( (rJ   r  c                      e Zd Zej                            dddg          d             Zej                            dddg          d             Zd	 Zd
 Z	d Z
d Zd Zd Zd Zd Zd Zej                            deeg          d             Zd Zd Zd Zej                            e d          ej                            dg dg dg ddg          d                         ZdS )&TestDataFrameConstructorWithDatetimeTZrQ   rV  zdateutil/US/Easternc                 "   t          ddd          }|                    |          }t          d|d|          }t          d|j                  }|d	         j        |k    sJ d
 |D             }d |D             }t          d|i          }||d<   ||d<   ||d<   |j        }t          t          j        d          t          |          t          j        d          t          |          gg d          }	t          j
        ||	           d S )N2011/1/12012/1/1W-FRIrJ  r   rx  r`   r^   ry   c                 6    g | ]}|                                 S r   r  r  s     rH   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes.<locals>.<listcomp>  s$    ;;;"2++--;;;rJ   c                 6    g | ]}|                                 S r   r  r  s     rH   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes.<locals>.<listcomp>  s$    @@@BR--//@@@rJ   r  dr_tzdatetimes_naivedatetimes_with_tzr  rW  )r  r  r  r  )r#   r|   r   r   tzinfor<   r4  r   r>   rB   r~   )
rD   rQ   r  r  rF   tz_expectedr  r  r   rG   s
             rH   *test_construction_preserves_tzaware_dtypeszQTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypesy  sC    
JW===r""U//r:::%dEL99#w}++++ <;;;;@@%@@@bz""7 /"3)**2&&&)**2&&&	 JII
 
 
 	vx00000rJ   pydtTFc                    |}t          d|          }|r|                                }d}t          j        t          |          5  t          d|gid           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          d|idgd	           d d d            n# 1 swxY w Y   t          j        t          |          5  t          |gd           d d d            n# 1 swxY w Y   t          j        t          |          5  t          t          j        |gt                    d           d d d            n# 1 swxY w Y   t          j        t          |          5  t          |dgdgd
           d d d            n# 1 swxY w Y   t          j        t          |          5  t          t          |g          gd           d d d            n# 1 swxY w Y   t          j        t          |          5  t          |ggdgd           d d d            d S # 1 swxY w Y   d S )N2019rW  sCannot convert timezone-aware data to timezone-naive dtype. Use pd.Series\(values\).dt.tz_localize\(None\) instead.rh   r   r  r;   /Cannot unbox tzaware Timestamp to tznaive dtyperb  r  rj  )r!   r  ro   rp   r   r   r   r>   rm   r{   r   )rD   tz_aware_fixturer  rQ   r  rq   msg2s          rH   'test_constructor_data_aware_dtype_naivezNTestDataFrameConstructorWithDatetimeTZ.test_constructor_data_aware_dtype_naive  sV    v"%%% 	$!!##BG 	 ]:S111 	9 	9q2$i'78888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 A]9D111 	B 	Bq"gaS0@AAAA	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B 	B ]:S111 	4 	4rd"23333	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 ]:S111 	L 	Lbht6222:JKKKK	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L 	L ]9D111 	J 	JbaS8HIIII	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J 	J ]:S111 	> 	>vrd||n,<====	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> ]:S111 	C 	Ctfqc1ABBBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	Cs~   A((A,/A,B22B69B6C77C;>C;,EEE;FF!$F!!G00G47G4H99H= H=c                    t          t          ddd          d          }t          dd          }t          ||d	          }|d
         j        s
J d            |d
         j        d
k    sJ t          j        |d
         t          |d
                     t          j        |d         t          |d                     d S )Nr  r:   rV  rO   r   rz   20130110rr  rx  r  zM8[ns, US/Easternry   )r   r#   r   r<   rl   rB   r~   r   )rD   r   r  rF   s       rH   test_from_dictz5TestDataFrameConstructorWithDatetimeTZ.test_from_dict  s     Jz1FFFUSSS
A... Sr**++#w}111111#w|s""""
r#ws(=(=(=>>>
r#wr(<(<(<=====rJ   c                 L   t          dddd          }t          |          }t          j        |d         t	          |d                     t          t	          |                    }t          j        |d         t	          |d                     t          ddd          }t          |          }t          j        |d         t	          |d                     t          t	          |                    }t          j        |d         t	          |d                     d S )	Nr  r:   rV  r   )rP   rQ   rl   rz   rO   r   )r#   r   rB   r~   r   )rD   rD  r  s      rH   test_from_indexz6TestDataFrameConstructorWithDatetimeTZ.test_from_index  s    *aLuMMMoo
s5z6$U+C+C+CDDDt%%
s5z6$U+C+C+CDDD*aLAAAoo
s1vvd';';';<<<t%%
s1vvd';';';<<<<<rJ   c                     t          dd          }t          ||          }t          d|d|           t          d|j        d|           d S )Nr  r(  rr  r`   r   r9  )r#   r   r   r  )rD   r  r(  s      rH   +test_frame_dict_constructor_datetime64_1680zRTestDataFrameConstructorWithDatetimeTZ.test_frame_dict_constructor_datetime64_1680  sf    
B///2R    	A&&b1111AH--R888888rJ   c                     t          ddd          }t          |          }t          d|d|          }|d                                                                         sJ d S )	Nr  r  r  rJ  r   rx  r`   ry   )r#   r   r   r$   r{  )rD   r  r  r   s       rH   +test_frame_datetime64_mixed_index_ctor_1681zRTestDataFrameConstructorWithDatetimeTZ.test_frame_datetime64_mixed_index_ctor_1681  sg    
JW===BZZ E++2666v{{}}  """""""rJ   c           	          t          dddd          }t          |dg          }t          dt          dd          t          d	d          t          d
d          gi          }t          j        ||           d S )Nz20130101T10:00:00r:   minrV  )r}  rP   rK  rQ   
timestampsr   rW  z20130101T10:01:00z20130101T10:02:00)r#   r   r!   rB   rC   )rD   r  r   rG   s       rH   test_frame_timeseries_columnzCTestDataFrameConstructorWithDatetimeTZ.test_frame_timeseries_column  s    %qu
 
 
 2~6661lCCC1lCCC1lCCC
 
 	fh/////rJ   c                     ddg}ddddddd	d
}t          |g d|          }t          ddt          j        t          j        fg|t          g d                    }t	          j        ||           d S )NNevadaOhio333333@333333@)rr    r  333333?@)r  rr  r  )r  r  )rr  r  i  r   )r  r  )r  r  r  )r   r>   rn   r   rB   rC   )rD   r   popr   rG   s        rH   test_nested_dict_constructionzDTestDataFrameConstructorWithDatetimeTZ.test_nested_dict_construction  s    V$ ,,c55
 
 3&8&8&8'JJJbfbf%56***++
 
 

 	fh/////rJ   c                 h   t          ddd          }|j                            t                                        dd          }t          |          }|j        dk    sJ |j        |j        k    	                                sJ ||k    	                                	                                sJ d S )Nz2016-04-05 04:30r:   r  rO   rS   rC  rT  )
r#   rU   rA   r{   r@   r   r{  r4  r<   r{  )rD   rZ   r   rF   s       rH   test_from_tzaware_object_arrayzETestDataFrameConstructorWithDatetimeTZ.test_from_tzaware_object_array  s    +Q5AAAy''//266t__x6!!!!	SY&++-----c	  $$&&&&&&&rJ   c           
         t          j        t          d          t          d          t          d          gt          dd          t          j        t          dd          gt          dd	          t          j        t          d
d	          ggt
                    j        }t          |g 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-0500rV  rW  z2013-01-03 00:00:00-0500z2013-01-01 00:00:00+0100CETz2013-01-03 00:00:00+0100r;   r#  r   )r  r  zdatetime64[ns, CET])
r>   rm   r!   rL  r   r{   r   r   r4  r{  )rD   rE   r  expected_dtypess       rH   $test_from_tzaware_mixed_object_arrayzKTestDataFrameConstructorWithDatetimeTZ.test_from_tzaware_mixed_object_array  s   h 344344344 8\JJJF8\JJJ 8UCCCF8UCCC" %
 
 
& ' 	( ___555
 
 

 
o-224444444rJ   c                     t          j        d                              d          }t          |d          }t          |                              d          }t          j        ||           d S )Nr(  )r   rR   zdatetime64[ns, UTC]r;   )r>   r?   r@   r   rA   rB   rC   )rD   
array_dim2rF   rG   s       rH   test_from_2d_ndarray_with_dtypezFTestDataFrameConstructorWithDatetimeTZ.test_from_2d_ndarray_with_dtype,  se    Yr]]**622
z)>???Z((//0EFF
b(+++++rJ   r5  c                 D    |h d          }d|j          d}t          j        t          |          5  t	          d|i           d d d            n# 1 swxY w Y   t          j        t          |          5  t          |           d d d            d S # 1 swxY w Y   d S )N>   rS   rR   r:   'z' type is unorderedrh   r   )r  ro   rp   r   r   r   )rD   r5  r  rq   s       rH   !test_construction_from_set_raiseszHTestDataFrameConstructorWithDatetimeTZ.test_construction_from_set_raises4  s)    YYY3#,333]9C000 	% 	%sFm$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% ]9C000 	 	6NNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s#   AAA8BBBc                     t          j        ddd                              dd          }t          |          }t	          d |j        j        D                       sJ d S )Nr   r8   r  r;   r9   r:   c              3   @   K   | ]}t          |t                    V  d S r   )r   r%   )r   rE   s     rH   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelike.<locals>.<genexpr>D  s,      LLc:c=11LLLLLLrJ   )r>   r?   r@   r   r{  rW   r   rD   rE   rF   s      rH   +test_construction_from_ndarray_datetimelikezRTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelike?  sc     i2%5666>>q!DDs^^LLRW^LLLLLLLLLLrJ   c                    t           j                            d                              d          }t	          j        dg          j        }d}t          j        t          |          5  t          |dg|           d d d            n# 1 swxY w Y   t	          j        g d          }t          j        t          |          5  t          |dd	g
           d d d            d S # 1 swxY w Y   d S )NrR   r  r   z'len\(arrays\) must match len\(columns\)rh   r   rj  )r   r   r  r"  r   )r>   r)  r*  r  rL  rm   r<   ro   rp   r   r   )rD   rE   r<   rq   arr2s        rH   >test_construction_from_ndarray_with_eadtype_mismatched_columnszeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_with_eadtype_mismatched_columnsF  sb   i##A&&66w??#%8]:S111 	9 	9cE7%8888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 x((]:S111 	4 	4dUEN3333	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4s$   *B

BBC''C+.C+c                 0   g dg dg}t          j        t          d          5  t          |ddh           d d d            n# 1 swxY w Y   t          j        t          d          5  t          |h d	
           d d d            d S # 1 swxY w Y   d S )Nr  r  zindex cannot be a setrh   r   r   r`   zcolumns cannot be a set>   r   r   r   r   r  rx  s     rH   "test_columns_indexes_raise_on_setszITestDataFrameConstructorWithDatetimeTZ.test_columns_indexes_raise_on_setsQ  s'   		999%]:-DEEE 	. 	.d3*----	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.]:-FGGG 	5 	5dOOO4444	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5s#   AAA*BBBz/StringDType only available in numpy 2 and above)reasonr   r   )r   r   r   r  c                    ddl m} t          j        |d          |                      |d<   t	          |          }|d         j        t          j        k    sJ |d         |d         k                                    sJ d S )Nr   )StringDTyper   r;   )numpy.dtypesr  r>   rm   r   r<   r   r{  )rD   r   r  r  s       rH    test_np_string_array_object_castzGTestDataFrameConstructorWithDatetimeTZ.test_np_string_array_object_castZ  s     	-,,,,,HT#Ykkmm<<<S	oo3x~++++CDI%**,,,,,,,rJ   N)r  r  r  ro   rx  ry  r  r  r  r  r  r  r  r  r  r  r  set	frozensetr  r  r  r  skipifr   r  r   rJ   rH   r  r  x  s       [TL2G#HII1 1 JI18 [VdE]33C C 43CB> > >= = =9 9 9# # #0 0 0"0 0 0' ' '5 5 5>, , , [US)$455  65M M M	4 	4 	45 5 5 [#T    [!//oooNN	
 - -  - - -rJ   r  c                 `    t          | t                    r| j        d         S | j        d         S )Nr   r   )r   r   r  r6  s    rH   get1r  l  s,    #v x{x~rJ   c                      e Zd Z ej        eedg          d             Zej        d             Zej	        
                    dddg          d             Zd	 Zd
 Zd Zej	        
                    dej        ej        g          d             Zej	        
                    deej        g          d             Zej	        j        d             Zej	        
                    deej        g          d             Zej	        j        ej	        
                    dej        ej        g          d                         Zd ZdS )TestFromScalarNparamsc                     |j         S r   paramrD   r  s     rH   boxzTestFromScalar.boxt  
    }rJ   c                     dt          d          it          u rdgd<   |t          j        fi S |t          u rt
          u rfdS fdS t
          u rfdS fdS )	Nra   rR   r  r   c                       | | dfi |S )NrT   r   r   kwargsextrar   s     rH   r   z,TestFromScalar.constructor.<locals>.<lambda>  s1    ??aLL, ,$),-3, , rJ   c                      d| ifi |S Nr  r   r  s     rH   r   z,TestFromScalar.constructor.<locals>.<lambda>  s#    ??C8+W+Wu+WPV+W+W rJ   c                      | | gfi |S r   r   r  s     rH   r   z,TestFromScalar.constructor.<locals>.<lambda>  s"    1v'Q'Q'Q&'Q'Q rJ   c                 "     d| | gifi |S r  r   r  s     rH   r   z,TestFromScalar.constructor.<locals>.<lambda>  s'    aV}'X'X'XQW'X'X rJ   )r   r   	functoolspartialr3  r   )rD   r   r  r   s    ` @rH   r   zTestFromScalar.constructorx  s    %((#i'' #uE);$_>>>>>D[[&((      XWWWWW&&QQQQQQXXXXXXrJ   r<   rt   r   c                      |t           j        |          }t          j        |j        |k              sJ t          j        |                                          sJ d S r  )rL  r   r>   r{  r4  r$   )rD   r<   r   r   s       rH   test_from_nat_scalarz#TestFromScalar.test_from_nat_scalar  sY    k"&...vcjE)*****vchhjj!!!!!!!rJ   c                 h    t          d          } ||d          }t          |          |k    sJ d S )NrS   r   r;   r    r  )rD   r   rF  r   s       rH   *test_from_timedelta_scalar_preserves_nanosz9TestFromScalar.test_from_timedelta_scalar_preserves_nanos  s8    q\\k"H---CyyBrJ   c                 n    |t          d          z   } ||d          }t          |          |k    sJ d S )NrS   rt   r;   r
  )rD   r   fixed_now_tsr  r   s        rH   *test_from_timestamp_scalar_preserves_nanosz9TestFromScalar.test_from_timestamp_scalar_preserves_nanos  s=    IaLL(k"H---CyyBrJ   c                     t          d          } |j                    } ||t                    }t          t	          |          t
          j                  sJ d S )NrS   r;   )r    to_timedelta64r{   r   r  r>   r:  )rD   r   rF  td64r   s        rH   #test_from_timedelta64_scalar_objectz2TestFromScalar.test_from_timedelta64_scalar_object  sU    q\\ r ""k$f---$s))R^4444444rJ   clsc                     |dd          }t           j        dt           j        di|         }|t           j        u rd}nd}d                    d|g          }t	          j        t          |	          5   |||
           d d d            n# 1 swxY w Y    |dd          }t	          j        t          |	          5   |||
           d d d            d S # 1 swxY w Y   d S )Nr   r^   r   rt   r   z:<class 'numpy.timedelta64'> is not convertible to datetime|r  rh   r;   r9   )r>   r   r:  joinro   rp   r   )rD   r   r  r  r<   msg1rq   s          rH   (test_from_scalar_datetimelike_mismatchedz7TestFromScalar.test_from_scalar_datetimelike_mismatched  sw   UD!!".(CCH"-RDDODhht,--]9C000 	- 	-Ke,,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- Q]9C000 	- 	-Ke,,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	-s$   2BBB>CC Cc                    |t           u s|t          u r?|t          u r6t          j                            dd          }|                    |           t          ddd          }d}|t          j	        u rt          j	        |d          }d} ||          }	t          |	          }
t          j        |	          }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'  rS   ru  r  rt  )rE  r   r3  ro   rx  xfailapplymarkerr
   r>   r   r  rB   	get_dtyperG  r!   asm8r<   rD   r   r  r  r  r   rx  r  r  r   itemr<   s               rH   #test_from_out_of_bounds_ns_datetimez2TestFromScalar.test_from_out_of_bounds_ns_datetime  s    
 $;;?f44;$$E %  D
 %%%$1%%	"-]63//FIV$$F||V$$DzzY&&&&y)++++	!!!!!!rJ   c                 "   t          j        t          j        t           j                  j        d          } ||          }t          |          }t          |          t           j        u sJ t          j        |          }|t          k    sJ d S r9  )
r>   r   iinfor4   maxr  rG  rB   r  r{   )rD   r   r  r   r"  r<   s         rH   test_out_of_s_bounds_datetime64z.TestFromScalar.test_out_of_s_bounds_datetime64  su    rx115s;;V$$F||DzzR]****V$$rJ   c                    |t           u s|t          u r?|t          u r6t          j                            dd          }|                    |           t          ddd          t          ddd          z
  }d}|t          j	        u rt          j	        |d          }d	} ||          }	t          |	          }
t          j        |	          }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 notTr  r  rS   i  zm8[us]r  zm8[s])rE  r   r3  ro   rx  r  r  r
   r>   r:  r  rB   r  rG  r    r   r<   r!  s               rH   $test_from_out_of_bounds_ns_timedeltaz3TestFromScalar.test_from_out_of_bounds_ns_timedelta  s   
 $;;?f44;$$I %  D
 %%%$1%%q!(<(<<	".  ^FC00FIV$$F||V$$DzzY&&&&y)++++	!!!!!!rJ   c                      |t          j        t           j                  j        d          } ||          }t	          |          }t          |          |u sJ t          j        |          }|t          k    sJ d S r9  )	r>   r%  r4   r&  r  rG  rB   r  r{   )rD   r   r  r  r   r"  r<   s          rH    test_out_of_s_bounds_timedelta64z/TestFromScalar.test_out_of_s_bounds_timedelta64  su     RXbh''+S11V$$F||DzzS    V$$rJ   c                     d}t          d|          }||t          u r|t          u r
d}t          }n	d}t          }t          j        ||          5   ||d           d d d            d S # 1 swxY w Y   d S )	NrV  r  rW  r  r  rh   rt   r;   )r!   r   r3  r   r   ro   rp   )rD   r   r  r   rQ   r  rq   errs           rH   test_tzaware_data_tznaive_dtypez.TestFromScalar.test_tzaware_data_tznaive_dtype  s    v"%%%;?i77C4KKCCCCK  C]3c*** 	, 	,K(++++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s   A,,A03A0)r  r  r  ro   fixturerE  r3  r  r   rx  ry  r  r  r  r  r>   r   r:  r  r
   r#  
skip_ubsanr'  r   r)  r+  r.  r   rJ   rH   r  r  s  s       V^D$-...  /. ^Y Y ^Y( [Wx&:;;" " <;"
    5 5 5 [UR]BN$CDD- - ED-" [UXr}$=>>" " ?>"6 [   [UY$?@@" " A@"4 [[UR]BN$CDD  ED , , , , ,rJ   r  c                       e Zd Z ej        ddg          d             Zej        d             Zd Zd Zd Z	d	 Z
d
 ZdS )TestAllowNonNanoTFr  c                     |j         S r   r  r  s     rH   as_tdzTestAllowNonNano.as_td  r  rJ   c                    t          j        d                              t           j                                      d          }|r&||d         z
  }t          j        ||j                  S t          j        ||j                  S )Nr   rt  r   r;   )	r>   r?   rA   r4   r   r)   _simple_newr<   r%   )rD   r4  r  s      rH   rE   zTestAllowNonNano.arr  st    1$$RX..33G<< 	IfQi'F!-fFLIIII ,V6<HHHHrJ   c                 H    t          |          }|j        |j        k    sJ d S r   )r   r<   )rD   rE   r   s      rH   test_index_allow_non_nanoz*TestAllowNonNano.test_index_allow_non_nano&  s(    CjjyCI%%%%%%rJ   c                 v    |rt          j        |          }nt          |          }|j        |j        k    sJ d S r   )rL  TimedeltaIndexr   r<   )rD   rE   r4  r   s       rH   test_dti_tdi_allow_non_nanoz,TestAllowNonNano.test_dti_tdi_allow_non_nano*  sD     	%#C((CC$$CyCI%%%%%%rJ   c                 H    t          |          }|j        |j        k    sJ d S r   )r   r<   )rD   rE   r  s      rH   test_series_allow_non_nanoz+TestAllowNonNano.test_series_allow_non_nano1  s(    SkkyCI%%%%%%rJ   c                 T    t          |          }|j        d         |j        k    sJ d S r   r   r4  r<   r  s      rH   test_frame_allow_non_nanoz*TestAllowNonNano.test_frame_allow_non_nano5  s,    s^^y|sy((((((rJ   c                 X    t          d|i          }|j        d         |j        k    sJ d S r   r?  r  s      rH   #test_frame_from_dict_allow_non_nanoz4TestAllowNonNano.test_frame_from_dict_allow_non_nano9  s2    3x  y|sy((((((rJ   N)r  r  r  ro   r/  r4  rE   r8  r;  r=  r@  rB  r   rJ   rH   r2  r2    s         V^D%=)))  *) ^I I ^I& & && & && & &) ) )) ) ) ) )rJ   r2  )Jrm   collectionsr   r   r   r   collections.abcr   dataclassesr   r
   r	   r   r  r'  numpyr>   r   numpy.mar   ro   r  pandas._libsr   pandas.compat.numpyr   pandas.errorsr   pandas.util._test_decoratorsutil_test_decoratorsrF  pandas.core.dtypes.commonr   pandas.core.dtypes.dtypesr   r   r   r   pandasrL  r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   pandas._testing_testingrB   pandas.arraysr%   r&   r'   r(   r)   r0  r/  r6   r  r  r  r  r  r2  r   rJ   rH   <module>rT     s               % $ $ $ $ $ & & & & & &         
     				                         . . . . . . , , , , , , ) ) ) ) ) ) ) ) ) 6 6 6 6 6 6                                                "                    766 	 	 	 }*3 }*3 }*3 }*3 }*3 }*3 }*3 }*3@VH0 H0 H0 H0 H0 H0 H0 H0V( ( ( ( ( ( ( (@q- q- q- q- q- q- q- q-h  ^, ^, ^, ^, ^, ^, ^, ^,D&) &) &) &) &) &) &) &) &) &)rJ   