
    Mh<                        S SK r S SK Jr  S SKrS SKrS SKrS SKJr  S SKJ	s  J
r  S SKrS SKJrJrJrJrJrJrJr  S SKJrJr  \R2                  R4                  r\R8                  " S5      r\R2                  R=                  S5      S 5       rS	 r S
 r!S r"S r#S r$S r%S r&S r'S r(S r)\R2                  RU                  S/ SQ5      S 5       r+S r,\RZ                  S 5       r.S r/S r0S r1S r2S r3g)    N)	timedelta)	Timestamp)	DataFrameIndexSeries_testingconcat
date_rangeread_hdf)_maybe_removeensure_clean_storetablesz!ignore::tables.NaturalNameWarningc                 4   [        U 5       n[        [        R                  R	                  S5      R                  S5      [        [        S5      [        S9[        SSSS9S	9n[        US
5        UR                  S
US S 5        UR                  S
USS  5        [        R                  " US
   U5        [        US5        UR                  SUS S SS9  UR                  SUSS  5        [        R                  " US   U5        [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                  " US   U5        [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                  " US   U5        [        SS/SS/SS/SS//S9nSUS'   [        R                  UR                   S'   [        US5        UR                  SU5        [        R                  " US   U5        [        [#        [        R                  R	                  S5      R%                  SSSS9[        R&                  S9[#        [        R                  R	                  S5      R%                  SSSS9[        R(                  S9[#        [        R                  R	                  S5      R%                  SSSS9[        R*                  S9[#        / SQ[        R,                  S9S .[        R.                  " S5      S!9n[        US"5        UR                  S"U5        [        R                  " US"   US#S$9  [        US"5        UR                  S"U/ S%QS&9  [        R                  " US"   US#S$9  S S S 5        g ! , (       d  f       g = f)'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.   r/   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       V/var/www/html/env/lib/python3.13/site-packages/pandas/tests/io/pytables/test_append.pytest_appendrM      s   	J	'5 II!!!$44W=$v,f5\2C@

 	eU#UBsG$UBrsG$
eElB/eU#		%CR	1UBrsG$
eElB/eU#VRW%VRW%
eElB/ 	eZ(ZCR)ZBC)
eI.3 aVaVaVaV<=&>$&FF !eT"T2
eDk2. II))!,55ac5J(( II))!,55ae!5L)) II))!,55ae!5L)) 7))$ ))A,'
	* 	eW%Wi(
eGni$O 	eW%Wi6KL
eGni$OI 
(	'	's   M4N		
Nc           
         [        U 5       n[        [        S5      [        R                  [        S5       Vs/ s H  nSU 3PM
     snS9n[        [        R
                  " S[        R                  S9[        SSS9S9n[        [        R
                  " S	5      5      nUR                  S
U5        US
   n[        R                  " Xc5        UR                  b   eUR                  SU5        US   n[        R                  " Xd5        UR                  b   eSUl
        UR                  SU5        US   n[        R                  " Xe5        UR                  UR                  :X  d   eXUS:     nUR                  SS5      n[        R                  " Xg5        XUS:  UR                  S:  -     nUR                  SS5      n[        R                  " XgSS9  [        [        R                  R                  S5      R!                  S5      S/S9n[        R
                  " [#        U5      5      US'   SUS'   SUR$                  SS2S4'   UR'                  SS/SS9  UR)                  SS9n	U	R                  R+                  S5      U	l        UR                  S U	5        [        R                  " US    U	SS9  S S S 5        g s  snf ! , (       d  f       g = f)!Nr   i_)r   r   r   r   z
2020-01-01r   r1   d   sstsfoons<   zfoo>60F   Z   zfoo>70 and index<90Tr3   r   )r*   r$   Ar   r   Cbar   r*   inplace)future_stackmi)r   r   ranger7   float64rH   r
   r=   r>   assert_series_equalnameselectr   r   r8   r9   r:   lenrB   	set_indexstack	droplevel)
rI   rJ   irR   rS   rU   resultexpectedra   ss
             rL   test_append_seriesro   h   s]   	J	'5E"IRZZ%PR)7T)Q"QC)7TUIIb

+:lTV3W
 BIIcN#T2t
v*{{"""T2t
v*{{"""T2t
v*{{bgg%%% 2g;dH-
v0 Bw288b=12d$9:
v$G ryy,,Q/??GRUQVW))CG$33 qsCx
c3Z.HH$H'''##A&T1
uT{AEW 
(	'7T 
(	's   ,J>J9I)J>9J>>
Kc                    [        U 5       n[        [        [        R                  R                  S5      R                  S5      5      R                  S5      [        R                  R                  S5      R                  S5      [        R                  R                  S5      R                  S5      SS[        S5      R                  S5      [        S5      R                  S5      S	.[        R                  " S5      S
9n[        US5        [        R                  UR                  SS2/ SQ4'   UR                  SUS S 5        UR                  SUSS  5        [        R                   " US   USS9  UR#                  5       n[        R                  US'   [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                   " US   USS9  UR#                  5       n[        R                  US'   [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                   " US   USS9  UR#                  5       n[        R                  US'   [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                   " US   USS9  S S S 5        g ! , (       d  f       g = f)Nr   r   int32rT   r\   
2001-01-01rU   
2001-01-02)rY   A1A2r   r[   DEr1   r   r      )rt   r   rv   rw   r   Tr3   rt   ru   r    rw   r#   )r   r   r   r7   r8   r9   r:   astyper   as_unitrH   r   rA   rB   r=   r>   r?   copy)rI   rJ   r(   r   r    r#   s         rL   test_append_some_nansr|      sY   	J	'5BII11!4DDRHIPP ii++A.>>rBii++A.>>rB|,44T:|,44T:
 ))B-
 	eU#.0ffqt**+UBsG$UBrsG$
eElBF ggiFFD	eU#UCH%UCH%
eElC$G ggiFFD	eU#UCH%UCH%
eElC$G ggi66CeU#UCH%UCH%
eElC$GY 
(	'	's   J;K
Kc                 
   [        U 5       n[        [        R                  R	                  S5      R                  S5      [        R                  R	                  S5      R                  S5      S.[        R                  " S5      S9n[        R                  UR                  SS2S S 24'   [        US5        UR                  SUS S S	S
9  UR                  SUSS  S	S
9  [        R                  " US   USS  S	S9  [        US5        UR                  SUS S SS
9  UR                  SUSS  SS
9  [        R                  " US   US	S9  [        R                  " SS5         [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                  " US   U5        S S S 5        [        R                  " SS	5         [        US5        UR                  SUS S 5        UR                  SUSS  5        [        R                  " US   USS  5        [        [        R                  R	                  S5      R                  S5      [        R                  R	                  S5      R                  S5      SSS.[        R                  " S5      S9n[        R                  UR                  SS2S S 24'   [        US5        UR                  SUS S S	S
9  UR                  SUSS  S	S
9  [        R                  " US   US	S9  [        US5        UR                  SUS S SS
9  UR                  SUSS  SS
9  [        R                  " US   US	S9  [        [        R                  R	                  S5      R                  S5      [        R                  R	                  S5      R                  S5      SS[        S5      R!                  S5      [        S5      R!                  S5      S.[        R                  " S5      S9n[        R                  UR                  SS2S S 24'   [        US5        UR                  SUS S S	S
9  UR                  SUSS  S	S
9  [        R                  " US   US	S9  [        US5        UR                  SUS S SS
9  UR                  SUSS  SS
9  [        R                  " US   US	S9  S S S 5        S S S 5        g ! , (       d  f       GN-= f! , (       d  f       N)= f! , (       d  f       g = f)Nr   r   )rt   ru   r1   r   rx   r(   r   T)dropnar3   r    Fio.hdf.dropna_tabler#   df4rT   r\   )rt   ru   r   r[   rr   rU   rs   )rt   ru   r   r[   rv   rw   )r   r   r7   r8   r9   r:   rH   rA   rB   r   r=   r>   r?   pdoption_contextr   rz   rI   rJ   r(   s      rL   test_append_all_nansr      se   	J	'5ii++A.>>rBii++A.>>rB ))B-
 &&qtQw 	eT"T2cr740T2bc740
eDk2bc7TJ 	eU#UBsGE2UBrsGE2
eElBF 4e<%'LL3B(LL23(!!%,3	 = 4d;%'LL3B(LL23(!!%,238 ))//2BB2F))//2BB2F	 iimB !ffBFF1R47O%&LLr#2wtL4LLr"#wtL4!!%+rDI%'LL3BL6LL23L6!!%,TJ ))//2BB2F))//2BB2F"<088>"<088> iim
B !ffBFF1R47O%&LLr#2wtL4LLr"#wtL4!!%+rDI%'LL3BL6LL23L6!!%,TJk <; 
(	'. =< <;; 
(	's>   ES7AS.S7K6S&S7
S#	S7&
S4	0S77
Tc                    [        U 5       n[        [        R                  R	                  S5      R                  S5      [        [        S5      [        S9[        SSSS9S	9nUR                  R                  S 5      Ul
        [        US
5        UR                  S
UR                  S S 2S S24   S/S9  UR                  S
UR                  S S 2SS 24   5        [        R                   " US
   U5        UR#                  S
S5      nUR%                  S/S9n[        R                   " XC5        UR#                  S
S5      nUR%                  S/UR                  SS S	9n[        R                   " XC5        [&        R(                  " S5      n[*        R,                  " [.        US9   UR#                  S
S5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nr   r   r   r   r   r   r   r   r   r   r   r   )axes	columns=ArY   rZ   )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   r7   r8   r9   r:   r   r;   r<   r
   r   
_with_freqr   r=   ilocr>   r?   rf   reindexreescapepytestraises	TypeError)rI   rJ   r(   rl   rm   msgs         rL   !test_append_frame_column_orientedr     s   	J	'5II!!!$44W=$v,f5\2C@

 88&&t,eU#UBGGArrEN)=UBGGAqrEN+
eElB/e[1::se:,
h/ e%IJ::se288Aa=:A
h/ ii(
 ]]9C0LL AB 19 
(	'8 109 
(	's$   FGG2G
G	G
G"c                    [        U 5       n[        S5       H  n[        [        R                  R                  S5      R                  S5      [        S5      S9n[        S5      US'   US==   US-  -  ss'   [        S/[        U5      -  SS	9US'   [        S/[        U5      -  S
S	9US
'   US-  S:X  a  US	 [        S/[        U5      -  SS	9US'   US-  S:X  a  UR                  S5      nXCS'   UR                  SSS9  UR                  SU5        M     S S S 5        [        U 5       n[        [        R                  R                  S5      R                  S5      [        S5      SS9n[        S/[        U5      -  SS	9US'   [        S/[        U5      -  S
S	9US
'   UR                  SU5        [        S/[        U5      -  S
S	9US'   [        R                  " S5      n[        R                   " ["        US9   UR                  SU5        S S S 5        [        S/[        U5      -  SS	9US'   [        R                  " S5      n[        R                   " ["        US9   UR                  SU5        S S S 5        S S S 5        g ! , (       d  f       GNr= f! , (       d  f       N= f! , (       d  f       N:= f! , (       d  f       g = f)Nr   r   )r   r   ABrZ   r   r$   int64r   int16r   r]   rY   Tr^   r(   rc   )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   rb   r   r7   r8   r9   r:   r;   r   rg   poprh   r=   r   r   r   r   
ValueError)rI   rJ   rk   r(   ar   s         rL   )test_append_with_different_block_orderingr   >  sY   	J	'5rA		%%a(88A4PT:B  )BwKwK1r6!K !s2wg>BwK !s2wg>BwK1uzwK$aS3r7]'B71uzFF3K3LL$L/LLr"%  
(. 
J	'5II!!!$44W=J

 aS3r7]':7aS3r7]':7T2 sSW}G<9iiQ
 ]]:S1LLr" 2 us2wi@9iiO
 ]]:S1LLr" 2/ 
(	'/ 
(	'L 21 21/ 
(	'sJ   D
J)CJ59JAJ5J$0J5
J
J!	J5$
J2	.J55
Kc                   ^ [        U 5       mU4S jn[        SS/SS//5      nTR                  SU5        [        R                  " TR                  S5      U5        U" SSS5        [        S	S
/SS//5      nTR                  SU5        [        X#/5      n[        R                  " TR                  S5      U5        U" SSS5        [        SS/SS//5      nTR                  SUSS0S9  [        R                  " TR                  S5      U5        U" SSS5        TR                  SU5        [        S	S/SS//5      nSn[        R                  " [        US9   TR                  SU5        S S S 5        [        / SQ/ SQ[        / SQ[        S9[        SSS9S.5      R                  S5      nTR                  SUS    S!S"0S9  [        R                  " TR                  S5      US    5        TR                  S#US    S$S!S"0S%9  [        R                  " TR                  S#5      US    5        TR                  S&US'S!S(0S)9  UR!                  5       R#                  5       R%                  S*S+9R                  S5      nTR                  S&U5        [        R                  " TR                  S&5      [        X#/5      5        TR                  S,US    S'S!S(0S)9  TR                  S,US    5        [        R                  " TR                  S,5      [        US    US    /5      5        ['        TS-5        [        [(        R*                  R-                  S.5      R/                  S/5      [        [1        S05      [        S9[        S1S2S S39S49nS5US6'   [(        R2                  UR4                  UR6                  S7S" S64'   S8US9'   [(        R2                  UR4                  UR6                  S"S: S94'   S;US<'   [(        R2                  UR4                  UR6                  S7S  S<4'   TR                  S-U5        TR                  S-5      n[        R                  " Xr5        S S S 5        [        U 5       m[        S5S8S=.[9        S25      S>9n['        TS-5        TR                  S-US?S@0S9  W" S-S?S@5        TR;                  S-5      R<                  S?/:X  d   e['        TS-5        TR                  S-US /S?S@0S%9  U" S-S?S@5        TR;                  S-5      R<                  S S?/:X  d   e['        TS-5        TR                  S-US /SS@0S%9  U" S-S S@5        U" S-SAS@5        TR;                  S-5      R<                  S /:X  d   e['        TS-5        TR                  S-US S S@S9  TR                  S-USS  S@S9  [        R                  " TS-   U5        [        / SBQS?/SC9n['        TS-5        [>        R@                  " SD5      n[        R                  " [        US9   TR                  S-USESESF.S9  S S S 5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       N;= f! , (       d  f       g = f)GNc                    > [        TR                  U 5      R                  R                  U5      R                  U:X  d   eg Ngetattr
get_storerr!   descriptionitemsizekeyre   r,   rJ   s      rL   	check_col+test_append_with_strings.<locals>.check_colu  8    ((-33??FOOSWWW    {   	asdqwertyiY  dggnhebbsdfbdfbdf_bigvalues_block_1rx   |   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*   rP   )rY   r   r[   rv   r[   rR   r   r   r   ss2Tr6   r   ss3r!      )r"   r   longer)r[   ss4r(   r   r   r   r   r   r   r   rT   stringr$   r\   string2   bahstring3rY   r   r1   rY      values_block_0)rT   rT   rT   barhr   r   rZ   zBmin_itemsize has the key [foo] which is not an axis or data_columnr   )rT   foobar)!r   r   r=   r>   r?   rf   r	   r   r   r   r   r<   r
   rh   rd   r@   r{   reset_indexassignr   r7   r8   r9   r:   r;   rA   rB   r   rb   r   r6   r   r   )	rI   r   r(   r    rm   r   r   rl   rJ   s	           @rL   test_append_with_stringsr   r  s   	J	'5	 k*S2C,DEFXr"
ell84b9(,b1 #w#})=>?Xs#2)$
ell84h?(,b1 k*S2C,DEFY(B@
ell95r:)-r2 	Xr"S,/#7S1TUV 	 ]]:S1LL6* 2 ..C6R
A6	
 )C. 	 	T2c7'1>
u||D12c7; 	UBsG$gq\R
u||E2BsG< 			%G7A,	Gggi##%,,x,8BB3GUC 
ell5162)3DE 			%C|	LUCH%
u||E2FBsGSX;N4OP 	eT"II!!!$44W=$v,f5\2C@

 8*,&&rxx!}h&'9+-66rxx!}i'(9*,&&rxx|Y&'T2d#
f)e 
(h 
J	'5U/uRyA 	eT"T2S#J7$S!%22se;;; 	eT"T2SEc
K$S!%22sCj@@@ 	eT"T2SE3P$S!$(#.%22se;;; 	eT"T2bq64T2ab64
eDk2. DseTeT"iiP
 ]]:S1LLrb0ILJ 2E 
(	'a 21I 
(	'l 21E 
(	'sJ   EX3X!+K X3FY;YY!
X0	+X33
Y
Y	Y
Y$c                    [        U 5       n[        S/ SQ05      nUR                  SUS S SS0S9  UR                  SUSS  SS0S9  [        R                  " UR                  S5      U5        S S S 5        g ! , (       d  f       g = f)Nx)r   bcdef r(   r$   r   )r   r   r=   r>   r?   rf   r   s      rL   test_append_with_empty_stringr     sy    	J	'5?@AT2cr7#q:T2bc7#q:
ell40"5 
(	'	's   A"A77
Bc                   ^	 [        U 5       m	[        [        R                  R	                  S5      R                  S5      [        [        S5      [        S9[        SSSS9S	9nS
UR                  SUR                  R                  S5      4'   [        T	S5        T	R                  SUS S S/S9  T	R                  SUSS  5        [        R                   " T	S   U5        T	R"                  R$                  R&                  R(                  R*                  R,                  R.                  SL d   eT	R"                  R$                  R&                  R(                  R*                  R0                  R.                  SL d   eT	R3                  SS5      nXR0                  S:     n[        R                   " X#5        T	R3                  SS5      nUR5                  UR,                  SS  S9nXDR0                  S:     n[        R                   " X#5        UR7                  5       nSUS'   [        R8                  UR:                  UR,                  SS S4'   SUR:                  UR,                  SS S4'   [        T	S5        T	R                  SUS/S9  T	R3                  SS5      nXDR<                  S:H     n[        R                   " X#5        U	4S jnS S S 5        [        U 5       m	[        T	S5        T	R                  SWS/SS0S9  W" SSS5        [        T	S5        T	R                  SUS/SS9  U" SSS5        [        T	S5        T	R                  SUS/SS0S9  U" SSS5        S S S 5        [        U 5       m	SWS'   S US!'   S"US#'   [        T	S5        T	R                  SUSS/SS$S%S&.S9  W" SSS5        U" SSS$5        U" SS'S%5        S S S 5        [        U 5       m	WR7                  5       nS
UR                  SUR                  R                  S(5      4'   S)UR                  SUR                  R                  S5      4'   SUS'   UR                  R                  S5      n[        R8                  UR                  SS2U4'   SUR                  SS2U4'   SUS'   UR                  R                  S5      n[        R8                  UR                  SS2U4'   SUR                  S*S+2U4'   [        T	S5        T	R                  SU/ S,QS9  T	R3                  SS-5      nUUR<                  S:H  UR>                  S:H  -  UR@                  S:  -  UR0                  S:  -     n[        R                   " X#S.S/9  T	R3                  SS05      nXDR<                  S:H  UR>                  S1:H  -     n[        R                   " X#5        S S S 5        [        U 5       m	WR7                  5       nSUS'   [        R8                  UR:                  UR,                  SS S4'   SUR:                  UR,                  S*S2 S4'   S1US'   [C        S35      RE                  S45      US5'   [        R8                  UR:                  UR,                  S6S / S7Q4'   [        T	S85        T	R                  S8U/ S9QS9  T	R3                  S8S5      nXwR0                  S:     n[        R                   " X#5        T	R3                  S8/ S:Q5      nXwR0                  S:  URF                  S:  -  UR<                  S:H  -     n[        R                   " X#S.S/9  S S S 5        [        U 5       m	[        S;S+S<9n[        [        R                  R	                  S5      R                  S=5      U/ S>QS?9nSUS'   [        R8                  UR:                  UR,                  SS S4'   SUR:                  UR,                  S*S2 S4'   USS@/   RI                  5       USS@/'   S1US'   T	R                  S8U/ SAQS9  T	R3                  S8S5      nXwR0                  S:     n[        R                   " X#5        T	R3                  S8/ SBQ5      nXwR0                  S:  URF                  S:  -  UR<                  S:H  -     n[        R                   " X#5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GNY= f! , (       d  f       GN= f! , (       d  f       GN'= f! , (       d  f       GN= f! , (       d  f       g = f)CNr   r   r   r   r   r   r   r   r   r   r   r(   r5   TB>0zB>0 and index>df.index[3]r   r1   rT   r   r$   r\   r*   r   zstring='foo'c                    > [        TR                  U 5      R                  R                  U5      R                  U:X  d   eg r   r   r   s      rL   r   0test_append_with_data_columns.<locals>.check_col  r   r      r   r   	foobarbahr   
foobarbah1string_block1
foobarbah2string_block2(   r   )r   r   r   r   rY   g         r   )rY   r   r   r   z.string='foo' and string2='foo' and A>0 and B<0F)
check_freqzstring='foo' and string2='cool'cool	   20010102rU   datetimer]   )rY   r   r   df_dc)r   r[   r   r   r   )B > 0C > 0zstring == fooz1/1/2000rP   )r   r]   )rY   r   r[   )r   r   r[   )r   r[   r   r   )r   r   zstring == "foo")%r   r   r7   r8   r9   r:   r   r;   r<   r
   r   r   get_locr   r=   r>   r?   _handlerootr(   r!   colsr   
is_indexedr   rf   r   r{   rA   rB   r   r   rY   r   rz   r[   abs)
rI   r(   rl   rm   r   r   slr   r   rJ   s
            @rL   test_append_with_data_columnsr     s   	J	'5II!!!$44W=$v,f5\2C@

 /22::%%c**+eT"T2bq66T2ab6"
eDk2. }}!!$$**//55@@DHHH}}!!$$**//11<<DDD dE*ddQh<
f/ d$?@"((12,/((Q,'
f/  x24&&

6<<!$h./27

6<<!$h./eT"T6
;dN3--501
f/	O 
(X 
J	'5eT"T6
(TVX$"%eT"T6
L$"%eT"T6
(TVX$"% 
( 
J	'5'y".".eT""I.$&2D	 	 	
 	$"%$	2&$("- 
( 
J	'569Av~~--c2236:Av~~--c223 x^^##H-!vvAaCG$AaCG!y^^##I.!vvAaCG$AaCGeT"T60OPd$TU]]e#~~&(xx!| xx!|
 	f5A d$EF==E1fnn6NOP
f/= 
(@ 
J	'5	h02		%++a"H,-05		%++a"H,-!i%j199$?j>@ff		%++a"$::;eW%U)T 	 	
 gu-1%
f/g'JK''A+%''A+6%,,%:OPQ
f5A+ 
(2 
J	'5 :q1II!!!$44V<#

  h02		%++a"H,-05		%++a"H,-!3*-113sCj!i 	We2QRgu-1%
f/g'LM''A+%''A+6%,,%:OPQ
f/1 
(	' 
(	'X 
(	' 
(	' 
(	'@ 
(	'2 
(	'sM   J4bB b&'Ab8Gc
=E"c2Ec.
b#&
b58
c

c
c+.
c<c                    UnS UR                   l        [        U5       nUR                  SU5        UR	                  S5      n[
        R                  " XS5        UR	                  SSS/S9nUR                  SS/S9n[
        R                  " XV5        S S S 5        U S-  nUR                  USSS9  [        USSS/S9nUR                  SS/S9n[
        R                  " XV5        g ! , (       d  f       NY= f)	Nra   rY   r   rZ   ztest.hdfr(   r!   )r   r"   )
r   re   r   r=   rf   r>   r?   r   to_hdfr   )tmp_pathrI    multiindex_dataframe_random_datar(   rJ   rl   rm   paths           rL   test_append_hierarchicalr    s    	)BBJJO	J	'5T2d#
f) dS#J7::sCj:1
f/ 
( j DIIdWI-dD3*5Fzz3*z-H&+ 
(	's   A3C%%
C3c                    [        U 5       n[        S[        R                  " S5      R	                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9nUR                  S	US
S9  UR                  S	5      n[        R                  " XC5        UR                  SUSS9  UR                  S5      n[        R                  " XC5        S S S 5        g s  snf ! , (       d  f       g = f)N皙?x   r   r   r   r   r   i-r   r(   r$   	chunksizer   r   )expectedrows)r   r   r7   rH   reshaper   r;   r<   rb   r=   rf   r>   r?   )rI   rJ   rk   r(   rl   s        rL   test_append_miscr    s    	J	'5"))C.((11$v,f55959a2aS95VD

 	T2+d#
f)UBR0e$
f) 
(	' 6	 
(	's   AC:!C50A<C:5C::
Dr  )r   r   i  c                 n   [        S[        R                  " S5      R                  S5      -  [	        [        S5      [        S9[	        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9nS	US
'   SUS'   US   R                  S5      US'   US   S:  US'   [        S5      R                  S5      US'   [        S5      R                  S5      US'   [        U SS9 nUR                  SX1S9  UR                  S5      n[        R                  " XS5        S S S 5        g s  snf ! , (       d  f       g = f)Nr  r  r  r   r   r   r	  r   rT   r   r   float322float32r   boolr   rU   time120130102time2w)modeobjr
  )r   r7   rH   r  r   r;   r<   rb   ry   r   rz   r   r=   rf   r>   r?   )rI   r  rk   r(   rJ   rl   s         rL   test_append_misc_chunksizer    s    
biin$$W--d6l&1uRy1y!r!Xy1@
B
 BxLBzN
^**95BzNJ!#BvJJ'//5BwKJ'//5BwK	JS	1UUB4e$
f) 
2	1 2 
2	1s   D! 8D&&
D4c                    [        U 5       n[        [        S5      S9nUR                  SU5        [        R
                  " [        SS9   UR                  S5        S S S 5        [        [        R                  R                  S5      R                  S5      [        S5      S9nUR                  SU5        [        R                  " UR                  S5      U5        UR                  SU5        [        R                  " UR                  S5      U5        [        [        S5      S9nUR                  SU5        [        R                  " UR                  S5      U5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       g = f)	NABCrZ   r(   z 'No object named df in the file'r   r   )r   r]   r    )r   r   r;   r=   r   r   KeyErrorrf   r7   r8   r9   r>   r?   r@   )rI   rJ   df_emptyr(   s       rL   test_append_misc_empty_framer    s   	J	'5T%[1T8$]]8+MNLL O ryy,,Q/66w?eUT2
ell40"5T8$
ell40"5 tE{+		%
ell5126# 
(	' ON	 
(	's$   >E8
E&DE8&
E5	0E88
Fc                 *
   [        U 5       n[        S[        R                  " S5      R	                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9nS	//[        U5      -  US
'   UR                  S
   [        R                  :X  d   e[        R                  " S5      n[        R                  " [         US9   UR#                  SU5        S S S 5        S	//[        U5      -  US'   S	//[        U5      -  US'   [        R                  " [         US9   UR#                  SU5        S S S 5        [        S[        R                  " S5      R	                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9n[%        [&        R&                  " SSS5      UR(                  S9nUR+                  [        5      n[        R,                  USS& XSS
'   UR                  S
   [        R                  :X  d   eSn[        R                  " [         US9   UR#                  SU5        S S S 5        Sn[        R                  " [         US9   UR#                  S[        R                  " S5      5        S S S 5        [        R                  " S5      n[        R                  " [         US9   UR#                  S[%        [        R                  " S5      5      5        S S S 5        [        S[        R                  " S5      R	                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9nUR#                  SU5        SUS'   [        R                  " S5      n[        R                  " [.        US9   UR#                  SU5        S S S 5        [1        US5        [3        S5      US'   UR#                  SU5        SUS'   [        R                  " S5      n[        R                  " [.        US9   UR#                  SU5        S S S 5        S S S 5        g s  snf ! , (       d  f       GN= f! , (       d  f       GNI= fs  snf ! , (       d  f       GNB= f! , (       d  f       GN
= f! , (       d  f       GN= fs  snf ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr  r  r  r   r   r   r	  r   r   invalidziCannot serialize the column [invalid]
because its data contents are not [string] but [mixed] object dtyper   r(   invalid2invalid3i  r$   r   r1   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'>]rT   zinvalid combination of [non_index_axes] on appending data [(1, ['A', 'B', 'C', 'D', 'foo'])] vs current table [(1, ['A', 'B', 'C', 'D'])]r   r\   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   r7   rH   r  r   r;   r<   rb   rg   dtypesobject_r   r   r   r   r   r=   r   r   r   ry   rA   r   r   r   )rI   rJ   rk   r(   r   rn   s         rL   test_append_raiser%    s   	J	'5 "))C.((11$v,f55959a2aS95VD

 #b')9yy#rzz111iiG
 ]]9C0LLr" 1 %3r7*:%3r7*:]]9C0LLr" 1 "))C.((11$v,f55959a2aS95VD

 8$$T1a0AHHV!A9yy#rzz111N]]9C0LLr" 1 9]]9C0LLryy}- 1 iiE
 ]]9C0LLvbiim45 1 "))C.((11$v,f55959a2aS95VD

 	T25	ii*

 ]]:S1LLr" 2 	eT"j)5	T25	iiD
 ]]:S1LLr" 2e 
(	' 6 10 10 6 10
 10 10 6 21  21e 
(	's   AT!Q90A1T!Q>4AT;RAT*R"9B TR',#T'R967T-0SAT9SATS"-A(TS3(T9T>
R	T
R	T'
R6	1T9
S	T
S	T"
S0	,T3
T	=T
Tc                    [        S5      R                  S5      n[        U[        S5       Vs/ s H  o![	        USS9-   PM     snS.5      nUS   US   -
  US'   [
        R                  UR                  S	S
2S4'   [        U 5       n[        US5        UR                  SUSS9  UR                  S5      n[        R                  " XS5        UR                  SSS9n[        R                  " XS5        UR                  SSS9n[        R                  " XSR                  S	S  5        UR                  SS5      n[        R                  " XSR                  S	S  5        UR                  SS5      nUR                  S/S9n[        R                  " XSR                  SS  5        UR                  SS5      nUR                  SS  n[        R                  " XSR                  SS  5        [        US5        UR!                  SU5        UR                  S5      n[        R                  " XS5        S S S 5        g s  snf ! , (       d  f       g = f)Nr   rU   r   )dayssecondsr   rY   r   r[   r]   r*   r(   Tr5   zC<100000)wherezC<pd.Timedelta('-3D')zC<'-3D'zC<'-500000s')subsetr   z	C<'-3.5D'r$   r   r    )r   rz   r   rb   r   r7   rA   rB   r   r   r=   rf   r>   r?   r   r~   r@   )rI   rS   rk   r(   rJ   rl   s         rL   test_append_with_timedeltar+  ;  s    
:		&	&t	,B	>CBiHiya44iH	

B g3BsGvvBFF1Q38	J	'5eT"T2D1d#
f)d*5
f)d*AB
fggabk2dI.
fggabk2 dN3se,
fggabk2dK0QR
fggabk2 	eU#		%e$
f)= 
(	' I 
(	's   H1
F!H66
Ic           
         [        [        R                  R                  S5      R	                  S5      [        [        S5      [        S9[        SSSS9S	9nUR                  5       R                  S
R                  S9nSUS'   [        X/SS9n[        U 5       nSn[        R                  " [         US9   UR#                  SS/S S.USS9  S S S 5        [        R                  " [         US9   UR#                  S S S.USS9  S S S 5        Sn[        R                  " [         US9   UR#                  SUS5        S S S 5        UR#                  SS/S S.USS9  UR%                  SS/SS/SS9nX3R&                  S:  UR(                  S:  -     n[*        R,                  " Xg5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr   r   r   r   r   r   r   r   r   {}_2rZ   r\   rT   r$   axisz=append_to_multiple requires a selector that is in passed dictr   rY   r   r    r#   )selectorzQappend_to_multiple must have a dictionary specified as the way to split the valuer   r    zA>0r   )r)  r1  r   )r   r7   r8   r9   r:   r   r;   r<   r
   r{   renamer"   r	   r   r   r   r   append_to_multipleselect_as_multiplerY   r   r>   r?   )rI   r   r    r(   rJ   r   rl   rm   s           rL   test_append_to_multipler5  j  s   

		a 009d6l&1r<C
 ((*

FMM

2CCJ	
	#B	J	'5M]]:S1$$c
40"u %  2
 ]]:S1$$T$%?e$T 2 	 ]]:S1$$UB6 2 	  #sD!A2PU V))EN5%.5 * 
 ttaxBDD1H-.
f/1 
(	' 21
 21 21 
(	'sU   G4F+!G,F<#G$G8A*G+
F9	5G<
G
	G
G	G
G,c           
         [        [        R                  R                  S5      R	                  S5      [        [        S5      [        S9[        SSSS9S	9n[        [        R                  R                  S5      R	                  S5      [        [        S5      [        S9[        SSSS9S	9R                  S
R                  S9n[        R                  UR                  SUR                  R                  SS/5      4'   [        X/SS9n[!        U 5       nUR#                  SS/S S.USSS9  UR%                  SS/5      nUR'                  5       n[(        R*                  " XVSS9  [(        R,                  " UR/                  S5      R0                  UR/                  S5      R0                  5        S S S 5        g ! , (       d  f       g = f)Nr   r   r   r   r   r   r   r   r   r-  rZ   r$   rY   r.  r0  r   Tr1  r~   r    r3   )r   r7   r8   r9   r:   r   r;   r<   r
   r2  r"   rA   r   r   get_indexerr	   r   r3  r4  r~   r>   r?   assert_index_equalrf   r   )rI   r   r    r(   rJ   rl   rm   s          rL   test_append_to_multiple_dropnar:    so   

		a 009d6l&1r<C
 
		a 009d6l&1r< fV]]f#	 
 8:vvCHHQ''c
334	
	#B	J	'5  #Jt,b5 	! 	
 ))5%.999;
fF
ell5177e9L9R9RS 
(	'	's   BF44
Gc           
         [        [        R                  R                  S5      R	                  S5      [        [        S5      [        S9[        SSSS9S	9nUR                  5       R                  S
R                  S9n[        R                  UR                  SUR                  R                  SS/5      4'   [!        X/SS9n[#        U 5       n[$        R&                  " SS5         UR)                  SS/S S.USSS9  Sn[*        R,                  " [.        US9   UR1                  SS/5        S S S 5        UR3                  S5      R4                  R7                  UR3                  S5      R4                  5      (       a   e S S S 5        S S S 5        g ! , (       d  f       Nj= f! , (       d  f       N(= f! , (       d  f       g = f)Nr   r   r   r   r   r   r   r   r   r-  rZ   r$   rY   r.  r   T)df1adf2ar<  Fr7  z,all tables must have exactly the same nrows!r   r=  )r   r7   r8   r9   r:   r   r;   r<   r
   r{   r2  r"   rA   r   r   r8  r	   r   r   r   r3  r   r   r   r4  rf   r   equals)rI   r   r    r(   rJ   r   s         rL   $test_append_to_multiple_dropna_falser?    sj   

		a 009d6l&1r<C
 ((*

FMM

2C79vvCHHQ''c
334	
	#B	J	'5"2C2Ct3 	  3Z.VE 	! 	
 =]]:S1$$ff%56 2 <<'--44U\\&5I5O5OPPPPP3	'	' 213 3	'	's=   F2%3F!F,AF!?F2
FF!!
F/	+F22
G c           
      :   [        [        R                  " SS5      [        R                  " SS5      [        R                  " SS5      S-  [        S5       Vs/ s H  nSPM     sn[        S5       Vs/ s H  nSPM     snS.5      nUR                  S/   n[        U 5       nUR                  S	/S
S/SS/S.UR                  S/   SSSSS.S9  UR                  / SQ5      n[        R                  " XSSS9  S S S 5        g s  snf s  snf ! , (       d  f       g = f)Nr$      X   r   r   abcde)IXNumBigNumStrLongStrr   rD  rE  rF  rG  rH  )r   numsstrsr   r   rQ   r   )rG  rH  rE  r   Tr3   )
r   r7   rH   rb   r   r   r3  r4  r>   r?   )rI   _r(   rm   rJ   rl   s         rL   $test_append_to_multiple_min_itemsizerL    s   	))Ar"99Q#ii2&+!&r+AC+).r3A3	

B wws|H	J	'5  )	*
 GGQCL!#A> 	! 		
 ))*CD
fF 
(	' ,3
 
(	's   D3D#AD
D)4r   r   r   numpyr7   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   filterwarningsrM   ro   r|   r   r   r   r   r   r   r  r  parametrizer  r  &skip_array_manager_not_yet_implementedr%  r+  r5  r:  r?  rL   r   rL   <module>r]     s%     	   ) ) )   
 [[##
			X	& ?@EP AEPP,F^-H`SKlCB1#hxKv6X0v,**  o6* 7*&72 **T# +T#n,*^"0JT2Q2Gr   