
    [6g<                        d dl Z d dl mZ d dlZd dlZd dlZd dlmZ d dlm	c m
Z d dlZd dlmZmZmZmZmZmZmZ d dlmZmZ ej        j        Z ej        d          Zej                            d          d             Zd	 Z d
 Z!d Z"d Z#d Z$d Z%d Z&d Z'd Z(d Z)ej        *                    dg d          d             Z+d Z,ej-        d             Z.d Z/d Z0d Z1d Z2d Z3dS )    N	timedelta)	Timestamp)	DataFrameIndexSeries_testingconcat
date_rangeread_hdf)_maybe_removeensure_clean_storetablesz!ignore::tables.NaturalNameWarningc                    t          |           5 }t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }t          |d
           |                    d
|d d                    |                    d
|dd                     t          j        |d
         |           t          |d           |                    d|d d         d           |                    d|dd                     t          j        |d         |           t          |d           |                    d|d d                    |                    d|dd                     t          j        |d         |           t          |d           |                    d|d d                    |                    d|dd                     t          j        |d         |           t          ddgddgddgddgg          }d|d<   t          j        |j        d<   t          |d           |                    d|           t          j        |d         |           t          t#          t          j                            d                              ddd          t          j                  t#          t          j                            d                              ddd          t          j                  t#          t          j                            d                              ddd          t          j                  t#          g dt          j                  d t          j        d          !          }t          |d"           |                    d"|           t          j        |d"         |d#$           t          |d"           |                    d"|g d%&           t          j        |d"         |d#$           d d d            d S # 1 swxY w Y   d S )'N   )      ABCDdtype
2000-01-01r   Bperiodsfreqcolumnsindexdf1
   df2table)formatdf3z/df3z/df3 foozdf3 foo   r   )datatestingmixed_column)r   r(   df      )highsizei  i   @)l           l          @l            l            l            )u08u16u32u64r   uintsTcheck_index_type)r.   r/   r0   data_columns)r   r   nprandomdefault_rngstandard_normalr   listobjectr   r   appendtmassert_frame_equalputnanlocr   integersuint8uint16uint32uint64arange)
setup_pathstorer)   	uint_datas       c/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/pandas/tests/io/pytables/test_append.pytest_appendrN      s   	J	'	' DP5 I!!!$$44W==$v,,f555\2C@@@
 
 

 	eU###UBssG$$$UBrssG$$$
eElB///eU###		%CRC	111UBrssG$$$
eElB///eU###VRW%%%VRW%%%
eElB/// 	eZ(((ZCRC)))ZBCC)))
eI.333 aVaVaVaV<===&>$&F !eT"""T2
eDk2... I))!,,55ac5JJ(   I))!,,55ae!5LL)   I))!,,55ae!5LL)   777)   $ )A,,'
 
 
	* 	eW%%%Wi(((
eGni$OOOO 	eW%%%Wi6K6K6KLLL
eGni$OOOOIDP DP DP DP DP DP DP DP DP DP DP DP DP DP DP DP DP DPs   P9QQQc           	         t          |           5 }t          t          d          t          j        d t          d          D                       }t          t          j        dt          j                  t          dd                    }t          t          j        d	                    }|                    d
|           |d
         }t          j	        ||           |j
        J |                    d|           |d         }t          j	        ||           |j
        J d|_
        |                    d|           |d         }t          j	        ||           |j
        |j
        k    sJ ||dk             }|                    dd          }t          j	        ||           ||dk    |j        dk     z           }|                    dd          }t          j	        ||d           t          t          j                            d                              d          dg          }t          j        t#          |                    |d<   d|d<   d|j        dddf<   |                    ddgd           |                    d          }|j                            d          |_        |                    d |           t          j	        |d          |d           d d d            d S # 1 swxY w Y   d S )!Nr   c                     g | ]}d | S )i_ .0is     rM   
<listcomp>z&test_append_series.<locals>.<listcomp>k   s    7T7T7TQQ7T7T7T    )r   r   r    r   z
2020-01-01r   r2   d   sstsfoons<   zfoo>60F   Z   zfoo>70 and index<90Tr4   r   )r+   r%   Ar   r   Cbar   r+   inplace)future_stackmi)r   r   ranger8   float64rI   r   r>   r?   assert_series_equalnameselectr   r   r9   r:   r;   lenrC   	set_indexstack	droplevel)	rJ   rK   rZ   r[   r]   resultexpectedri   ss	            rM   test_append_seriesrv   h   s*   	J	'	' +F5E"IIRZ7T7T%PR))7T7T7TUUUIb
+++:lTV3W3W3W
 
 
 BIcNN##T2t
vr***{"""T2t
vr***{"""T2t
vr***{bg%%%% b2g;dH--
vx000 rBw28b=12d$9::
vx$GGGG ry,,Q//??GGRUQVWWW)CGG$$33 qsCx
c3Z...HH$H'''##A&&T1
uT{AEEEEW+F +F +F +F +F +F +F +F +F +F +F +F +F +F +F +F +F +Fs   KK77K;>K;c                    t          |           5 }t          t          t          j                            d                              d                                        d          t          j                            d                              d          t          j                            d                              d          ddt          d          	                    d          t          d          	                    d          d	t          j
        d          
          }t          |d           t          j        |j        ddg df<   |                    d|d d                    |                    d|dd                     t          j        |d         |d           |                                }t          j        |d<   t          |d           |                    d|d d                    |                    d|dd                     t          j        |d         |d           |                                }t          j        |d<   t          |d           |                    d|d d                    |                    d|dd                     t          j        |d         |d           |                                }t          j        |d<   t          |d           |                    d|d d                    |                    d|dd                     t          j        |d         |d           d d d            d S # 1 swxY w Y   d S )Nr   r   int32r\   rd   
2001-01-01r]   
2001-01-02)ra   A1A2r   rc   DEr2   r   r      )r{   r   r}   r~   r    Tr4   r{   r|   r!   r~   r$   )r   r   r   r8   r9   r:   r;   astyper   as_unitrI   r   rB   rC   r>   r?   r@   copy)rJ   rK   r)   r   r!   r$   s         rM   test_append_some_nansr      sf   	J	'	' ,H5BI11!44DDRHHIIPP  i++A..>>rBBi++A..>>rBB|,,44T::|,,44T::
 
 )B--
 
 
 	eU###.0fqt****+UBssG$$$UBrssG$$$
eElBFFFF ggiiFD	eU###UCH%%%UCH%%%
eElC$GGGG ggiiFD	eU###UCH%%%UCH%%%
eElC$GGGG ggii6CeU###UCH%%%UCH%%%
eElC$GGGGY,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,H ,Hs   MM  M$'M$c                 .   t          |           5 }t          t          j                            d                              d          t          j                            d                              d          dt          j        d                    }t          j        |j        ddd d f<   t          |d           |
                    d|d d         d	
           |
                    d|dd          d	
           t          j        |d         |dd          d	           t          |d           |
                    d|d d         d
           |
                    d|dd          d
           t          j        |d         |d	           t          j        dd          5  t          |d           |
                    d|d d                    |
                    d|dd                     t          j        |d         |           d d d            n# 1 swxY w Y   t          j        dd	          5  t          |d           |
                    d|d d                    |
                    d|dd                     t          j        |d         |dd                     t          t          j                            d                              d          t          j                            d                              d          dddt          j        d                    }t          j        |j        ddd d f<   t          |d           |
                    d|d d         d	
           |
                    d|dd          d	
           t          j        |d         |d	           t          |d           |
                    d|d d         d
           |
                    d|dd          d
           t          j        |d         |d	           t          t          j                            d                              d          t          j                            d                              d          ddt          d                              d          t          d                              d          dt          j        d                    }t          j        |j        ddd d f<   t          |d           |
                    d|d d         d	
           |
                    d|dd          d	
           t          j        |d         |d	           t          |d           |
                    d|d d         d
           |
                    d|dd          d
           t          j        |d         |d	           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   )r{   r|   r2   r   r   r)   r    T)dropnar4   r!   Fio.hdf.dropna_tabler$   df4r\   rd   )r{   r|   r   rc   ry   r]   rz   )r{   r|   r   rc   r}   r~   )r   r   r8   r9   r:   r;   rI   rB   rC   r   r>   r?   r@   pdoption_contextr   r   rJ   rK   r)   s      rM   test_append_all_nansr      s   	J	'	' RK5i++A..>>rBBi++A..>>rBB  )B--
 
 
 &qtQQQw 	eT"""T2crc74000T2bcc74000
eDk2bcc7TJJJJ 	eU###UBssGE222UBrssGE222
eElBFFFF 4e<< 	4 	4%'''LL3B3(((LL233(((!%,333		4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 4d;; 5	K 5	K%'''LL3B3(((LL233(((!%,233888 )//22BB2FF)//22BB2FF	  imm  B !fBF1R47O%&&&LLr#2#wtL444LLr"##wtL444!%+rDIIII%'''LL3B3L666LL233L666!%,TJJJJ )//22BB2FF)//22BB2FF"<0088>>"<0088>>  imm
 
 
B !fBF1R47O%&&&LLr#2#wtL444LLr"##wtL444!%+rDIIII%'''LL3B3L666LL233L666!%,TJJJJk5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K 5	K;RK RK RK RK RK RK RK RK RK RK RK RK RK RK RK RK RK RKs\   FX
(A(HX
H 	 X
#H 	$X
<N*W2&X
2W6	6X
9W6	:X

XXc           
      P   t          |           5 }t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }|j
                            d           |_
        t          |d
           |                    d
|j        d d d df         dg           |                    d
|j        d d dd f                    t          j        |d
         |           |                    d
d          }|                    dg          }t          j        ||           |                    d
d          }|                    dg|j
        dd         	          }t          j        ||           t'          j        d          }t+          j        t.          |          5  |                    d
d           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r    r   r   r   r   r    r   r   r   r   r   )axes	columns=Ara   rb   )r   zindex=df.index[0:4]r   r   zOpassing a filterable condition to a non-table indexer [Filter: Not Initialized]matchzcolumns=A and index>df.index[4])r   r   r8   r9   r:   r;   r   r<   r=   r   r   
_with_freqr   r>   ilocr?   r@   rn   reindexreescapepytestraises	TypeError)rJ   rK   r)   rs   rt   msgs         rM   !test_append_frame_column_orientedr     s   	J	'	' C5I!!!$$44W==$v,,f555\2C@@@
 
 

 8&&t,,eU###UBGAAArrEN)===UBGAAAqrrEN+++
eElB///e[11::se:,,
h/// e%IJJ::se28AaC=:AA
h/// i(
 
 ]9C000 	C 	CLL ABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C9C C C C C C C C C C C C C C C C C Cs6   GH H7HH	H
H	HH"Hc                    t          |           5 }t          d          D ]A}t          t          j                            d                              d          t          d                    }t          d          |d<   |dxx         |dz  z  cc<   t          dgt          |          z  d	          |d<   t          dgt          |          z  d
	          |d
<   |dz  dk    r(|d= t          dgt          |          z  d	          |d<   |dz  dk    r|
                    d          }||d<   |                    dd           |                    d|           C	 d d d            n# 1 swxY w Y   t          |           5 }t          t          j                            d                              d          t          d          d          }t          dgt          |          z  d	          |d<   t          dgt          |          z  d
	          |d
<   |                    d|           t          dgt          |          z  d
	          |d<   t          j        d          }t          j        t"          |          5  |                    d|           d d d            n# 1 swxY w Y   t          dgt          |          z  d	          |d<   t          j        d          }t          j        t"          |          5  |                    d|           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr    r   )r    r   ABrb   r   r%   int64r   int16r   re   ra   Trf   r)   rk   )r   r   int16_2zCcannot match existing table structure for [int16] on appending datar         ?float_3zAcannot match existing table structure for [A,B] on appending data)r   rj   r   r8   r9   r:   r;   r<   r   ro   poprp   r>   r   r   r   r   
ValueError)rJ   rK   rU   r)   ar   s         rM   )test_append_with_different_block_orderingr   >  s-   	J	'	' #5r 	# 	#A	%%a((88AA4PT::  B  ))BwKwKKK1r6!KKK !s2wwg>>>BwK !s2wwg>>>BwK1uzzwK$aS3r77]'BBB71uzzFF3KK3LL$L///LLr""""%	## # # # # # # # # # # # # # #. 
J	'	' #5I!!!$$44W==JJ
 
 

 aS3r77]':::7aS3r77]':::7T2 sSWW}G<<<9iQ
 
 ]:S111 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# us2wwi@@@9iO
 
 ]:S111 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#/# # # # # # # # # # # # # # # # # #sn   EE00E47E4
DMJ1%M1J5	5M8J5	9AML3'M3L7	7M:L7	;MMMc           
         t          |           5 fd}t          ddgddgg          }                    d|           t          j                            d          |            |ddd           t          d	d
gddgg          }                    d|           t          ||g          }t          j                            d          |            |ddd           t          ddgddgg          }                    d|ddi           t          j                            d          |            |ddd                               d|           t          d	dgddgg          }d}t          j        t          |          5                      d|           d d d            n# 1 swxY w Y   t          g dg dt          g dt                    t          dd          d                              d          }                    d|d          d!d"i           t          j                            d          |d                                         d#|d          d$d!d"i%           t          j                            d#          |d                                         d&|d'd!d(i)           |                                                                                    d*+                              d          }                    d&|           t          j                            d&          t          ||g                                         d,|d          d'd!d(i)                               d,|d                     t          j                            d,          t          |d          |d          g                     t'          d-           t          t(          j                            d.                              d/          t          t1          d0          t                    t          d1d2d 3          4          }d5|d6<   t(          j        |j        |j        d7d"         d6f<   d8|d9<   t(          j        |j        |j        d"d:         d9f<   d;|d<<   t(          j        |j        |j        d7d          d<f<                       d-|                               d-          }t          j        ||           d d d            n# 1 swxY w Y   t          |           5 t          d5d8d=t9          d2          >          }t'          d-                               d-|d?d@i            |d-d?d@                               d-          j        d?gk    sJ t'          d-                               d-|d gd?d@i%            |d-d?d@                               d-          j        d d?gk    sJ t'          d-                               d-|d gdd@i%            |d-d d@            |d-dAd@                               d-          j        d gk    sJ t'          d-                               d-|d d         d@                               d-|dd          d@           t          j        d-         |           t          g dBd?gC          }t'          d-           t?          j         dD          }t          j        t          |          5                      d-|dEdEdF           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )GNc                 x    t                              |           j        j        |          j        |k    sJ d S Ngetattr
get_storerr"   descriptionitemsizekeyrm   r-   rK   s      rM   	check_colz+test_append_with_strings.<locals>.check_colu  <    ((--3?FFOSWWWWWWWrW   {   	asdqwertyiY  dggnhebbsdfbdfbdf_bigvalues_block_1r   |   asdqyiZ  dggnhefbdfbdf_big2values2   min_itemsizedf_new
abcdefqhijabcdefghijklmnopqrtsuvwxyzzTrying to store a string with len \[26\] in \[values_block_1\] column but\nthis column has a limit of \[15\]!\nConsider using min_itemsize to preset the sizes on these columnsr   )        r   g       @g      @g      @)r   r   r   r   r   )foo1foo2foo3foo4foo5r   20130101r+   rX   )ra   r   rc   r}   rc   rZ   r   r   r   ss2Tr7   r   ss3r"      )r#   r   longer)rc   ss4r)   r   r   r   r   r    r   r   r\   stringr%   rd   string2   bahstring3ra   r   r2   ra      values_block_0)r\   r\   r\   barhr   r   rb   zBmin_itemsize has the key [foo] which is not an axis or data_columnr   )r\   foobar)!r   r   r>   r?   r@   rn   r
   r   r   r   r   r=   r   rp   rl   rA   r   reset_indexassignr   r8   r9   r:   r;   r<   rB   rC   r   rj   r   r7   r   r   )	rJ   r   r)   r!   rt   r   r   rs   rK   s	           @rM   test_append_with_stringsr   r  s   	J	'	' R*5	 	 	 	 	 k*S2C,DEFFXr"""
ell844b999	(,b111 #w#})=>??Xs###2s)$$
ell844h???	(,b111 k*S2C,DEFFY(B@@@
ell955r:::	)-r222 	Xr"""S,/#7S1TUVV 	 ]:S111 	+ 	+LL6***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ ......CCC6RRR
A666	 
 
 )C.. 	 	T2c7'1>>>
u||D112c7;;; 	UBsG$gq\RRR
u||E22BsG<<< 			%G7A,	GGGggii##%%,,x,88BB3GGUC   
ell51162s)3D3DEEE 			%C|	LLLUCH%%%
u||E22FBsGSX;N4O4OPPP 	eT"""I!!!$$44W==$v,,f555\2C@@@
 
 

 8*,&rx!}h&'9+-6rx!}i'(9*,&rx|Y&'T2d##
fb)))eR* R* R* R* R* R* R* R* R* R* R* R* R* R* R*h 
J	'	' #K5U//uRyyAAA 	eT"""T2S#J777	$S!!!%%2se;;;; 	eT"""T2SEc
KKK	$S!!!%%2sCj@@@@ 	eT"""T2SE3PPP	$S!!!	$(#...%%2se;;;; 	eT"""T2bqb6444T2abb6444
eDk2... DDDseTTTeT"""iP
 
 ]:S111 	K 	KLLrb0I0ILJJJ	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	KE#K #K #K #K #K #K #K #K #K #K #K #K #K #K #K #K #K #Ksn   FT+F7+T+7F;	;T+>F;	?M T++T/2T/G:]??]']?']+	+]?.]+	/]??^^c                 T   t          |           5 }t          dg di          }|                    d|d d         ddi           |                    d|dd          ddi           t          j        |                    d          |           d d d            d S # 1 swxY w Y   d S )Nx)r   bcdef r)   r%   r   )r   r   r>   r?   r@   rn   r   s      rM   test_append_with_empty_stringr     s    	J	'	' 65???@AAT2crc7#q:::T2bcc7#q:::
ell400"5556 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6s   B BB!$B!c           
      \  	 t          |           5 	t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }d
|j
        d|j                            d          f<   t          	d           	                    d|d d         dg           	                    d|dd                     t          j        	d         |           	j        j        j        j        j        j        j        du sJ 	j        j        j        j        j        j        j        du sJ 	                    dd          }||j        dk             }t          j        ||           	                    dd          }|                    |j        dd                    }||j        dk             }t          j        ||           |                                }d|d<   t          j        |j        |j        dd         df<   d|j        |j        dd         df<   t          	d           	                    d|dg           	                    dd          }||j        dk             }t          j        ||           	fd}d d d            n# 1 swxY w Y   t          |           5 	t          	d           	                    d|dgddi            |ddd           t          	d           	                    d|dgd            |ddd           t          	d           	                    d|dgddi            |ddd           d d d            n# 1 swxY w Y   t          |           5 	d|d<   d |d!<   d"|d#<   t          	d           	                    d|ddgdd$d%d&            |ddd            |ddd$            |dd'd%           d d d            n# 1 swxY w Y   t          |           5 	|                                }d
|j
        d|j                            d(          f<   d)|j
        d|j                            d          f<   d|d<   |j                            d          }t          j        |j
        dd|f<   d|j
        dd|f<   d|d<   |j                            d          }t          j        |j
        dd|f<   d|j
        d*d+|f<   t          	d           	                    d|g d,           	                    dd-          }||j        dk    |j        dk    z  |j         dk    z  |j        dk     z           }t          j        ||d./           	                    dd0          }||j        dk    |j        d1k    z           }t          j        ||           d d d            n# 1 swxY w Y   t          |           5 	|                                }d|d<   t          j        |j        |j        dd         df<   d|j        |j        d*d2         df<   d1|d<   tC          d3          "                    d4          |d5<   t          j        |j        |j        d6d         g d7f<   t          	d8           	                    d8|g d9           	                    d8d          }||j        dk             }t          j        ||           	                    d8g d:          }||j        dk    |j#        dk    z  |j        dk    z           }t          j        ||d./           d d d            n# 1 swxY w Y   t          |           5 	t          d;d+<          }t          t          j                            d                              d=          |g d>?          }d|d<   t          j        |j        |j        dd         df<   d|j        |j        d*d2         df<   |dd@g         $                                |dd@g<   d1|d<   	                    d8|g dA           	                    d8d          }||j        dk             }t          j        ||           	                    d8g dB          }||j        dk    |j#        dk    z  |j        dk    z           }t          j        ||           d d d            d S # 1 swxY w Y   d S )CNr   r   r   r   r   r    r   r   r   r   r   r)   r6   TB>0zB>0 and index>df.index[3]r   r2   r\   r   r%   rd   r+   r   zstring='foo'c                 x    t                              |           j        j        |          j        |k    sJ d S r   r   r   s      rM   r   z0test_append_with_data_columns.<locals>.check_col  r   rW      r   r   	foobarbahr   
foobarbah1string_block1
foobarbah2string_block2(   r   )r   r   r   r   ra   g         r   )ra   r   r   r   z.string='foo' and string2='foo' and A>0 and B<0F)
check_freqzstring='foo' and string2='cool'cool	   20010102r]   datetimere   )ra   r   r   df_dc)r   rc   r   r   r   )B > 0C > 0zstring == fooz1/1/2000rX   )r   re   )ra   r   rc   )r   r   rc   )r   rc   r   r   )r   r   zstring == "foo")%r   r   r8   r9   r:   r;   r   r<   r=   r   r   r   get_locr   r>   r?   r@   _handlerootr)   r"   colsr   
is_indexedr   rn   r   r   rB   rC   r   r   ra   r   r   rc   abs)
rJ   r)   rs   rt   r   r   slr   r   rK   s
            @rM   test_append_with_data_columnsr    s   	J	'	' *5I!!!$$44W==$v,,f555\2C@@@
 
 

 /22:%%c***+eT"""T2bqb6666T2abb6"""
eDk2... }!$*/5@DHHHH}!$*/1<DDDD dE**bdQh<
fh/// d$?@@"(122,//&(Q,'
fh///  x24&
6<!$h./27
6<!$h./eT"""T6
;;;dN33&-501
fh///	 	 	 	 	O* * * * * * * * * * * * * * *X 
J	'	' 	&5eT"""T6
(TVXXX	$"%%%eT"""T6
LLL	$"%%%eT"""T6
(TVXXX	$"%%%	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 	& 
J	'	' .5'y".".eT""""I.$&2DD	 	 	
 	
 	
 		$"%%%	$	2&&&	$("---. . . . . . . . . . . . . . . 
J	'	' 0569Av~--c22236:Av~--c2223 x^##H--!vAaCG$AaCG!y^##I..!vAaCG$AaCGeT"""T60O0O0OPPPd$TUU]e#~&(x!| x!|
 	fh5AAAA d$EFF6=E1fn6NOP
fh///=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0@ 
J	'	' B5		h02	%+ac"H,-05	%+ac"H,-!i%j1199$??j>@f	%+ac"$:$:$::;eW%%%U)T)T)T 	 	
 	
 	
 gu--1%
fh///g'J'J'JKK%'A+%'A+6%,%:OPQ
fh5AAAA+B B B B B B B B B B B B B B B2 
J	'	' 05 :q111I!!!$$44V<<#OO
 
 

  h02	%+ac"H,-05	%+ac"H,-!3*-1133sCj!i 	We2Q2Q2QRRRgu--1%
fh///g'L'L'LMM%'A+%'A+6%,%:OPQ
fh///10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0sq   J.KKK%B*NN"N5A&P''P+.P+F;XXX"E#^^^+E)d!!d%(d%c                 8   |}d |j         _        t          |          5 }|                    d|           |                    d          }t          j        ||           |                    dddg          }|                    ddg          }t          j        ||           d d d            n# 1 swxY w Y   | dz  }|                    |dd           t          |dddg          }|                    ddg          }t          j        ||           d S )	Nri   ra   r   rb   ztest.hdfr)   r"   )r   r#   )
r   rm   r   r>   rn   r?   r@   r   to_hdfr   )tmp_pathrJ    multiindex_dataframe_random_datar)   rK   rs   rt   paths           rM   test_append_hierarchicalr    sY   	)BBJO	J	'	' 05T2d##
fb))) dS#J77::sCj:11
fh///0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 j DIIdWI---dD3*555Fzz3*z--H&(+++++s   BB11B58B5c                 j   t          |           5 }t          dt          j        d                              d          z  t          t          d          t                    t          d t          d          D             t                              }|	                    d	|d
           |
                    d	          }t          j        ||           |	                    d|d           |
                    d          }t          j        ||           d d d            d S # 1 swxY w Y   d S )N皙?x   r   r   r   r   c                     g | ]}d | S zi-rR   rS   s     rM   rV   z$test_append_misc.<locals>.<listcomp>      555aa555rW   r   r   r)   r%   	chunksizer   r    )expectedrows)r   r   r8   rI   reshaper   r<   r=   rj   r>   rn   r?   r@   )rJ   rK   r)   rs   s       rM   test_append_miscr    sX   	J	'	' *5")C..((111$v,,f55555599555VDDD
 
 

 	T2+++d##
fb)))UBR000e$$
fb)))* * * * * * * * * * * * * * * * * *s   DD((D,/D,r  )r    r   i  c           
         t          dt          j        d                              d          z  t	          t          d          t                    t	          d t          d          D             t                              }d	|d
<   d|d<   |d                             d          |d<   |d         dk    |d<   t          d          
                    d          |d<   t          d          
                    d          |d<   t          | d          5 }|                    d||           |                    d          }t          j        ||           d d d            d S # 1 swxY w Y   d S )Nr
  r  r  r   r   c                     g | ]}d | S r  rR   rS   s     rM   rV   z.test_append_misc_chunksize.<locals>.<listcomp>  s    111!X!XX111rW   r   r   r\   r   r   float322float32r   boolr   r]   time120130102time2w)modeobjr  )r   r8   rI   r  r   r<   r=   rj   r   r   r   r   r>   rn   r?   r@   )rJ   r  r)   rK   rs   s        rM   test_append_misc_chunksizer     s    
binn$$W---d6ll&11111uRyy111@@@
 
 
B
 BxLBzN
^**955BzNJ!#BvJJ''//55BwKJ''//55BwK	JS	1	1	1 *UUB)444e$$
fb)))* * * * * * * * * * * * * * * * * *s   AE))E-0E-c                    t          |           5 }t          t          d                    }|                    d|           t	          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          t          j	        
                    d          	                    d          t          d                    }|                    d|           t          j        |                    d          |           |                    d|           t          j        |                    d          |           t          t          d                    }|                    d|           t          j        |                    d          |           d d d            d S # 1 swxY w Y   d S )	NABCrb   r)   z 'No object named df in the file'r   r   )r    re   r!   )r   r   r<   r>   r   r   KeyErrorrn   r8   r9   r:   r?   r@   rA   )rJ   rK   df_emptyr)   s       rM   test_append_misc_empty_framer%    s   	J	'	' 75T%[[111T8$$$]8+MNNN 	 	LL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ry,,Q//66w??eUUUT2
ell400"555T8$$$
ell400"555 tE{{+++		%
ell5112666#7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7s7   AF>B5F>B	F>B		D(F>>GGc                 
   t          |           5 }t          dt          j        d                              d          z  t          t          d          t                    t          d t          d          D             t                              }d	ggt          |          z  |d
<   |j
        d
         t          j        k    sJ t          j        d          }t          j        t           |          5  |                    d|           d d d            n# 1 swxY w Y   d	ggt          |          z  |d<   d	ggt          |          z  |d<   t          j        t           |          5  |                    d|           d d d            n# 1 swxY w Y   t          dt          j        d                              d          z  t          t          d          t                    t          d t          d          D             t                              }t%          t'          j        ddd          |j                  }|                    t                    }t          j        |dd<   ||d
<   |j
        d
         t          j        k    sJ d}t          j        t           |          5  |                    d|           d d d            n# 1 swxY w Y   d}t          j        t           |          5  |                    dt          j        d                     d d d            n# 1 swxY w Y   t          j        d          }t          j        t           |          5  |                    dt%          t          j        d                               d d d            n# 1 swxY w Y   t          dt          j        d                              d          z  t          t          d          t                    t          d t          d          D             t                              }|                    d|           d|d<   t          j        d          }t          j        t.          |          5  |                    d|           d d d            n# 1 swxY w Y   t1          |d           t3          d          |d<   |                    d|           d|d<   t          j        d           }t          j        t.          |          5  |                    d|           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )!Nr
  r  r  r   r   c                     g | ]}d | S r  rR   rS   s     rM   rV   z%test_append_raise.<locals>.<listcomp>  r  rW   r   r   r   invalidziCannot serialize the column [invalid]
because its data contents are not [string] but [mixed] object dtyper   r)   invalid2invalid3c                     g | ]}d | S r  rR   rS   s     rM   rV   z%test_append_raise.<locals>.<listcomp>  r  rW   i  r%   r   r2   r   r+   z>too many timezones in this block, create separate data columnsz(value must be None, Series, or DataFramer    z]cannot properly create the storer for: [group->df,value-><class 'pandas.core.series.Series'>]c                     g | ]}d | S r  rR   rS   s     rM   rV   z%test_append_raise.<locals>.<listcomp>  r  rW   r\   zinvalid combination of [non_index_axes] on appending data [(1, ['A', 'B', 'C', 'D', 'foo'])] vs current table [(1, ['A', 'B', 'C', 'D'])]r   rd   a  invalid combination of [values_axes] on appending data [name->values_block_1,cname->values_block_1,dtype->bytes24,kind->string,shape->(1, 30)] vs current table [name->values_block_1,cname->values_block_1,dtype->datetime64[s],kind->datetime64[s],shape->None])r   r   r8   rI   r  r   r<   r=   rj   ro   dtypesobject_r   r   r   r   r   r>   r   r   r   r   rB   r   r   r   )rJ   rK   r)   r   ru   s        rM   test_append_raiser/    s   	J	'	' S#5 ")C..((111$v,,f55555599555VDDD
 
 

 #b'')9y#rz1111iG
 
 ]9C000 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# %3r77*:%3r77*:]9C000 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# ")C..((111$v,,f55555599555VDDD
 
 

 8$T1a00AAAHHV!A#9y#rz1111N]9C000 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 9]9C000 	. 	.LLry}}---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. iE
 
 ]9C000 	6 	6LLvbimm44555	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 ")C..((111$v,,f55555599555VDDD
 
 

 	T25	i*
 

 ]:S111 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	eT"""j))5	T25	iD
 
 ]:S111 	# 	#LLr"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#eS# S# S# S# S# S# S# S# S# S# S# S# S# S# S# S# S# S#s  C*U%:DU%D!	!U%$D!	%AU%1FU%F	U%F	DU%9KU%K 	 U%#K 	$ U%)L9-U%9L=	=U% L=	2U%36N5)U%5N9	9U%<N9	=CU%R3'U%3R7	7U%:R7	;A/U%*UU%U	U%U	U%%U),U)c                    t          d                              d          t          fdt          d          D             d          }|d         |d         z
  |d<   t          j        |j        d	d
df<   t          |           5 }t          |d           |	                    d|d           |
                    d          }t          j        ||           |
                    dd          }t          j        ||           |
                    dd          }t          j        ||j        d	d                     |
                    dd          }t          j        ||j        d	d                     |
                    dd          }|                    dg          }t          j        ||j        dd                     |
                    dd          }|j        dd          }t          j        ||j        dd                     t          |d           |                    d|           |
                    d          }t          j        ||           d d d            d S # 1 swxY w Y   d S )Nr   r]   c                 8    g | ]}t          |d           z   S )r    )dayssecondsr   )rT   rU   r[   s     rM   rV   z.test_append_with_timedelta.<locals>.<listcomp>C  s+    HHH"ya4444HHHrW   r    r   ra   r   rc   re   r+   r)   Tr6   zC<100000)wherezC<pd.Timedelta('-3D')zC<'-3D'zC<'-500000s')subsetr   z	C<'-3.5D'r%   r   r!   )r   r   r   rj   r8   rB   rC   r   r   r>   rn   r?   r@   r   r   rA   )rJ   r)   rK   rs   r[   s       @rM   test_append_with_timedeltar6  ;  s    
:			&	&t	,	,B	HHHHeBiiHHH	
 	

 
B g3BsGvBF1Q38	J	'	' *5eT"""T2D111d##
fb)))d*55
fb)))d*ABB
fbgabbk222dI..
fbgabbk222 dN33se,,
fbgabbk222dK00QRR
fbgabbk222 	eU###		%e$$
fb)))=* * * * * * * * * * * * * * * * * *s   
GI--I14I1c           	      t   t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }|	                                
                    d
j                  }d|d<   t          ||gd          }t          |           5 }d}t          j        t           |          5  |                    ddgd d|d           d d d            n# 1 swxY w Y   t          j        t           |          5  |                    d d d|d           d d d            n# 1 swxY w Y   d}t          j        t           |          5  |                    d|d           d d d            n# 1 swxY w Y   |                    ddgd d|d           |                    ddgddgd          }||j        dk    |j        dk    z           }t+          j        ||           d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r    r   r   r   {}_2rb   rd   r\   r%   axisz=append_to_multiple requires a selector that is in passed dictr   ra   r   r!   r$   )selectorzQappend_to_multiple must have a dictionary specified as the way to split the valuer   r!   zA>0r   )r4  r<  r   )r   r8   r9   r:   r;   r   r<   r=   r   r   renamer#   r
   r   r   r   r   append_to_multipleselect_as_multiplera   r   r?   r@   )rJ   r   r!   r)   rK   r   rs   rt   s           rM   test_append_to_multipler@  j  s_   

	a  0099d6ll&111r<<<  C
 ((**

FM

2
2CCJ	c
	#	#	#B	J	'	' 05M]:S111 	 	$$c
400"u %   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	
 ]:S111 	U 	U$$T$%?%?e$TTT	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	 ]:S111 	7 	7$$UB666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	  #sD!A!A2PU VVV))EN5%.5 * 
 
 rtaxBD1H-.
fh///10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s   H-&DH-D	H-D	H-6EH-E"	"H-%E"	& H-F*H-*F.	.H-1F.	2A.H--H14H1c           	      $   t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }t          t          j                            d                              d          t          t          d          t                    t          ddd          	          	                    d
j
                  }t          j        |j        d|j                            ddg          f<   t          ||gd          }t!          |           5 }|                    ddgd d|dd           |                    ddg          }|                                }t)          j        ||d           t)          j        |                    d          j        |                    d          j                   d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r    r   r   r   r8  rb   r%   ra   r9  r;  r   Tr<  r   r!   r4   )r   r8   r9   r:   r;   r   r<   r=   r   r=  r#   rB   r   r   get_indexerr
   r   r>  r?  r   r?   r@   assert_index_equalrn   r   )rJ   r   r!   r)   rK   rs   rt   s          rM   test_append_to_multiple_dropnarE    s6   

	a  0099d6ll&111r<<<  C
 
	a  0099d6ll&111r<<<   fV]f##	 
 8:vCHQ''c
3334	c
	#	#	#B	J	'	' T5  #Jt,,b5 	! 	
 	
 	
 ))5%.9999;;
fhFFFF
ell5117e9L9L9RSSST T T T T T T T T T T T T T T T T Ts   B&HH	H	c           	         t          t          j                            d                              d          t          t          d          t                    t          ddd          	          }|	                                
                    d
j                  }t          j        |j        d|j                            ddg          f<   t!          ||gd          }t#          |           5 }t%          j        dd          5  |                    ddgd d|dd           d}t+          j        t.          |          5  |                    ddg           d d d            n# 1 swxY w Y   |                    d          j                            |                    d          j                  rJ 	 d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r    r   r   r   r8  rb   r%   ra   r9  r   T)df1adf2arG  FrB  z,all tables must have exactly the same nrows!r   rH  )r   r8   r9   r:   r;   r   r<   r=   r   r   r=  r#   rB   r   r   rC  r
   r   r   r   r>  r   r   r   r?  rn   r   equals)rJ   r   r!   r)   rK   r   s         rM   $test_append_to_multiple_dropna_falserJ    s   

	a  0099d6ll&111r<<<  C
 ((**

FM

2
2C79vCHQ''c
3334	c
	#	#	#B	J	'	' Q5"2Ct3 3 Q Q 	  3Z..VE 	! 	
 	
 	
 =]:S111 	7 	7$$ff%5666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 <<''-44U\\&5I5I5OPPPPPPQ Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Qs[   3G 	<GE)G)E--G0E-1A
G<G G	G G	G  G$'G$c           
      0   t          t          j        dd          t          j        dd          t          j        dd          dz  d t          d          D             d t          d          D             d          }|j        dg         }t          |           5 }|                    d	gd
dgddgd|j        dg         ddddd           |                    g d          }t          j	        ||d           d d d            d S # 1 swxY w Y   d S )Nr%      X   c                     g | ]}d S )r   rR   rT   _s     rM   rV   z8test_append_to_multiple_min_itemsize.<locals>.<listcomp>  s    +++AC+++rW   r   c                     g | ]}d S )abcderR   rO  s     rM   rV   z8test_append_to_multiple_min_itemsize.<locals>.<listcomp>  s    333A333rW   )IXNumBigNumStrLongStrr   rS  rT  rU  rV  rW  )r   numsstrsr   r    rY   r   )rV  rW  rT  r   Tr4   )
r   r8   rI   rj   r   r   r>  r?  r?   r@   )rJ   r)   rt   rK   rs   s        rM   $test_append_to_multiple_min_itemsizerZ    s   	)Ar""9Q##i2&&+++r+++33r333	
 	

 
B ws|H	J	'	' G5  )	* 
 GQCL!#A>> 	! 		
 		
 		
 ))*C*C*CDD
fhFFFFG G G G G G G G G G G G G G G G G Gs   A!DDD)4r   r   r   numpyr8   r   pandas._libs.tslibsr   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r	   r?   r
   r   r   pandas.tests.io.pytables.commonr   r   mark
single_cpu
pytestmarkimportorskipr   filterwarningsrN   rv   r   r   r   r   r   r   r  r  r  parametrizer   r%  &skip_array_manager_not_yet_implementedr/  r6  r@  rE  rJ  rZ  rR   rW   rM   <module>rj     s          				      ) ) ) ) ) ) ) ) ) ) ) ) ) ) )                            
 [#
		X	&	& ?@@EP EP A@EPP,F ,F ,F^-H -H -H`SK SK SKlC C CB1# 1# 1#hxK xK xKv6 6 6X0 X0 X0v, , ,** * *  ooo66* * 76*&7 7 72 *T# T# +*T#n,* ,* ,*^"0 "0 "0JT T T2Q Q Q2G G G G GrW   