
    bMh;                       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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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9 d dl:m;Z< d dl=m>Z>m?Z?m@Z@mAZAmBZB g dZCg dZD G d d          ZE G d d          ZF G d d          ZG G d d          ZHd ZI G d d          ZJ G d d          ZKdS )    N)OrderedDictabcdefaultdict
namedtuple)Iterator)make_dataclass)datedatetime	timedelta)ma)mrecords)using_string_dtype)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؄ Zej                             e            d٬ڦ          dۄ             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             ZȐd  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       d/var/www/html/test/jupyter/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_dtypeP   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   rT   )	r$   _datarA   r   rC   rD   len_mgrblocks)rE   using_array_managerdtidtarG   rH   s         rI   &test_constructor_from_2d_datetimearrayz@TestDataFrameConstructors.test_constructor_from_2d_datetimearrayX   s    q\BBBi1%%s^^QQQTs111a4y99::
b(+++" 	,rw~&&!++++	, 	,++rK   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   indexrT   )r`   value)r"   
tz_convertas_unitr   rC   rD   )rE   r`   rG   rH   s       rI   )test_constructor_dict_with_tzaware_scalarzCTestDataFrameConstructors.test_constructor_dict_with_tzaware_scalarc   s    122==>STTZZbz!---dRD\**
b(+++ bA3//00RDA37788
b(+++++rK   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 )
NrT   rS   r;   9Cannot convert non-finite values \(NA or inf\) to integermatchi8r<   r   r=   name)r?   arraynanpytestraisesr   r   r    )rE   rF   msgs      rI   -test_construct_ndarray_with_nas_and_int_dtypezGTestDataFrameConstructors.test_construct_ndarray_with_nas_and_int_dtypeq   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?   rE   rG   s     rI   %test_construct_from_list_of_datetimesz?TestDataFrameConstructors.test_construct_from_list_of_datetimes|   sG    788!u{bhx00000000rK   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rm   rO   objectr<   )	r   tz_localizer    r?   rn   tolistr=   rC   assert_series_equal)rE   naiveidxrH   results        rI   +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0rK   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arT   rS   r;   r:   recordsorientr   to_dict)rE   col_underscorerG   dref_ds        rI   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zzzzzzrK   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   rT   rS   r;   r:   r   r   r   )rE   col_with_numrG   r   r   s        rI   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zzzzzzrK   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<   rT   =Invalid type for timedelta scalar: <class 'numpy.datetime64'>ri   m8[ns])	r?   
datetime64rn   r|   r   rA   rp   rq   	TypeError)rE   frame_or_seriesnatrF   rr   s        rI   ,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   ru   r   rN   rk   r<   r;   rS   r   c                 ,    g | ]}t          |          S  r    .0xs     rI   
<listcomp>zXTestDataFrameConstructors.test_datetimelike_values_with_object_dtype.<locals>.<listcomp>   s    +++!F1II+++rK   )r"   r!   r?   r@   viewrA   r    r|   rX   arraysr=   
isinstanceravelr   r   )rE   r   r   r=   scalar_typerF   objserss           rI   *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IrK   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   rT   r{   r   columns)r    ranger   rC   rD   )rE   r   yr   rH   s        rI   )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/////rK   constructorc                      t                      S Nr   r   rK   rI   <lambda>z"TestDataFrameConstructors.<lambda>   s
    IKK rK   c                       t          d           S r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    IdOO rK   c                       t          d          S Nr   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>       IbMM rK   c                       t          g           S r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   r   rK   c                  4    t          d dD                       S )Nc              3      K   | ]}|V  d S r   r   r   _s     rI   	<genexpr>z5TestDataFrameConstructors.<lambda>.<locals>.<genexpr>   s      __Aa______rK   r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    I_____,, rK   c                  :    t          t          d                    S Nr   r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    IeAhh'' rK   c                  "    t          d           S Ndatar   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    I4((( rK   c                  "    t          d          S )Nr   r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>       I2&&& rK   c                  "    t          g           S r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   r   rK   c                  6    t          d dD                       S )Nc              3      K   | ]}|V  d S r   r   r   s     rI   r   z5TestDataFrameConstructors.<lambda>.<locals>.<genexpr>   s      ??!A??????rK   r   r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    I??r???333 rK   c                  <    t          t          d                    S )Nr   r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   s    I588,,, rK   c                     t                      } |            }t          |j                  dk    sJ t          |j                  dk    sJ t	          j        ||           d S r   )r   rW   rb   r   rC   rD   rE   r   rH   r   s       rI   test_empty_constructorz0TestDataFrameConstructors.test_empty_constructor   sg    " ;;6<  A%%%%6>""a''''
fh/////rK   c                       t          i           S r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   r   rK   c                  "    t          i           S r   r   r   rK   rI   r   z"TestDataFrameConstructors.<lambda>   r   rK   c                    t          t          d          t          d                    } |            }t          |j                  dk    sJ t          |j                  dk    sJ t          j        ||d           d S )Nr   rb   r   T)check_index_type)r   r   rW   rb   r   rC   rD   r   s       rI   #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FrK   z)emptylike,expected_index,expected_columnsrT   r   rS   c              #      K   | ]}|V  d S r   r   r   s     rI   r   z#TestDataFrameConstructors.<genexpr>  s      ooQqoooooorK   r   c                 p    t          ||          }t          |          }t          j        ||           d S )Nr   r   rC   rD   )rE   	emptylikeexpected_indexexpected_columnsrH   r   s         rI   test_emptylike_constructorz4TestDataFrameConstructors.test_emptylike_constructor   s=     >;KLLL9%%
fh/////rK   c                 L    |rdnt           j        }|d         j        |k    sJ d S )Nr>   foo)r?   object_r=   )rE   float_string_frameusing_infer_stringr=   s       rI   test_constructor_mixedz0TestDataFrameConstructors.test_constructor_mixed  s1    +;!%(.%777777rK   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 floatri   r   r   bcr<   )r:   rS   r   z5Expected a 1D array, got an array with shape \(4, 2\)testfoo2)rp   rq   
ValueErrorr   r?   r-   onesr~   )rE   rr   rG   s      rI   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)rE   orig_dfnew_dfs      rI   test_constructor_dtype_copyz5TestDataFrameConstructors.test_constructor_dtype_copy$  s\    cUSEC5IIJJ7%d;;;vvq!S((((((rK   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 )NrT   rS   r   r<   c   r   r   )r   r=   ilocvaluesrC   assert_cow_warning)rE   using_copy_on_writewarn_copy_on_writerG   should_be_views        rI   ,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 )
NrT   rS   r;   r:   r5   r<   r   a   r  )r   r  r=   r  rX   r   flagsc_contiguous)rE   rZ   r  r  rG   r  df2s          rI   +test_constructor_dtype_nocast_view_2d_arrayzETestDataFrameConstructors.test_constructor_dtype_nocast_view_2d_array9  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8rK   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?   rn   r   r=   storageshares_memoryto_numpyr  r|   rE   r   rF   rG   s       rI   "test_1d_object_array_does_not_copyz<TestDataFrameConstructors.test_1d_object_array_does_not_copyI  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///////rK   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       rI   "test_2d_object_array_does_not_copyz<TestDataFrameConstructors.test_2d_object_array_does_not_copy[  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///////rK   c                     t          ddgd dggt                    }|j        d         J |j        d         dk    sJ d S )NrT   2r   r<   rT   r   rU   )r   r|   locrw   s     rI    test_constructor_dtype_list_dataz:TestDataFrameConstructors.test_constructor_dtype_list_datam  sP    C4+.f===vd|###vd|s""""""rK   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\)ri   ArT   rS   zshape=\(2, 2, 1\))r   r?   emptyrp   rq   r   )rE   r   r   s      rI   "test_constructor_list_of_2d_raisesz<TestDataFrameConstructors.test_constructor_list_of_2d_raisesr  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   rz   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 )rS   
   r<   )r?   rn   randomdefault_rngr   r   s     rI   r   zKTestDataFrameConstructors.test_constructor_mixed_dtypes.<locals>.<listcomp>  sR       KL..q1188<<AFFF  rK   r   c                     g | ]J}t          j        t           j                            d                               dd          |          KS )rS   r)  )sizer<   )r?   rn   r*  r+  integersr,  s     rI   r   zKTestDataFrameConstructors.test_constructor_mixed_dtypes.<locals>.<listcomp>  sZ        ..q11::2B:GGqQQQ  rK   )MIXED_INT_DTYPESMIXED_FLOAT_DTYPESzipr=   updatedictr   dtypes)rE   typadr5  r   r   r   rG   s           rI   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((((	) 	)rK   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 )NrS   r)  r   r   )
r?   r*  r+  rB   	complex64
complex128r   r=   r   r   rE   r   r   rG   s       rI   test_constructor_complex_dtypesz9TestDataFrameConstructors.test_constructor_complex_dtypes  s    I!!!$$++B//66r|DDI!!!$$++B//66r}EEQQ''((w"$*$$$$w"$*$$$$$$rK   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%   rC   rD   r  r?   ro   isnan)rE   string_dtyperG   r   rH   s        rI   $test_constructor_dtype_str_na_valuesz>TestDataFrameConstructors.test_constructor_dtype_str_na_values  s    c4[)>>>cE4=122
fh///wt}$$$c26]+<@@@x&&&&&&&rK   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 )NFra   r%  rz   r   r   )
to_recordslistr=   namesrb   r   rC   assert_index_equalr   r   r?   r@   rW   reindexrD   )	rE   float_framerecrb   rG   r  rngdf3rH   s	            rI   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,,,,,rK   c                     t          t          j        dt                    t          j        dt                    d          }|j        j        t          j        k    sJ d S )Nr)  r<   rU   )r   r?   r   boolzerosr  r=   bool_rw   s     rI   test_constructor_boolz/TestDataFrameConstructors.test_constructor_bool  sR    272T222rx$7O7O7OPPQQy"(******rK   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     rI   r   zMTestDataFrameConstructors.test_constructor_overflow_int64.<locals>.<listcomp>  s    ;;;519;;;rK   rT   r)  r<   r   ))l   Y2<   )l   FJLW]L*    )l   M:M^ -   )l   8Ma i  )l   r*R3_PvN rY  )uidu8)scorer]  r\  )r?   rn   r   r1   r   r=   rQ  rW   )rE   r  r   data_scoresr=   r   	df_crawlss          rI   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2rK   r  rV  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|   rE   r  rc   r   s       rI   test_constructor_int_overflowz7TestDataFrameConstructors.test_constructor_int_overflow  sP     q	6""ay&((((ay|u$$$$$$rK   c                     |d         }t          |          }|d         j        |j        k    sJ |d         d         |k    sJ d S r   r   r=   rd  s       rI   test_constructor_numpy_uintsz6TestDataFrameConstructors.test_constructor_numpy_uints  sR     q	6""ay%+----ay|u$$$$$$rK   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   rS   c                     g | ]}d |d	S )r   r   r   rW  s     rI   r   zJTestDataFrameConstructors.test_constructor_ordereddict.<locals>.<listcomp>  s     ,,,!IIII,,,rK   r   )
rF  r   r?   r*  r+  shuffler   r   r2  r   )rE   nitemsnumsrH   rG   s        rI   test_constructor_ordereddictz6TestDataFrameConstructors.test_constructor_ordereddict  s    E&MM""
	a  ((...,,t,,,{3x1##@#@AABB4
++++++++rK   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rQ   ra   r   r   r      r   r   rb   rm   )r   r   col4r   r   r   <Mixing dicts with non-Series may lead to ambiguous ordering.ri   r   r   r:  r   r   rz   )r    r?   r@   r-   r$   r   rW   rC   r   renameconcatenatero   r  rb   r%   allrp   rq   r   )rE   datetime_seriesdatetime_series_shortframeexprr   s         rI   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   rT   rS   1r  r  r  )r   rC   rH  rb   r   rE   r  s     rI   test_constructor_dict_length1z7TestDataFrameConstructors.test_constructor_dict_length18  sC    3aa 0 0122
ek5#s+<+<=====rK   c                 `    t          g d          }t          i |          }|j        |u sJ d S )Nr   rT   rS   ra   )r   r   rb   rE   r   r  s      rI    test_constructor_dict_with_indexz:TestDataFrameConstructors.test_constructor_dict_with_index=  s>    III"C((({c!!!!!!rK   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   rb   r   rW   _seriesr  s      rI   ,test_constructor_dict_with_index_and_columnszFTestDataFrameConstructors.test_constructor_dict_with_index_and_columnsC  sn    III"C555{c!!!!}####5=!!Q&&&&&&rK   c                     t          g g dddg          }t          j        |j        t	          d          d           d S )Nry  r   rz   r   r   Texact)r   rC   rH  rb   r   r  s     rI   $test_constructor_dict_of_empty_listsz>TestDataFrameConstructors.test_constructor_dict_of_empty_listsK  sF    ,,sCjAAA
ek:a==EEEEEErK   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   ra   )r   
_get_valuerC   rD   )rE   
frame_noneframe_none_lists      rI   test_constructor_dict_with_nonez9TestDataFrameConstructors.test_constructor_dict_with_noneP  s     T{1#666
#S4&M!===$$Q,,444))!S11999
j/:::::rK   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 indexri   r   gffffff?r   rp   rq   r   r   rE   rr   s     rI   test_constructor_dict_errorsz6TestDataFrameConstructors.test_constructor_dict_errorsY  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   )rE   r  r   rH   s       rI   %test_constructor_invalid_items_unusedz?TestDataFrameConstructors.test_constructor_invalid_items_unusedc  sG     C=3%888cU+++
fh/////rK   rc   ro   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 )NrT   r;   r   r   r:   rS   r   c                 L    i | ] }|         t          |                    !S ra   r   r   r   colsr   r  s     rI   
<dictcomp>zKTestDataFrameConstructors.test_constructor_dict_nan_key.<locals>.<dictcomp>p  0    HHH!Qq	555HHHrK   axisrN   r5   r<   r   ra   )r   r   sort_valuesr?   r@   rA   rC   rD   rE   rc   r   r   rH   r  r   r  s        @@@rI   test_constructor_dict_nan_keyz7TestDataFrameConstructors.test_constructor_dict_nan_keyj  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/////rK   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   rS   r   r;   rT   r:   r   c                 L    i | ] }|         t          |                    !S r  r   r  s     rI   r  zQTestDataFrameConstructors.test_constructor_dict_nan_tuple_key.<locals>.<dictcomp>  r  rK   r  rN   r5   r<   r   ra   )	r   r   r   r  r?   r@   rA   rC   rD   r  s        @@@rI   #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/////rK   c                 &   t          t          j        dt          j                  t	          dd                    }|d d         }||d}t          |          }t          |t          d	          
          }t          j        ||           d S )Nr)  r<   rr  rs  ra   r   r   r   r   bar   r   )	r    r?   r@   r-   r$   r   rF  rC   rD   )rE   r}  r~  r   r  rH   s         rI   %test_constructor_dict_order_insertionz?TestDataFrameConstructors.test_constructor_dict_order_insertion  s     Ib
+++:lTV3W3W3W
 
 
 !0 3 (o>>q!!!!T$ZZ888
eX.....rK   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 )NrT   rS   r;   r   )r   r?   ro   rC   rD   rE   r   rH   s      rI   )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/////rK   c                    g d}t          j        |          }t          ||          }t          |          j                                                                        sJ g d}t          j        |          }t          ||          }t          |          j                                                                        sJ d S )N)rS   r;   r;   r;   r  r   )r  r  r  )r   from_tuplesr   r%   r  r   r|  )rE   tuplesmirG   s       rI   test_constructor_multi_indexz6TestDataFrameConstructors.test_constructor_multi_index  s     *))#F++R,,,Bxx$$&&**,,,,,)))#F++R,,,Bxx$$&&**,,,,,,,rK   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 )	NrT   rS   r   rb   r5   r<   r   )levelscodesr   )r   r   r   rC   rD   rE   rG   rH   s      rI   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(+++++rK   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.ri   r   rT   ra   rx  r   r   r:  r   ry  z:Shape of passed values is \(4, 3\), indices imply \(3, 3\)r9   )r:   r;   r   r#  baz
2000-01-01r;   rs  r  r:   r   rN   z:Shape of passed values is \(1, 3\), indices imply \(1, 4\)r:   rb   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\)rS   r  :Shape of passed values is \(2, 3\), indices imply \(2, 2\)r   rz   z,2 columns passed, passed data had 10 columnsr)     )r   twosr   r  FT)rp   rq   r   r   r?   r!  r@   rA   r$   rn   r   rQ  r*  r+  )rE   rr   rF   s      rI   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     rI   r   zKTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<genexpr>  *      !C!CA1dQh-!C!C!C!C!C!CrK   r)  c              3   $   K   | ]}|d |z  fV  dS )g      4@Nr   r   s     rI   r   zKTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<genexpr>  r  rK   rt  c                 X    i | ]'\  }}|t          |                                          (S r   )r4  items)r   colvals      rI   r  zLTestDataFrameConstructors.test_constructor_subclass_dict.<locals>.<dictcomp>  s.    OOOhc33SYY[[ 1 1OOOrK   )r   r   r  rC   rD   )rE   dict_subclassr   rG   refdfs        rI   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(((((rK   c                    i }t           j        |j        d |j        d         df<   |                                D ]E\  }}t          t                    }|                    |                                           |||<   Ft          |          }|
                    |j                  }t          j        ||           d S )Nr)  rz   ra   )r?   ro   r  rb   r  r   r4  r3  r   r   rI  rC   rD   )rE   rJ  r   kvdctr  rH   s           rI   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4rK   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?   rn   r   rC   assert_numpy_array_equalr  )rE   rH   rG   s      rI   test_constructor_dict_blockz5TestDataFrameConstructors.test_constructor_dict_block  sl    8111233%se3%se<<(((
 
 
 	#BIx88888rK   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 )NrT   rS   r  r  r  3)r  r  r  ry  r<   r;   rz   r   )r   r   rW   r=   r?   r-   r   )rE   r   	test_datar  s       rI   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:------rK   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   rW  s     rI   r   zITestDataFrameConstructors.test_constructor_dict_cast2.<locals>.<listcomp>2  s    %E%E%Eakakk%E%E%ErK      rS   ry  zcould not convert stringri   r<   )r4  r2  r   r?   r*  r+  standard_normalrp   rq   r   r   r   )rE   r  s     rI   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?   ro   r   r   r   )rE   r   rG   s      rI   !test_constructor_dict_dont_upcastz;TestDataFrameConstructors.test_constructor_dict_dont_upcast8  sF    j"&99:q\\"V*V,e4444444rK   c                     t          ddgddggddgddg          }t          |d         d         t                    sJ d S )NrT   rS   r   r   r   )r   r   r&  )rE   dms     rI   "test_constructor_dict_dont_upcast2z<TestDataFrameConstructors.test_constructor_dict_dont_upcast2=  sO    Ac
+Aq6Aq6JJJ"Q%(C(((((((rK   c                     ddd}t          |          }t          d |                                D                       }t          j        ||d           d S )NrT   rS   r;   r  r:  c                 4    i | ]\  }}|t          |          S r   )rF  )r   r  r  s      rI   r  zMTestDataFrameConstructors.test_constructor_dict_of_tuples.<locals>.<dictcomp>F  s$    BBBTQaaBBBrK   Fcheck_dtype)r   r  rC   rD   rE   r   r   rH   s       rI   test_constructor_dict_of_tuplesz9TestDataFrameConstructors.test_constructor_dict_of_tuplesA  s\    Y//4BBTZZ\\BBBCC
fhEBBBBBBrK   c                     t          d          t          dd          d}t          |          }t          g dg dd          }t          j        ||           d S )Nr;   rN   r:  r  )r;   r:   r   r   r   rC   rD   r   s       rI   test_constructor_dict_of_rangesz9TestDataFrameConstructors.test_constructor_dict_of_rangesI  s^    1XXE!QKK004999999==>>
fh/////rK   c                     t          t          d                    t          t          d                    d}t          |          }t          g dg dd          }t	          j        ||           d S )Nr;   r:  r  rS   rT   r   )iterr   reversedr   rC   rD   r   s       rI   "test_constructor_dict_of_iteratorsz<TestDataFrameConstructors.test_constructor_dict_of_iteratorsQ  sj    %((^^(588*<*<==4999999==>>
fh/////rK   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   rW  s     rI   r   zPTestDataFrameConstructors.test_constructor_dict_of_generators.<locals>.<genexpr>[  s"      ,,Aa,,,,,,rK   r;   c              3      K   | ]}|V  d S r   r   rW  s     rI   r   zPTestDataFrameConstructors.test_constructor_dict_of_generators.<locals>.<genexpr>[  s"      3R3R!A3R3R3R3R3R3RrK   r:  r  r  )r   r  r   rC   rD   r   s       rI   #test_constructor_dict_of_generatorsz=TestDataFrameConstructors.test_constructor_dict_of_generatorsY  s    ,,%((,,,3R3Rxa?Q?Q3R3R3RSS4999999==>>
fh/////rK   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   rT   rS   )rX  rX  rX  jr  rX  rN   r   r:         	   ))r   r   r  )r   r   c                     g | ]
}|d          S rT   r   r   s     rI   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>i      aQqTrK   c                     g | ]
}|d          S r   r   r   s     rI   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>i  s    =O=O=Oqad=O=O=OrK   ra   g     ^@o   )r   r  r  r  zc                     g | ]
}|d          S r  r   r   s     rI   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>t  r  rK   c                     g | ]
}|d          S r  r   r   s     rI   r   zNTestDataFrameConstructors.test_constructor_dict_multiindex.<locals>.<listcomp>t  s    ,>,>,>aQqT,>,>,>rK   F)tupleize_colsr  )sortedr  r   r   r  Trb   rC   rD   insertr   rI  r   )rE   r   _drG   rH   s        rI    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(+++++rK   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 rS   r   )r   rX  sr   s      rI   r  ziTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_data.<locals>.<dictcomp>  s0    SSS41aAAA.SSSrK   )	enumerate)r   dates_as_strs   `rI   create_datazUTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.create_data  s&    SSSS9\;R;RSSSSrK   c                 ,    t          j        | d          S )Nz%Y-%m-%d)r
   strptimer   s    rI   r   zRTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<lambda>  s    h.?:.N.N rK   r   r   rT   rS   r;   rS   r:   rN   c                 ,    g | ]}t          |          S r   )r"   )r   r`   s     rI   r   zTTestDataFrameConstructors.test_constructor_dict_datetime64_index.<locals>.<listcomp>  s    888R9R==888rK   ra   )r?   r   r"   r   rC   rD   )
rE   r,  data_datetime64data_datetimedata_TimestamprH   result_datetime64result_datetimeresult_Timestampr+  s
            @rI   &test_constructor_dict_datetime64_indexz@TestDataFrameConstructors.test_constructor_dict_datetime64_index{  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9rK   z
klass,namec                 ,    t          j        | d          S Nr  )r?   timedelta64r/  s    rI   r   z"TestDataFrameConstructors.<lambda>  s    r~a-- rK   r;  c                 "    t          |           S )N)days)r   r/  s    rI   r   z"TestDataFrameConstructors.<lambda>  s    ya((( rK   pytimedeltac                 "    t          | d          S r:  r!   r/  s    rI   r   z"TestDataFrameConstructors.<lambda>  s    yC(( rK   zTimedelta[ns]c                 H    t          | d                              d          S )Nr  r)  )r!   re   r/  s    rI   r   z"TestDataFrameConstructors.<lambda>  s    yC((0055 rK   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rT   rS   r;   r:   c                 8    i | ]\  }}| |          d |z  iS r(  r   )r   rX  r)  klasss      rI   r  zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<dictcomp>  s0    FFFAEE!HHa!e$FFFrK   r   r0  rS   r:   rN   c                 .    g | ]}t          |d           S )r  r@  )r   tds     rI   r   zUTestDataFrameConstructors.test_constructor_dict_timedelta64_index.<locals>.<listcomp>  s"    :::"9R%%:::rK   ra   )r*  r   rC   rD   )rE   rE  rm   	td_as_intr   rH   r   s    `     rI   '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/////rK   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  r:  r   r   )pdPeriodIndexr   r=   rB   r|   r~   r=  s       rI   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}''''''rK   c                     |\  }}t          d|idg          }|d         j        |k    sJ t          dgdg|          }t          j        ||           d S )Nr   r   ra   r  )r   r=   rC   rD   )rE   ea_scalar_and_dtype	ea_scalarea_dtyperG   rH   s         rI   &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(+++++rK   z
data,dtypez2020-01r   )leftrightr5   rV  z
2011-01-01
US/EasternrR   r)  )unitrR   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   rT   r   r   r  rS   r<   r:  )r   r=   rM  rn   rC   rD   )rE   r   r=   rG   rF   rH   s         rI   &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(+++++rK   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   rs  rS   r)  r   r   ra   )rM  period_ranger   r?   r*  r+  r  r   rb   r  
setdefaultrC   rD   r!  )rE   rL  rG   r   r  rowr   s          rI   "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)))))rK   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$  rT   rS   r  r;   )r;   r   r  rh   ri   r   rb   r=   r  r  rz   r  r  Tr  ra   r   )r   r;   r   )r;   r   )r   r   rW   rb   r   r?   r   rp   rq   r   r5   r  r=   r   rC   rH  r   r   )rE   r!  matr  rr   s        rI   _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   rT   r   r   rS   )re  r?   r   r   rW   r  s     rI   test_constructor_ndarrayz2TestDataFrameConstructors.test_constructor_ndarray-  sM    %%bg...5%.AFFF5zzQrK   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   rT   rS   r$  rT   rS   r  r   r%  )re  r   
masked_allr   r   r?   r|  asarray)rE   rd  r  s      rI   test_constructor_maskedarrayz6TestDataFrameConstructors.test_constructor_maskedarray3  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2rK   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$  rT   rS   r  r;   rc  r  ri  r   r%  ru   z8datetime64\[ns\] values and dtype=int64 is not supportedri   rk   TF)r   rj  r&  r   rW   rb   r   r?   r|  rk  r-   r  r=   r   r%   rp   rq   r   r5   rB   rP  r|   )rE   rd  r  mat2rr   s        rI   %test_constructor_maskedarray_nonfloatz?TestDataFrameConstructors.test_constructor_maskedarray_nonfloatC  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)rS   rS   r<   r   rz   rT   rS   r  ry  rc  r   )
r   rj  r   harden_maskr   r?   ro   rC   rD   r   )rE   mat_hardr   rH   s       rI   %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/////rK   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)priceru  r<   F)maskzPass \{name: data\[name\]ri   )r?   r   rn   rQ  r   r   	mrecarrayrp   rq   r   r   r&  rE   r   s     rI   %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 )Nra   r  )r   r  shaperw   s     rI   test_constructor_corner_shapez7TestDataFrameConstructors.test_constructor_corner_shape  s-    R   y&((((((rK   z%data, index, columns, dtype, expectedr)  r   r   r-   r   c                 N    t          ||||          }|j        j        |k    sJ d S r   )r   r  r=   )rE   r   rb   r   r=   rH   rG   s          rI   test_constructor_dtypez0TestDataFrameConstructors.test_constructor_dtype  s2     tUGU33y(******rK   zdata,input_dtype,expected_dtype)TFNbooleanr   r   NFloat64)rT   rS   NInt64r   stringc                 b    t          d|i|          }|d         j         |            k    sJ d S )Nr   r<   rg  )rE   r   input_dtypeexpected_dtyperG   s        rI   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0rK   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 )NrT   Tr   y              @r   )r&  rP  r   complexr|   r)  ra   r&  rP  r   r  r|   )	r   r?   r@   r=   r5   rR  r-   r<  r   )rE   r   r   rG   s       rI   !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/////////rK   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 )	NrS   r)  Tr:  r   zmust pass an indexri   F)r   r?   r*  r+  r  r  rC   rD   rp   rq   r   )rE   rG   r  s      rI   #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   rC   rD   r?   r5   r  r=   )rE   rJ  rG   	df_casteds       rI   test_constructor_DataFramez4TestDataFrameConstructors.test_constructor_DataFrame  sU    {##
b+...k:::	%111111rK   c                     t          t                      d          }t          g d          }t          j        ||           d S )Nr|   r<   r   )rE   actualrH   s      rI    test_constructor_empty_dataframez:TestDataFrameConstructors.test_constructor_empty_dataframe  sC    9;;h777Rx000
fh/////rK   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 )NrS   r)  r   r  r   rz   r)  rS   r   )r   rS   ra   )r)  r   r   r#  r<   rT   z(could not convert string to float: 'foo'ri   rb   r   r=   ry  )r?   r*  r+  r  r   r@   r  ndimr|  rn   r|   rA   rp   rq   r   r   r  rC   rD   r   r&  r-   rW   r   r=   )rE   rJ  rF   r  rd  rr   s         rI   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 )Nra   r   rz   r   c               3      K   dE d {V  d S r   r   r   rK   rI   	empty_genzHTestDataFrameConstructors.test_constructor_empty_list.<locals>.empty_gen  s      MMMMMMMMMrK   r   )rE   rG   rH   r  s       rI   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(+++++rK   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 )NrT   r   rS   r   numr>   r  r   r)  c                 6    g | ]}t          j        |          S r   r?   rn   r   s     rI   r   zLTestDataFrameConstructors.test_constructor_list_of_lists.<locals>.<listcomp>(  s     //////rK   )	r   r   r=   r?   r   r@   r   rC   rD   )rE   r   rG   rH   r   r   s         rI   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/////rK   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 )NrT   rS   r<   r   )rS   rT   )r    r?   rn   r|   r   rM  rC   rD   r|  r  r  )rE   serrF   rG   rH   s        rI   .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6rK   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cdefrC  r:   r   rN   r  r   )rF  r   r   from_arraysrC   rD   )rE   r   r   r  rH   s        rI   2test_constructor_list_like_data_nested_list_columnzLTestDataFrameConstructors.test_constructor_list_like_data_nested_list_column:  s    v,,V-LLL,,,7HHH#F++lllLLL92FFF
fh/////rK   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 4ri   rC  r  r   rF  rp   rq   r   r   rE   r   rr   s      rI   0test_constructor_wrong_length_nested_list_columnzJTestDataFrameConstructors.test_constructor_wrong_length_nested_list_columnD  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 lengthri   rC  r  r   r  r  s      rI   2test_constructor_unequal_length_nested_list_columnzLTestDataFrameConstructors.test_constructor_unequal_length_nested_list_columnL  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"   rC   rD   r   s       rI   &test_constructor_one_element_data_listz@TestDataFrameConstructors.test_constructor_one_element_data_listU  sY     4yyy3%@@@cIl$;$;#<q#@ABB
fh/////rK   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)rE   lsts     rI   __init__zYTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__init__i  s    			rK   c                 6    | j                             |          S r   )r  __getitem__)rE   ns     rI   r  z\TestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__getitem__l  s    y,,Q///rK   c                 4    | j                                         S r   )r  __len__)rE   s    rI   r  zXTestDataFrameConstructors.test_constructor_sequence_like.<locals>.DummyContainer.__len__o  s    y((***rK   )r  N)__name__
__module____qualname__r  r  r&  r  r   rK   rI   DummyContainerr  h  sR               0 0 0+ + + + + + +rK   r  rT   r   rS   r   r  r>   r   Fr  )r   Sequencer   rC   rD   )rE   r  lst_containersr   r   rH   s         rI   test_constructor_sequence_likez8TestDataFrameConstructors.test_constructor_sequence_liked  s    	+ 	+ 	+ 	+ 	+S\ 	+ 	+ 	+ ).!S22NNAs84L4LM%.>7;;;q#hC17CCC
fhEBBBBBBrK   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   rX  r)  Fr  )r   rn   r   rF  rC   rD   r  s      rI   test_constructor_stdlib_arrayz7TestDataFrameConstructors.test_constructor_stdlib_arrayx  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BrK   c                     t          t          d                    }t          t          t          d                              }t          j        ||           d S Nr)  r   r   rF  rC   rD   r  s      rI   test_constructor_rangez0TestDataFrameConstructors.test_constructor_range  sG    599%%T%))__--
fh/////rK   c                    t          t          d          t          d          g          }t          t          t          d                    t          t          d                    g          }t          j        ||           d S r  r  r  s      rI   test_constructor_list_of_rangesz9TestDataFrameConstructors.test_constructor_list_of_ranges  sc    E"IIuRyy122d599ootE"II?@@
fh/////rK   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   )rE   rX  s     rI   __iter__zJTestDataFrameConstructors.test_constructor_iterable.<locals>.Iter.__iter__  s4      r $ $A#))OOOO$ $rK   N)r  r  r  r   r  r   rK   rI   Iterr    s/        $( $ $ $ $ $ $rK   r  r  r)  r   )rE   r  rH   r   s       rI   test_constructor_iterablez3TestDataFrameConstructors.test_constructor_iterable  sp    	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$
 iii[2-..4466""
fh/////rK   c                     t          t          t          d                              }t          t          t          d                              }t	          j        ||           d S r  r   r  r   rF  rC   rD   r  s      rI   test_constructor_iteratorz3TestDataFrameConstructors.test_constructor_iterator  sM    4b		??++T%))__--
fh/////rK   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      rI   "test_constructor_list_of_iteratorsz<TestDataFrameConstructors.test_constructor_list_of_iterators  so    DrOOT%))__=>>d599ootE"II?@@
fh/////rK   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   rW  s     rI   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  "      %%a%%%%%%rK   r)  c              3      K   | ]}|V  d S r   r   rW  s     rI   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  r  rK   c              3      K   | ]}|d gV  	dS )r   Nr   rW  s     rI   r   zGTestDataFrameConstructors.test_constructor_generator.<locals>.<genexpr>  s&      ++A3x++++++rK   r   rU   Fr  )r   r   rF  rC   rD   )rE   gen1gen2rH   r   gens         rI   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BrK   c                     t          i g          }t          t          d          g           }t          j        ||           d S )NrT   r   )r   r   rC   rD   r  s      rI   test_constructor_list_of_dictsz8TestDataFrameConstructors.test_constructor_list_of_dicts  s@    B4:a=="===
fh/////rK   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   rT   )r   rS   )r   rS   )r   r   r   r   rT   rS   r   )r   r   r   r   )r   rb   )r   r   rC   rD   )rE   nested1nested2r   r   rH   s         rI   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/////rK   	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 )NrS   rT   r   r   r   r   )rE   r  rH   r   r   s        rI   ,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/////rK   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 )NrS   r   rT   r   r  r   r   )rE   r  row_onerow_two	row_threerH   r   s          rI   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/////rK   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   rv  )r    r>   rW  s     rI   r   z[TestDataFrameConstructors.test_constructor_list_of_series_aligned_index.<locals>.<listcomp>  s1    RRRA&///A???RRRrK   r;   r  r  )0r  r  r  r  )rE   seriesr   rH   s       rI   -test_constructor_list_of_series_aligned_indexzGTestDataFrameConstructors.test_constructor_list_of_series_aligned_index  s~    RRqRRR6""))))))))<<#OO!//
 
 

 	fh/////rK   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   rK   rI   
CustomDictr            DrK   r         ?r;   r:  )r4  r   rC   rD   )rE   r   r   data_customr   result_customr   s          rI   &test_constructor_list_of_derived_dictsz@TestDataFrameConstructors.test_constructor_list_of_derived_dicts  s    	 	 	 	 	 	 	 	 A!z!}}os!+..4
fm44444rK   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 )NrS   r)  r  ry  z%All arrays must be of the same lengthri   )r?   r*  r+  r  rp   rq   r   r   ry  s     rI   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   ra   )r   r   r   Fr  )r   r   r   rC   rD   )rE   r   rG   rH   s       rI   test_constructor_scalarz1TestDataFrameConstructors.test_constructor_scalar	  sb    E!HHooQxs+++c999-S999
b(>>>>>>rK   c                 j    t          |d         |j        dg          }|                                 d S )Nr   r   )r   rb   r   )rE   rJ  rG   s      rI    test_constructor_Series_copy_bugz:TestDataFrameConstructors.test_constructor_Series_copy_bug  s1    {3'{/@3%PPP
					rK   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 )NrT   rS   r;   r  r   )r:   r;   rS   rT   )r#  quxr  r   ra   rz   zambiguous orderingri   r   r   r:  ry  )	r    r   rb   is_monotonic_increasingrp   rq   r   rC   rD   r   s       rI   &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 )NrT   rS   r;   r:   r;   r:   r   r   s       rI    test_constructor_mixed_type_rowsz:TestDataFrameConstructors.test_constructor_mixed_type_rows$  sN    A4q!fq!f-..
fh/////rK   ztuples,lists)r   r   r  r  c                 l    t          |          }t          |          }t          j        ||           d S r   r   )rE   r  listsr   rH   s        rI   test_constructor_tuplez0TestDataFrameConstructors.test_constructor_tuple+  s7     6""U##
fh/////rK   c                     t          dddgi          }t          dt          ddg          i          }t          j        ||           d S )Nr   ri  r  r   r    rC   rD   r  s      rI   test_constructor_list_of_tuplesz9TestDataFrameConstructors.test_constructor_list_of_tuples=  sQ    C&&!1233c666*:#;#;<==
fh/////rK   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abrT   r;   rS   r:   r:  )r   r  r   r  r   )r   rF  r   rC   rD   )rE   named_tupler  rH   r   s        rI   $test_constructor_list_of_namedtuplesz>TestDataFrameConstructors.test_constructor_list_of_namedtuplesB  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/////rK   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;   rT   r   r   )r   r&  r   rC   rD   )rE   r  r   rH   r   s        rI   $test_constructor_list_of_dataclassesz>TestDataFrameConstructors.test_constructor_list_of_dataclassesO  s}    w#sc3Z(@AAaUU1a[[)Aq6A77884
fh/////rK   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;   rT   )r   r   r$  r%  )r   r&  r   r?   ro   rC   rD   )rE   r  r#  r   rH   r   s         rI   7test_constructor_list_of_dataclasses_with_varying_typeszQTestDataFrameConstructors.test_constructor_list_of_dataclasses_with_varying_typesX  s     w#sc3Z(@AAw$tSkC:(NOOaUU1a^^,bf+QF261+bfa[QQ
 
 4
fh/////rK   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 instancesri   r   rT   r   )r   r&  rp   rq   r   reescaper   )rE   r  rr   s      rI   1test_constructor_list_of_dataclasses_error_thrownzKTestDataFrameConstructors.test_constructor_list_of_dataclasses_error_thrownf  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 )NrT   r:   r  r)  )FirstSecondThirdFourthr   rS   r  r  )r-  r,  r/  r.  rN   r;   r9   r     r  )r-  r,  r/  r.  YYYXXXr  r  )r  r  r  )r)  r  r9   )NNr0  )NNr  )r,  r-  r.  r/  r1  r2  r   )rE   r   rH   r   s       rI   #test_constructor_list_of_dict_orderz=TestDataFrameConstructors.test_constructor_list_of_dict_ordero  s     1qB??1Q??1QrRTUU

 "#))"&,,'''''' 	
 	
 4
fh/////rK   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   rv  r   rS   r)  r{   r;   r  ra   z<Shape of passed values is \(10, 1\), indices imply \(10, 2\)ri   rT   r   rm   r=   )r   	Unnamed 0r6  r  )r    r   r   rC   rH  rb   r?   r*  r+  r  rD   r   rp   rq   r   r|   r!  )rE   r   rG   rF   r)  rH   rr   s1s           rI   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   r{   rT   r   )r    r   rC   rD   r   to_framer!  )rE   s0r7  s      rI   )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)))//////rK   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   rv  ra   r   r   r   )	r    r   r   rI  r   rC   rD   rH  rb   )rE   r7  s2other_indexdf1exp1r  exp2s           rI   +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(((((rK   z#name_in1,name_in2,name_in3,name_out))r   r   r   r   )r   r   NN)r   NNN)idx1idx2NN)rD  rD  rE  N)rD  rE  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   r{   )r   r   r   )r   r   ec                 <    i | ]\  }}|t          g d |          S )r  ra   r   )r   rX  r   s      rI   r  zJTestDataFrameConstructors.test_constructor_index_names.<locals>.<dictcomp>  s<     
 
 
.2aAviiiq)))
 
 
rK   )r   r   r  r   r   r   r   rH  r   rT   rS   ra   )r   r2  r   r?   ro   rC   rD   )
rE   name_in1name_in2name_in3name_outindicesr  r   exp_indrH   s
             rI   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/////rK   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)rj   check_stacklevelr   )
rF  rb   r   rC   assert_produces_warningDeprecationWarningr   rX   rH  r   )rE   rJ  rb   r   rr   r   s         rI   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   rz   ry  r   zdoes not match index lengthri   )r   rF  rC   rD   r  rp   rq   r   )rE   rJ  rG   rr   s       rI   %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 )Nrh   ri   rT   r   r<   )rp   rq   r   r   r?   ro   r5   r  s     rI   %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   rC   rD   from_records)rE   rG   edfidfs       rI   "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'''''rK   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   rT   r  na_valueU5)
r   r|   rM  StringDtyper?   ro   r>   rC   rD   str_)rE   r   rH   expected_strrG   s        rI   (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(+++++rK   c                 x    t          dg|          }t          dg|          }t          j        ||           d S )Nc1r   r=   r   )rE   nullable_string_dtyperH   rG   s       rI   ,test_constructor_empty_with_string_extensionzFTestDataFrameConstructors.test_constructor_empty_with_string_extension(  sE    dV3HIIIv-BCCC
b(+++++rK   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   r5   r   rT   rS   r   r<   z*DataFrame constructor not properly called!ri   r   zincompatible data and dtype)r   rC   rD   r?   rQ  r|  rB   rb   r   rn   r|   rp   rq   r   r   r   )rE   rG   rr   s      rI   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 )NrT   r   r#  20010101  rS   r   )r   rz   r%  r  Er)  ra   r5   rb  M8[s]M8[us]ABCDEr   r   r   r   r<   r-   r|   )r?   r=   r&  rm   r-   r   r   r"   r
   r@   r5  r    rM  re  ro   rF  rC   r   rn   )rE   r   intname	floatname
objectnamerG   r   rH   s           rI   test_constructor_with_datetimesz9TestDataFrameConstructors.test_constructor_with_datetimesN  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0rK   c                 z    t          ddd          }d |D             }t          |          }|j        dk    sJ d S )Nr  r  r)  startrL  rQ   c                 6    g | ]}|                                 S r   to_pydatetimer   tss     rI   r   zNTestDataFrameConstructors.test_constructor_with_datetimes1.<locals>.<listcomp>  $    666BR%%''666rK   ru   )r$   r    r=   )rE   ind	datetimes
datetime_ss       rI    test_constructor_with_datetimes1z:TestDataFrameConstructors.test_constructor_with_datetimes1  sP    |#rBBB66#666	I&&
8++++++rK   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     rI   r   zNTestDataFrameConstructors.test_constructor_with_datetimes2.<locals>.<listcomp>  r  rK   c                 6    g | ]}|                                 S r   )r	   r  s     rI   r   zNTestDataFrameConstructors.test_constructor_with_datetimes2.<locals>.<listcomp>  s     )))r)))rK   r  r   datesdatetime64[ns]r|   ra   )r$   r   r5  r    r?   r=   rC   r   )rE   r  r  r  rG   r   rH   s          rI    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0rK   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 )NrW    rT   zEnd Dater   ra   r  zdatetime64[us, US/Eastern]r<   datetime64[ns, US/Eastern])pytztimezonelocalizer
   r   iatrC   r   r5  r    r|   )rE   rR   r`   rG   s       rI    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	
 	
 	
 	
 	
rK   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;   rs  rc   r  UTCrP   rW  )r$   r   r  rR   r>   )rE   drrG   s      rI    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3rK   zTODO(infer_string)reasonc                 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   10srW  rQ   rL  rR   r   Tdropr$   r   	to_seriesreset_indexrC   rD   )rE   rX  rH   rG   s       rI    test_constructor_with_datetimes5z:TestDataFrameConstructors.test_constructor_with_datetimes5  s     z15\JJJc1;;==#<#<$#<#G#GHII[[3
b(+++Qx  
b(+++++rK   c                    t          dddd          }t          ddd          }t          ||d          }t          |                                                    d	          |d          }t	          j        ||           d S )
Nr  r   r  rW  r  rQ   rL  r:  Tr  r  )rE   rX  i_no_tzrG   rH   s        rI    test_constructor_with_datetimes6z:TestDataFrameConstructors.test_constructor_with_datetimes6  s    z15\JJJZ???QW--..1;;==#<#<$#<#G#GgVVWW
b(+++++rK   rF   r   c                     t          |          j        }t          t          j        d          g          }t          j        ||           d S )Nr  )r   r5  r    r?   r=   rC   r   )rE   rF   r   rH   s       rI   %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0rK   order)Kr   r%  FrY  )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  ru   )r   r  r  r   Cannot castri   zdatetime64[s]r<   )	r?   rn   r   rB   rp   rq   r   rC   rD   )rE   r  rY  r=   narG   rH   s          rI   !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  rT   r  rS   r:   r   r  )r  r  r   r)  zm8[r<   )r?   rn   r;  r   r=   r!   rC   rD   )	rE   r  rY  r=   r  rG   exp_unit	exp_dtyperH   s	            rI   !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(+++++rK   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     rI   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>E  s     777	!777rK   r   r&  c                 ^    g | ]*}t          j        t          j        d           d          +S )r   r4   r<   )r?   rn   r@   r   s     rI   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>J  s/    PPP!1W===PPPrK   r4   r   l        l       r   r5   rT   rS   r   r   r-   r;   ra   )rT   rS   r:   r  )g333333?gffffff@gffffff@g333333@r  c                 0    g | ]}t          d dd          S )  rT   )r
   rW  s     rI   r   zSTestDataFrameConstructors.test_constructor_for_list_with_dtypes.<locals>.<listcomp>m  s$    ===qhtQ**===rK   r:   )r   rS   r  r  rJ  r|   rb  r  abcde)r   r   r5  r    r?   r=   rC   r   r  rF  rM  re  ro   )rE   r   rG   r   rH   s        rI   %test_constructor_for_list_with_dtypesz?TestDataFrameConstructors.test_constructor_for_list_with_dtypesC  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0rK   c                     t          |d          }d|d<   |d         dk                                    sJ |d         dk                                    rJ d S )NTr  r   r   )r   r|  )rE   rJ  cops      rI   test_constructor_frame_copyz5TestDataFrameConstructors.test_constructor_frame_copy  se    $///CCA""$$$$$$)..0000000rK   c                     |                                 }t          |          }|j        |j        usJ t          j        t          |                    |_        t          j        ||           d S r   )	r   r   rX   r?   r@   rW   rb   rC   rD   )rE   rJ  origr  s       rI   #test_constructor_frame_shallow_copyz=TestDataFrameConstructors.test_constructor_frame_shallow_copy  sh     !!$$x{/////Ic#hh''	
k400000rK   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  rN   r   rj  r  Fi  )	r  r   r   r|  rX   r   r  r  r  )rE   rJ  rZ   r  rF   rG   s         rI   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((((((rK   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   rD  )r  r   r  rb   r|  )rE   rJ  r  rG   s       rI   test_constructor_series_copyz6TestDataFrameConstructors.test_constructor_series_copy  sp    $VC[)555 34rx{RXb\)3./3K1$))+++++++rK   rG   ra   g?g@r   r0  r  )ro  rT   rS   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$ri   rT   )r   rW   r   r  r?   r@   r%   rp   rq   KeyErrorr  ro   rC   r   rD   )rE   rG   rX  indexers       rI   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   FrT   )r   r?   ro   r=   r   )rE   r   s     rI   &test_constructor_lists_to_object_dtypez@TestDataFrameConstructors.test_constructor_lists_to_object_dtype  sM    sRVUO,--v|rz))))S6!9rK   c                     t          g d          }t          j        |                              dd          }t          j        |d          }t          ||j                  }t          ||||d          }t          j        ||           d S )Nr$  rD  rT   r  r<   r0  )	r   r?   rn   rA   broadcast_tor   r=   rC   rD   )rE   catrF   r   rH   s        rI   *test_constructor_ndarray_categorical_dtypezDTestDataFrameConstructors.test_constructor_ndarray_categorical_dtype  s    ///**hsmm##B**oc6**3ci000==>>
fh/////rK   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<   rl   r   r   r{   )r   rF  r    rC   r   r:  )rE   rG   rH   r)  r   s        rI   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/////rK   c                     t          t          d                    }t          |g          }t          |                    t                    g          }t          j        ||           d S )Nr   )r   rF  r   rB   r|   rC   rD   )rE   r  rG   rH   s       rI   -test_construct_from_1item_list_of_categoricalzGTestDataFrameConstructors.test_construct_from_1item_list_of_categorical 	  s[     $u++&&ucjj00122
b(+++++rK   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   rF  rC   rD   r  s      rI   (test_construct_from_list_of_categoricalszBTestDataFrameConstructors.test_construct_from_list_of_categoricals		  se     DKK00+d5kk2J2JKLLooo?@@
b(+++++rK   c                     t          t          t          d                    t          d          g          }t          g dg dg          }t          j        ||           d S )Nr   defr   r   rH  fr  r  s      rI   %test_from_nested_listlike_mixed_typesz?TestDataFrameConstructors.test_from_nested_listlike_mixed_types	  s]     DKK00$u++>??ooo?@@
b(+++++rK   c                    t          t          t          d                    t          t          d                    g          }t          t          d          t          d          g          }t          j        ||           d S )Nr   abdefgr  r  s      rI   0test_construct_from_listlikes_mismatched_lengthszJTestDataFrameConstructors.test_construct_from_listlikes_mismatched_lengths	  sg    DKK00+d8nn2M2MNOOd5kk4>>:;;
b(+++++rK   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)rT   rS   r;   rT   r  r<   )r   r   r   r   20000101r;   rs  r   )r  
categoriesr   ra   )r    rB   rC   r   r$   r   r?   ro   rb   r   rD   )rE   r  r  resrb   rH   rG   s          rI   #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(+++++rK   r=   c                 X    t          dddgidg|          }|j        j        |k    sJ d S )Nr   rT   rS   r   rk  )r   r   r=   )rE   r=   r   s      rI   %test_check_dtype_empty_numeric_columnz?TestDataFrameConstructors.test_check_dtype_empty_numeric_column5	  s=     #1vUCCCv|u$$$$$$rK   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   rT   rS   r   rk  r|   )r   rC   BYTES_DTYPESrG  &mark_array_manager_not_yet_implementedr   r=   rm   )rE   requestr=   rZ   r   s        rI   $test_check_dtype_empty_string_columnz>TestDataFrameConstructors.test_check_dtype_empty_string_columnC	  se     #1vUCCC 	?5BO#;#;5g>>>v| H,,,,,,rK   c                 0   t          dt                                                    j        }t          dt          i          }t	          j        ||           t          t          dt                              j        }t	          j        ||           d S )Nr   r5  )r    r|   r:  r5  rC   r   r   r  s      rI   test_to_frame_with_falsey_namesz9TestDataFrameConstructors.test_to_frame_with_falsey_namesQ	  s}    Qf---6688?1f+&&
vx0006q77788?
vx00000rK   )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   rT   rS   r;   r:   r5   r<   r   rk  )r   r   rC   rD   )rE   r=   rH   r   s       rI   test_constructor_range_dtypez6TestDataFrameConstructors.test_constructor_range_dtypeZ	  s     c???35;KGLLL 588cU%@@@
fh/// Cq?%888
fh/////rK   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   rK   rI   Listr  i	  r  rK   r  r  r  )rF  r   rC   rD   )rE   r  rH   r   s       rI   test_frame_from_list_subclassz7TestDataFrameConstructors.test_frame_from_list_subclassg	  s    	 	 	 	 	4 	 	 	 iii34444iii$$yyy// BCCDD
fh/////rK   extension_arraabbcz1/1/2017z1/1/2018)r~  endrL  c                     t          t          |                    }t          |          }t          j        ||           d S r   r  )rE   r  rH   r   s       rI   %test_constructor_with_extension_arrayz?TestDataFrameConstructors.test_constructor_with_extension_arrayp	  s?     VM2233=))
fh/////rK   c           	      4   t          j                    }||f}t          |t          t	          d          t	          d                    i|g          }t          g dt          t          |g                              }t          j        ||           d S )Nr;   ra   r   r  )r	   todayr   r    r   r   rC   rD   )rE   r  tupr   rH   s        rI   *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/////rK   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)'   rN   r:   )femalemaleunknownra   )rS      rS         )r  r
  r   r  r  r	  rN   r:   )g      c@g     @n@g     b@r   r   )r
  r  r  r  r   r   )r    r   r   r?   rn   ro   rC   rD   )rE   r7  r>  r   rH   s        rI   /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/////rK   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 )Nrj  r)  r   r  gMbXg#@rV  )closedg3@g33333=@gC@g     H@g33333M@g33333SQ@gS@gfffffFV@r   T)orderedra   )r    r   r#   value_countsheadtailr   r   r   r?   ro   rC   rD   )rE   r  ser1ser2r   rb   rH   s          rI   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/////rK   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)  )Daterv  )Forecastingrv  r<   r  r  rT   )r
   r?   rn   r   r    r   r"   )rE   r  rF   rG   r)  s        rI   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{""""""rK   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   rK   rI   DatetimeSubclassr   	  r  rK   r!  r
   i  rT   r  )r
   r   r=   )rE   r!  r   s      rI   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6rK   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 )	NrM   r;   rO   rP   z@Shape of passed values|Passed arrays should have the same lengthri   r:   ra   )r$   rp   rq   r   r   r   )rE   r[   rr   s      rI   (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  rK  rS   ry  rz   ru   )
r$   r?   rk  r   r*  r+  r  rW   
issubdtyper=   )rE   rL  r  rG   s       rI   !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,>,>???????rK   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   rS   )r:   r:   c                 6    g | ]}t          j        |          S r   r  r   s     rI   r   zYTestDataFrameConstructors.test_dataframe_constructor_infer_multiindex.<locals>.<listcomp>	  s     444128A;;444rK   ra   r   )	r   r?   r*  r+  r  r   rb   r   r   )rE   index_listsmultis      rI   +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4rK   
input_valsr  r  r  r  r  r  c                     t          d|i|          }t          d|i                              d|i          }t          j        ||           d S )Nr   r<   )r   rB   rC   rD   )rE   r-  rA  r   rH   s        rI   test_constructor_list_strz3TestDataFrameConstructors.test_constructor_list_str	  sY     C,LAAAc:.//66\7JKK
fh/////rK   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|   rC   rD   )rE   rA  r   rH   s       rI   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/////rK   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 )NrT   rS   r<   r;   r:   )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    rI   get_basez<TestDataFrameConstructors.test_dict_nocopy.<locals>.get_base
  sC    #rz**  xCIrx00  |((rK   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     rI   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>)
  s'      66!qAv666666rK   rT   c              3   p   K   | ]0}t          |j        t          j                  ! |          u V  1d S r   r   r=   r?   )r   r   r   r:  s     rI   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>0
  X        !!'2844HQKK1$     rK   c              3   p   K   | ]0}t          |j        t          j                  ! |          u V  1d S r   r?  )r   r   r   r:  s     rI   r   zRTestDataFrameConstructors.test_dict_nocopy.<locals>.check_views.<locals>.<genexpr>8
  r@  rK   )sumrX   r   )r;  r   r   r   rG   r:  s    rI   check_viewsz?TestDataFrameConstructors.test_dict_nocopy.<locals>.check_views"
  s     6666rw~66666!;;;;        W^    
          W^    
      rK   r   fciuOzincompatible dtyperi   r  rU   Tr[  .   r   r_   )F)rC   STRING_DTYPESr  rG  r  r?   rn   r=   r   rp   skiprM  r   r   rP  r   is_np_dtyper5  r  FutureWarningrT  type)rE   r  r   any_numeric_ea_dtypeany_numpy_dtyperZ   r  c_origrC  warnr   r   r   rG   r:  s             @@@@@rI   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  rV   )rE   r  rG   s      rI   "test_construct_from_dict_ea_seriesz<TestDataFrameConstructors.test_construct_from_dict_ea_seriesf
  sX     YYYg...Sz""#CJ$4bgn6JKKKKKKKrK   c                     t          t          dd          dg          }t          dg          }t          j        ||           d S )NrT   r   r{   r#  r   r  r  s      rI   'test_from_series_with_name_with_columnszATestDataFrameConstructors.test_from_series_with_name_with_columnsm
  sN    6!%0005'BBBeW---
fh/////rK   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  rC   rD   r  s      rI   test_nested_list_columnsz2TestDataFrameConstructors.test_nested_list_columnss
  s    YY			"___ooo,N
 
 
 YY			"*+O+O+OPP
 
 
 	fh/////rK   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;   rs  rT   rD  rT   r;   )r;   r:   r   rN   r0  )rM  r^  rV   rB   r|   rA   r   r|  r5  r=   r|  IntervalIndexfrom_breaksr?   r_r!  rC   rD   )
rE   pir   rG   iidata2r  data3rM  rH   s
             rI   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,,,,,rK   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-dimensionalri   r:  r  )rE   col_acol_brr   s       rI   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)rb   r   r   r   r   r   r  rb   r=   )	r   r?   r  _valuesr  ro   r|   rC   rD   r  s      rI   &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(+++++rK   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\)ri   r   r   r  )rp   rq   r   r   r?   rn   r  s     rI   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>   rk  r<   r   r  s      rI   $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(+++++rK   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 )Nrb  r   r   r<   r=   r   future.infer_stringTr   r   )r=   r   rb   ra   rT   r|   )	rM  re  r?   ro   r   r   option_contextrC   rD   rE   r=   rH   rG   s       rI   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 )Nrb  r   r   r<   rm  rn  Tr   r   rU   r:  r   )
rM  re  r?   ro   r   r   ro  rn   rC   rD   rp  s       rI   .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 )Nrn  ThellogoodbyeHellor   rS   )rM  ro  r   r?   rn   rX   rY   r  rw   s     rI   %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 inferenceri   r   r   r   )r   r"   r|   rC   rT  rI  r   r5  r  r?   r   r    )rE   r   r   r  s       rI    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  rJ   r]   rf   rs   rx   r   r   r   r   rp   markparametrizer   r   r   r   r   r   r   r   r   r  r  rG  skip_array_manager_invalid_testr  r  r  r"  r8  r>  rB  rN  rS  ra  r?   rn   r|   re  r/   r0   r1   rh  ro  r  r  r  r  r  r  r  ro   r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r$  r8  rI  rO  rT  r   r   r   r   r"   r   r[  ra  re  rg  rl  filterwarningsro  rs  rz  r}  rF  r   r   r=   r&  r  rM  BooleanDtypeFloat64Dtype
Int64Dtypere  r  r  r  r  r  r  r  r  r  r  r  r  re   r  r  r  r  r  r  r  r  r  r  r  r4  r   r  r  r  r  r  r	  r  r  r  r  r  r  r!  r&  r*  r3  r8  r<  rC  rQ  rV  rY  r[  r`  rh  rm  rp  r{  r  r  r  r  xfailr   r  r  r
   rv   r   r   r  r  r  r  r  r  r  r  r   r  r  r  r  r  r  r  r  r  rC   ALL_NUMERIC_DTYPESDATETIME64_DTYPESTIMEDELTA64_DTYPESBOOL_DTYPESr  rF  r  OBJECT_DTYPESr  r  arm_slowr  r  r   r)   r'   r(   r^  r  r  r  r  r  r"  r$  r'  r,  r$   r/  r1  rO  rQ  rS  rU  r_  rc  rg  ri  rk  rq  rs  rx  rz  r   rK   rI   r7   r7   O   s       , , ,	, 	, 	,, , ,	/ 	/ 	/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 [))++4HII, , JI,, , , [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 3rK   r7   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   rK  rS   z1/1/1980z	12/1/2001)r7  r>  )rM  r^  r    r?   r*  r+  r  rW   r   rC   rH  rb   )rE   rng1r7  rng2r>  rG   r  s          rI   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,,,,,rK   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 )NrM   r;   rs  ra   r  z
US/Centralr$  r<   )r   r%  rz   )rz   r   r%  )r%  rz   r   z0Cannot join tz-naive with tz-aware DatetimeIndexri   )r   rz   r%  r  )r   rz   r  )r  r   rz   )r$   r    r   r}   r   r   rF  rb   r|   rC   rH  rp   rq   r   )rE   r[   r  r  ser3ser4r@  	exp_indexr  
exp_index3rM  df4
exp_index4rr   s                 rI   /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;   r:   r2   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  )rJ  rT   rS   r   )rp   importorskiprM  r   ArrowExtensionArrayrn   
dictionaryr2   getattrr   r?   ro   isetitemr  rB   r|   rC   rD   )rE   key_valcol_valscol_typepar  r   rH   s           rI   %test_dict_data_arrow_column_expansionzLTestDataFrameConstructorIndexInference.test_dict_data_arrow_column_expansionH  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/////rK   N)	r  r  r  r  r  rp   r{  r|  r  r   rK   rI   r  r    s        	- 	- 	-*9 *9 *9X [%3*f%A	
 	0 	0 	0 	0 	0rK   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 )
NrS   r]  z)Trying to coerce float values to integersri   rk   r<   r  rh   r   )r?   r*  r+  r  rp   rq   r   r   roundr5  r|  ro   r   r    rB   )rE   rF   rr   rG   s       rI   "test_floating_values_integer_dtypezLTestDataFrameConstructorWithDtypeCoercion.test_floating_values_integer_dtype\  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   rK   rI   r  r  [  s#        ( ( ( ( (rK   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 )&TestDataFrameConstructorWithDatetimeTZrR   rW  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-FRIrK  r   ry  ra   r_   rz   c                 6    g | ]}|                                 S r   r  r  s     rI   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes.<locals>.<listcomp>  s$    ;;;"2++--;;;rK   c                 6    g | ]}|                                 S r   r  r  s     rI   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes.<locals>.<listcomp>  s$    @@@BR--//@@@rK   r  dr_tzdatetimes_naivedatetimes_with_tzr  rX  )r  r  r  r  )r$   r}   r   r   tzinfor=   r5  r    r?   rC   r   )
rE   rR   r  r  rG   tz_expectedr  r  r   rH   s
             rI   *test_construction_preserves_tzaware_dtypeszQTestDataFrameConstructorWithDatetimeTZ.test_construction_preserves_tzaware_dtypes|  sC    
JW===r""U//r:::%dEL99#w}++++ <;;;;@@%@@@bz""7 /"3)**2&&&)**2&&&	 JII
 
 
 	vx00000rK   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2019rX  sCannot convert timezone-aware data to timezone-naive dtype. Use pd.Series\(values\).dt.tz_localize\(None\) instead.ri   r   r  r<   /Cannot unbox tzaware Timestamp to tznaive dtypere  r  rk  )r"   r  rp   rq   r   r   r   r?   rn   r|   r    )rE   tz_aware_fixturer  rR   r  rr   msg2s          rI   '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;   rW  rP   r   r{   20130110rs  ry  r   zM8[ns, US/Easternrz   )r   r$   r   r=   rm   rC   r   r    )rE   r   r  rG   s       rI   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(<(<(<=====rK   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;   rW  r   )rQ   rR   rm   r{   rP   r   )r$   r   rC   r   r    )rE   rE  r  s      rI   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';';';<<<<<rK   c                     t          dd          }t          ||          }t          d|d|           t          d|j        d|           d S )Nr  r)  rs  ra   r   r:  )r$   r    r   r  )rE   r  r)  s      rI   +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8rK   c                     t          ddd          }t          |          }t          d|d|          }|d                                                                         sJ d S )	Nr  r  r  rK  r   ry  ra   rz   )r$   r    r   r%   r|  )rE   r  r  r   s       rI   +test_frame_datetime64_mixed_index_ctor_1681zRTestDataFrameConstructorWithDatetimeTZ.test_frame_datetime64_mixed_index_ctor_1681  sg    
JW===BZZ E++2666v{{}}  """""""rK   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;   minrW  )r~  rQ   rL  rR   
timestampsr   rX  z20130101T10:01:00z20130101T10:02:00)r$   r   r"   rC   rD   )rE   r  r   rH   s       rI   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/////rK   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@)rs    r  333333?@)r  rs  r  )r  r  )rs  r  i  r   )r  r  )r  r  r  )r   r?   ro   r   rC   rD   )rE   r   popr   rH   s        rI   test_nested_dict_constructionzDTestDataFrameConstructorWithDatetimeTZ.test_nested_dict_construction  s    V$ ,,c55
 
 3&8&8&8'JJJbfbf%56***++
 
 

 	fh/////rK   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  rP   rT   rD  rW  )
r$   rV   rB   r|   rA   r   r|  r5  r=   r|  )rE   r[   r   rG   s       rI   test_from_tzaware_object_arrayzETestDataFrameConstructorWithDatetimeTZ.test_from_tzaware_object_array  s    +Q5AAAy''//266t__x6!!!!	SY&++-----c	  $$&&&&&&&rK   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-0500rW  rX  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?   rn   r"   rM  r   r|   r!  r   r5  r|  )rE   rF   r  expected_dtypess       rI   $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4rK   c                     t          j        d                              d          }t          |d          }t          |                              d          }t          j        ||           d S )Nr)  )r   rS   zdatetime64[ns, UTC]r<   )r?   r@   rA   r   rB   rC   rD   )rE   
array_dim2rG   rH   s       rI   test_from_2d_ndarray_with_dtypezFTestDataFrameConstructorWithDatetimeTZ.test_from_2d_ndarray_with_dtype/  se    Yr]]**622
z)>???Z((//0EFF
b(+++++rK   r6  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>   rT   rS   r;   'z' type is unorderedri   r   )r  rp   rq   r   r   r    )rE   r6  r  rr   s       rI   !test_construction_from_set_raiseszHTestDataFrameConstructorWithDatetimeTZ.test_construction_from_set_raises7  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   r9   r  r<   r:   r;   c              3   @   K   | ]}t          |t                    V  d S r   )r   r&   )r   rF   s     rI   r   zeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelike.<locals>.<genexpr>G  s,      LLc:c=11LLLLLLrK   )r?   r@   rA   r   r|  rX   r   rE   rF   rG   s      rI   +test_construction_from_ndarray_datetimelikezRTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_datetimelikeB  sc     i2%5666>>q!DDs^^LLRW^LLLLLLLLLLrK   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 )NrS   r  r   z'len\(arrays\) must match len\(columns\)ri   r   rk  )r   r   r  r#  r   )r?   r*  r+  r  rM  rn   r=   rp   rq   r   r   )rE   rF   r=   rr   arr2s        rI   >test_construction_from_ndarray_with_eadtype_mismatched_columnszeTestDataFrameConstructorWithDatetimeTZ.test_construction_from_ndarray_with_eadtype_mismatched_columnsI  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 setri   r   r   ra   zcolumns cannot be a set>   r   r   r   r   r  ry  s     rI   "test_columns_indexes_raise_on_setszITestDataFrameConstructorWithDatetimeTZ.test_columns_indexes_raise_on_setsT  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 abover  r   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?   rn   r   r=   r   r|  )rE   r   r  r  s       rI    test_np_string_array_object_castzGTestDataFrameConstructorWithDatetimeTZ.test_np_string_array_object_cast]  s     	-,,,,,HT#Ykkmm<<<S	oo3x~++++CDI%**,,,,,,,rK   N)r  r  r  rp   r{  r|  r  r  r  r  r  r  r  r  r  r  r  set	frozensetr  r  r  r  skipifr   r  r   rK   rI   r  r  {  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	
 - -  - - -rK   r  c                 `    t          | t                    r| j        d         S | j        d         S )Nr   r  )r   r    r  r9  s    rI   get1r  o  s,    #v x{x~rK   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rE   r  s     rI   boxzTestFromScalar.boxw  
    }rK   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 )	Nrb   rS   r   r   c                       | | dfi |S )NrU   r   r   kwargsextrar   s     rI   r   z,TestFromScalar.constructor.<locals>.<lambda>  s1    ??aLL, ,$),-3, , rK   c                      d| ifi |S Nr   r   r  s     rI   r   z,TestFromScalar.constructor.<locals>.<lambda>  s#    ??C8+W+Wu+WPV+W+W rK   c                      | | gfi |S r   r   r  s     rI   r   z,TestFromScalar.constructor.<locals>.<lambda>  s"    1v'Q'Q'Q&'Q'Q rK   c                 "     d| | gifi |S r  r   r  s     rI   r   z,TestFromScalar.constructor.<locals>.<lambda>  s'    aV}'X'X'XQW'X'X rK   )r   r   	functoolspartialr4  r    )rE   r   r  r  s    ` @rI   r   zTestFromScalar.constructor{  s    %((#i'' #uE);$_>>>>>D[[&((      XWWWWW&&QQQQQQXXXXXXrK   r=   ru   r   c                      |t           j        |          }t          j        |j        |k              sJ t          j        |                                          sJ d S r  )rM  r   r?   r|  r5  r%   )rE   r=   r   r   s       rI   test_from_nat_scalarz#TestFromScalar.test_from_nat_scalar  sY    k"&...vcjE)*****vchhjj!!!!!!!rK   c                 h    t          d          } ||d          }t          |          |k    sJ d S )NrT   r   r<   r!   r  )rE   r   rG  r   s       rI   *test_from_timedelta_scalar_preserves_nanosz9TestFromScalar.test_from_timedelta_scalar_preserves_nanos  s8    q\\k"H---CyyBrK   c                 n    |t          d          z   } ||d          }t          |          |k    sJ d S )NrT   ru   r<   r  )rE   r   fixed_now_tsr  r   s        rI   *test_from_timestamp_scalar_preserves_nanosz9TestFromScalar.test_from_timestamp_scalar_preserves_nanos  s=    IaLL(k"H---CyyBrK   c                     t          d          } |j                    } ||t                    }t          t	          |          t
          j                  sJ d S )NrT   r<   )r!   to_timedelta64r|   r   r  r?   r;  )rE   r   rG  td64r   s        rI   #test_from_timedelta64_scalar_objectz2TestFromScalar.test_from_timedelta64_scalar_object  sU    q\\ r ""k$f---$s))R^4444444rK   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   ru   r   z:<class 'numpy.timedelta64'> is not convertible to datetime|r  ri   r<   r:   )r?   r   r;  joinrp   rq   r   )rE   r   r  r  r=   msg1rr   s          rI   (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'  rT   rv  r  ru  )rF  r    r4  rp   r{  r  applymarkerr
   r?   r   r  rC   	get_dtyperJ  r"   asm8r=   rE   r   r  r  r  r   r{  r  r  r   itemr=   s               rI   #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)++++	!!!!!!rK   c                 "   t          j        t          j        t           j                  j        d          } ||          }t          |          }t          |          t           j        u sJ t          j        |          }|t          k    sJ d S r:  )
r?   r   iinfor5   maxr  rJ  rC   r!  r|   )rE   r   r  r   r$  r=   s         rI   test_out_of_s_bounds_datetime64z.TestFromScalar.test_out_of_s_bounds_datetime64  su    rx115s;;V$$F||DzzR]****V$$rK   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  rT   i  zm8[us]r  zm8[s])rF  r    r4  rp   r{  r  r   r
   r?   r;  r  rC   r!  rJ  r!   r"  r=   r#  s               rI   $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)++++	!!!!!!rK   c                      |t          j        t           j                  j        d          } ||          }t	          |          }t          |          |u sJ t          j        |          }|t          k    sJ d S r:  )	r?   r'  r5   r(  r  rJ  rC   r!  r|   )rE   r   r  r  r   r$  r=   s          rI    test_out_of_s_bounds_timedelta64z/TestFromScalar.test_out_of_s_bounds_timedelta64  su     RXbh''+S11V$$F||DzzS    V$$rK   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 )	NrW  r  rX  r  r  ri   ru   r<   )r"   r   r4  r   r   rp   rq   )rE   r   r  r   rR   r  rr   errs           rI   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  rp   fixturerF  r4  r  r   r{  r|  r  r  r  r  r?   r   r;  r  r
   r%  
skip_ubsanr)  r   r+  r-  r0  r   rK   rI   r  r  v  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 , , , , ,rK   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     rI   as_tdzTestAllowNonNano.as_td  r  rK   c                    t          j        d                              t           j                                      d          }|r&||d         z
  }t          j        ||j                  S t          j        ||j                  S )Nr   ru  r   r<   )	r?   r@   rB   r5   r   r*   _simple_newr=   r&   )rE   r6  r  s      rI   rF   zTestAllowNonNano.arr   st    1$$RX..33G<< 	IfQi'F!-fFLIIII ,V6<HHHHrK   c                 H    t          |          }|j        |j        k    sJ d S r   )r   r=   )rE   rF   r   s      rI   test_index_allow_non_nanoz*TestAllowNonNano.test_index_allow_non_nano)  s(    CjjyCI%%%%%%rK   c                 v    |rt          j        |          }nt          |          }|j        |j        k    sJ d S r   )rM  TimedeltaIndexr   r=   )rE   rF   r6  r   s       rI   test_dti_tdi_allow_non_nanoz,TestAllowNonNano.test_dti_tdi_allow_non_nano-  sD     	%#C((CC$$CyCI%%%%%%rK   c                 H    t          |          }|j        |j        k    sJ d S r   )r    r=   )rE   rF   r  s      rI   test_series_allow_non_nanoz+TestAllowNonNano.test_series_allow_non_nano4  s(    SkkyCI%%%%%%rK   c                 T    t          |          }|j        d         |j        k    sJ d S r   r   r5  r=   r  s      rI   test_frame_allow_non_nanoz*TestAllowNonNano.test_frame_allow_non_nano8  s,    s^^y|sy((((((rK   c                 X    t          d|i          }|j        d         |j        k    sJ d S r   rA  r  s      rI   #test_frame_from_dict_allow_non_nanoz4TestAllowNonNano.test_frame_from_dict_allow_non_nano<  s2    3x  y|sy((((((rK   N)r  r  r  rp   r1  r6  rF   r:  r=  r?  rB  rD  r   rK   rI   r4  r4    s         V^D%=)))  *) ^I I ^I& & && & && & &) ) )) ) ) ) )rK   r4  )Lrn   collectionsr   r   r   r   collections.abcr   dataclassesr   r
   r	   r   r  r(  numpyr?   r   numpy.mar   rp   r  pandas._configr   pandas._libsr   pandas.compat.numpyr   pandas.errorsr   pandas.util._test_decoratorsutil_test_decoratorsrG  pandas.core.dtypes.commonr   pandas.core.dtypes.dtypesr   r   r   r   pandasrM  r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   pandas._testing_testingrC   pandas.arraysr&   r'   r(   r)   r*   r1  r0  r7   r  r  r  r  r  r4  r   rK   rI   <module>rW     s               % $ $ $ $ $ & & & & & &         
     				                   - - - - - -       . . . . . . , , , , , , ) ) ) ) ) ) ) ) ) 6 6 6 6 6 6                                                "                    766 	 	 	 ~*3 ~*3 ~*3 ~*3 ~*3 ~*3 ~*3 ~*3BV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&) &) &) &) &) &) &) &) &) &)rK   