U
    `»{jðƒ  ã                   @   s\  d dl Z d dl mZ d dlZd dlmZ d dlZd dlZd dlm	Z	 d dl
m  mZ d dlZd dlmZmZmZmZmZmZ d dlmZmZmZ ejjZej d¡dd	„ ƒZd
d„ Z dd„ Z!dd„ Z"dd„ Z#dd„ Z$dd„ Z%dd„ Z&dd„ Z'dd„ Z(dd„ Z)ej *ddd d!g¡d"d#„ ƒZ+d$d%„ Z,ej-d&d'„ ƒZ.d(d)„ Z/d*d+„ Z0d,d-„ Z1d.d/„ Z2d0d1„ Z3dS )2é    N)Ú	timedelta)Úcatch_warnings)Ú	Timestamp)Ú	DataFrameÚSeriesÚ_testingÚconcatÚ
date_rangeÚread_hdf)Ú_maybe_removeÚensure_clean_pathÚensure_clean_storez7ignore:object name:tables.exceptions.NaturalNameWarningc                 C   sp  t | ƒ��\}tdd���D t ¡ }t|dƒ | d|d d… ¡ | d|dd … ¡ t |d |¡ t|dƒ |jd|d d… dd� | d|dd … ¡ t |d |¡ t|dƒ | d	|d d… ¡ | d	|dd … ¡ t |d |¡ t|d
ƒ | d
|d d… ¡ | d
|dd … ¡ t |d |¡ tddgddgddgddggd�}d|d< t	j
|jd< t|dƒ | d|¡ t |d |¡ ttt	jjdddd�t	jd�tt	jjdddd�t	jd�tt	jjdddd�t	jd�tdddddgt	jd�dœt	 d¡d �}t|d!ƒ | d!|¡ t |d! |¡ t|d!ƒ |jd!|d"d#d$gd%� t |d! |¡ W 5 Q R X W 5 Q R X d S )&NT©ÚrecordÚdf1é
   Údf2Útable©ÚformatÚdf3z/df3z/df3 foozdf3 fooé   é   r   )ÚdataZtestingÚmixed_column)r   r   Údféÿ   é   )ÚhighÚsize©Údtypeiÿÿ  i   @l           l          @l            l            l            )Úu08Úu16Úu32Zu64©ÚindexZuintsr"   r#   r$   ©Údata_columns)r   r   ÚtmÚmakeTimeDataFramer   ÚappendÚassert_frame_equalÚputr   ÚnpÚnanÚlocr   ÚrandomÚrandintZuint8Zuint16Zuint32Zuint64Úarange)Ú
setup_pathÚstorer   Z	uint_data© r6   úc/var/www/html/bwave/python/venv/lib/python3.8/site-packages/pandas/tests/io/pytables/test_append.pyÚtest_append   sf    



"
 ÿ ÿ ÿþöð

r8   c           	   	   C   s¤  t | ƒ���}t ¡ }t ¡ }tt d¡ƒ}| d|¡ |d }t ||¡ |j	d ksXt
‚| d|¡ |d }t ||¡ |j	d ks†t
‚d|_	| d|¡ |d }t ||¡ |j	|j	ks¼t
‚||dk }| dd¡}t ||¡ ||dk|jd	k @  }| dd
¡}t ||¡ ttj dd¡dgd�}t t|ƒ¡|d< d|d< d|jdd…df< |jddgdd� | ¡ }|j d¡|_| d|¡ t |d |¡ W 5 Q R X d S )Néd   ÚssÚtsÚfooÚnsé<   zfoo>60éF   éZ   zfoo>70 and index<90r   r   ÚA©ÚcolumnsÚBÚCÚbaré   T©Zinplacer   Úmi)r   r)   ZmakeStringSeriesZmakeTimeSeriesr   r.   r3   r+   Úassert_series_equalÚnameÚAssertionErrorÚselectr&   r   r1   ÚrandnÚlenr0   Ú	set_indexÚstackZ	droplevel)	r4   r5   r:   r;   r=   ÚresultÚexpectedrI   Úsr6   r6   r7   Útest_append_seriesd   s@    rU   c                 C   sÊ  t | ƒ��¶}tttj d¡ƒ d¡tj d¡tj d¡ddtdƒt dddd	d	¡d
œt 	d¡d�}t
|dƒ tj|jd	d…ddddgf< | d|d d… ¡ | d|dd … ¡ t |d |¡ | ¡ }tj|d< t
|dƒ | d|d d… ¡ | d|dd … ¡ t |d |¡ | ¡ }tj|d< t
|dƒ | d|d d… ¡ | d|dd … ¡ t |d |¡ | ¡ }tj|d< t
|dƒ | d|d d… ¡ | d|dd … ¡ t |d |¡ W 5 Q R X d S )Né   Zint32r<   rF   Ú20010101éÑ  r   r   r   )rA   ÚA1ÚA2rD   rE   ÚDÚEr%   r   é   rY   rD   r[   r\   r   rZ   r   r   )r   r   r   r.   r1   rN   Úastyper   Údatetimer3   r   r/   r0   r+   r)   r,   Úcopy)r4   r5   r   r   r   r   r6   r6   r7   Útest_append_some_nans“   sF    

ù	ö






ra   c                 C   sz  t | ƒ��f}ttj d¡tj d¡dœt d¡d�}tj|jdd…d d …f< t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |d
d … ¡ t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |¡ t dd¡�H t|dƒ | 	d|d d… ¡ | 	d|dd … ¡ t
 |d |¡ W 5 Q R X t dd¡�� t|dƒ | 	d|d d… ¡ | 	d|dd … ¡ t
 |d |d
d … ¡ ttj d¡tj d¡dddœt d¡d�}tj|jdd…d d …f< t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |¡ t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |¡ ttj d¡tj d¡ddtdƒt ddddd¡dœt d¡d�}tj|jdd…d d …f< t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |¡ t|dƒ |j	d|d d… dd	� |j	d|dd … dd	� t
 |d |¡ W 5 Q R X W 5 Q R X d S )NrV   )rY   rZ   r%   r   r]   r   r   T)Údropnaéüÿÿÿr   Fúio.hdf.dropna_tabler   Zdf4r<   rF   )rY   rZ   rD   rE   rW   rX   r   r   )rY   rZ   rD   rE   r[   r\   )r   r   r.   r1   rN   r3   r/   r0   r   r+   r)   r,   ÚpdÚoption_contextr   r_   ©r4   r5   r   r6   r6   r7   Útest_append_all_nansÂ   sx    þ





üù




ú÷

rh   c              
   C   s  t | ƒ�� }t ¡ }|j d ¡|_t|dƒ |jd|jd d …d d…f dgd� | d|jd d …dd …f ¡ t |d |¡ | 	dd¡}|j
dgd�}t ||¡ | 	dd¡}|j
dg|jd	d
… d�}t ||¡ t d¡}tjt|d�� | 	dd¡ W 5 Q R X W 5 Q R X d S )Nr   r   rC   )Zaxesú	columns=ArA   rB   )ri   zindex=df.index[0:4]r   é   )rC   r&   zOpassing a filterable condition to a non-table indexer [Filter: Not Initialized]©Úmatchzcolumns=A and index>df.index[4])r   r)   r*   r&   Z
_with_freqr   r+   Úilocr,   rM   ÚreindexÚreÚescapeÚpytestÚraisesÚ	TypeError)r4   r5   r   rR   rS   Úmsgr6   r6   r7   Ú!test_append_frame_column_oriented  s$    
$ÿru   c              
   C   sü  t | ƒ�æ}tdƒD ]Ö}ttj dd¡tdƒd�}tdƒ|d< |d  |d 7  < tdgt|ƒ dd�|d< tdgt|ƒ d	d�|d	< |d d
kr°|d= tdgt|ƒ dd�|d< |d d
krÎ| 	d¡}||d< |j
ddd� | d|¡ qW 5 Q R X t | ƒ�ö}ttj dd¡tdƒdd�}tdgt|ƒ dd�|d< tdgt|ƒ d	d�|d	< | d|¡ tdgt|ƒ d	d�|d< t d¡}tjt|d�� | d|¡ W 5 Q R X tdgt|ƒ dd�|d< t d¡}tjt|d�� | d|¡ W 5 Q R X W 5 Q R X d S )Nr   r   ZABrB   r&   r   Zint64r    Zint16r   rG   rA   TrH   r   Zfloat64)rC   r!   Zint16_2zCcannot match existing table structure for [int16] on appending datark   ç      ð?Zfloat_3zAcannot match existing table structure for [A,B] on appending data)r   Úranger   r.   r1   rN   Úlistr   rO   ÚpoprP   r+   ro   rp   rq   rr   Ú
ValueError)r4   r5   Úir   Úart   r6   r6   r7   Ú)test_append_with_different_block_ordering5  s@    


ÿÿr}   c                    sº  t | ƒ��ê‰ tdd���Ò ‡ fdd„}tddgddggƒ}ˆ  d	|¡ t ˆ  d	¡|¡ |d	d
dƒ tddgddggƒ}ˆ  d	|¡ t||gƒ}t ˆ  d	¡|¡ |d	d
dƒ tddgddggƒ}ˆ jd|ddid� t ˆ  d¡|¡ |dd
dƒ ˆ  d|¡ tddgddggƒ}d}tj	t
|d�� ˆ  d|¡ W 5 Q R X t ¡  d¡}ˆ jd|d ddid� t ˆ  d¡|d ¡ ˆ jd|d dddid� t ˆ  d¡|d ¡ ˆ jd |d!dd"id#� | ¡  ¡ jd$d%� d¡}ˆ  d |¡ t ˆ  d ¡t||gƒ¡ ˆ jd&|d d!dd"id#� ˆ  d&|d ¡ t ˆ  d&¡t|d |d gƒ¡ tˆ d'ƒ t ¡ }d(|d)< tj|j|jd*d… d)f< d+|d,< tj|j|jdd-… d,f< d.|d/< tj|j|jd*d … d/f< ˆ  d'|¡ ˆ  d'¡}t ||¡ W 5 Q R X W 5 Q R X t | ƒ��¬‰ ‡ fd0d„}td(d+d1œtd2ƒd3�}tˆ d'ƒ ˆ jd'|d4d5id� |d'd4d5ƒ ˆ  d'¡jd4gk�sjt‚tˆ d'ƒ ˆ jd'|dgd4d5id� |d'd4d5ƒ ˆ  d'¡jdd4gk�s²t‚tˆ d'ƒ ˆ jd'|dgdd5id� |d'dd5ƒ |d'd6d5ƒ ˆ  d'¡jdgk�st‚tˆ d'ƒ ˆ jd'|d d7… d5d� ˆ jd'|d7d … d5d� t ˆ d' |¡ td(d(d(d8d8d8gd4gd9�}tˆ d'ƒ t d:¡}tj	t
|d�� ˆ jd'|d;d;d<œd� W 5 Q R X W 5 Q R X d S )=NTr   c                    s"   t ˆ  | ¡jj|ƒj|kst‚d S ©N©ÚgetattrÚ
get_storerr   ÚdescriptionÚitemsizerL   ©ÚkeyrK   r   ©r5   r6   r7   Ú	check_coll  s    ÿÿz+test_append_with_strings.<locals>.check_colé{   Z	asdqwertyiY  ZdggnhebbsdfbdfbZdf_bigÚvalues_block_1r]   é|   ZasdqyiZ  ZdggnhefbdfbZdf_big2Úvaluesé2   ©Úmin_itemsizeÚdf_newZ
abcdefqhijZabcdefghijklmnopqrtsuvwxyzz¯Trying 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 columnsrk   rE   r:   rD   r&   rj   Zss2©r(   rŽ   Zss3r   é   )r   rŽ   Zlonger)rE   Zss4r   r<   Ústringr   rF   Ústring2é   ZbahZstring3c                    s"   t ˆ  | ¡jj|ƒjst|ƒ‚d S r~   r   r„   r†   r6   r7   r‡   ¸  s    ©rA   rD   r   r%   rA   éÈ   Zvalues_block_0r   ZbarhrB   zBmin_itemsize has the key [foo] which is not an axis or data_columnrV   )r<   Zfoobar)r   r   r   r+   r)   r,   rM   r   rq   rr   rz   ZmakeMixedDataFramerP   rJ   r-   r`   Zreset_indexZassignr   r*   r.   r/   r0   r&   rw   r�   r(   rL   ro   rp   )r4   r‡   r   r   rS   r�   rt   rR   r6   r†   r7   Útest_append_with_stringsg  s”    ÿÿ"

 




ÿr—   c              
   C   s|   t | ƒ�j}tddddddddgiƒ}|jd	|d d
… ddid� |jd	|d
d … ddid� t | d	¡|¡ W 5 Q R X d S )NÚxr|   ÚbÚcÚdÚeÚfÚ r   éÿÿÿÿr   r�   )r   r   r+   r)   r,   rM   rg   r6   r6   r7   Útest_append_with_empty_stringà  s
    
r    c           	   	      sZ  t | ƒ��’‰ t ¡ }d|jd|j d¡f< tˆ dƒ ˆ jd|d d… dgd� ˆ  d|dd … ¡ t ˆ d |¡ ˆ j	j
jjjjjdksŒt‚ˆ j	j
jjjjjdks¦t‚ˆ  dd¡}||jdk }t ||¡ ˆ  dd	¡}|j|jd
d … d�}||jdk }t ||¡ | ¡ }d|d< tj|j|jdd
… df< d|j|jdd… df< tˆ dƒ ˆ jd|dgd� ˆ  dd¡}||jdk }t ||¡ ‡ fdd„}W 5 Q R X t | ƒ�Œ‰ tˆ dƒ ˆ jd|dgddid� |dddƒ tˆ dƒ ˆ jd|dgdd� |dddƒ tˆ dƒ ˆ jd|dgddid� |dddƒ W 5 Q R X t | ƒ�j‰ d|d< d|d< d|d< tˆ dƒ ˆ jd|ddgdddd œd� |dddƒ |dddƒ |dd!dƒ W 5 Q R X t | ƒ��H‰ | ¡ }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ƒ ˆ jd|d"dddgd� ˆ  dd&¡}||jdk|jdk@ |jdk@ |jdk @  }tj||d'd(� ˆ  dd)¡}||jdk|jd*k@  }t ||¡ W 5 Q R X t | ƒ��‰ | ¡ }d|d< tj|j|jd
d… df< d|j|jd$d+… df< d*|d< td,ƒ|d-< |jdd.�}tj|j|jd/d… d"dd-gf< tˆ d0ƒ ˆ jd0|dd1ddd-gd� ˆ  d0d¡}||jdk }t ||¡ ˆ  d0d2d3d4g¡}||jdk|jdk@ |jdk@  }tj||d'd(� W 5 Q R X t | ƒ��‰ tj d5¡ t d6d%d7�}t!tj "d%d/¡|d"dd1gd8�}d|d< tj|j|jd
d… df< d|j|jd$d+… df< |dd1g  #¡ |dd1g< d*|d< ˆ jd0|dd1ddgd� ˆ  d0d¡}||jdk }t ||¡ ˆ  d0d2d3d9g¡}||jdk|jdk@ |jdk@  }t ||¡ W 5 Q R X d S ):Nrv   r   rD   r   r   r'   TúB>0zB>0 and index>df.index[3]rj   r%   r<   r’   r   rF   r   r‘   zstring='foo'c                    s"   t ˆ  | ¡jj|ƒj|kst‚d S r~   r   r„   r†   r6   r7   r‡     s    ÿz0test_append_with_data_columns.<locals>.check_colé   r�   r‹   Z	foobarbahr“   Z
foobarbah1Zstring_block1Z
foobarbah2Zstring_block2é(   rŒ   )r’   r“   r‹   r‰   rA   g      ð¿é   r”   z.string='foo' and string2='foo' and A>0 and B<0F)Z
check_freqzstring='foo' and string2='cool'Úcoolé	   Z20010102r_   )r_   rG   Údf_dcrE   zB > 0zC > 0zstring == fooiÒ  z1/1/2000)Zperiods)r&   rC   zstring == "foo")$r   r)   r*   rm   rC   Zget_locr   r+   r,   Z_handleÚrootr   r   Úcolsr&   Z
is_indexedrL   rD   rM   rn   r`   r.   r/   r0   r’   r“   rA   r   Ú_convertrE   r1   Úseedr	   r   rN   Úabs)	r4   r   rR   rS   r�   r‡   Úslr§   r&   r6   r†   r7   Útest_append_with_data_columnsë  sæ    








ü
ÿþýÿ 
  ÿ""r®   c              	   C   sÆ   |}d |j _t| ƒ�V}| d|¡ | d¡}t ||¡ |jdddgd�}|jddgd�}t ||¡ W 5 Q R X tdƒ�D}|j	|ddd� t
|dddgd�}|jddgd�}t ||¡ W 5 Q R X d S )	NrI   rA   rD   rB   ztest.hdfr   r   r   )rC   rK   r   r+   rM   r)   r,   rn   r   Zto_hdfr
   )r4   Z multiindex_dataframe_random_datar   r5   rR   rS   Úpathr6   r6   r7   Útest_append_hierarchical€  s    


r°   c              	   C   sl   t | ƒ�Z}t ¡ }|jd|dd� | d¡}t ||¡ |jd|dd� | d¡}t ||¡ W 5 Q R X d S )Nr   r   ©Ú	chunksizer   r   )Zexpectedrows)r   r)   ÚmakeDataFramer+   rM   r,   )r4   r5   r   rR   r6   r6   r7   Útest_append_misc•  s    


r´   r²   r   r–   iè  c              	   C   s”   t  ¡ }d|d< d|d< |d  d¡|d< |d dk|d< tdƒ|d	< td
ƒ|d< t| dd��,}|jd||d� | d¡}t  ||¡ W 5 Q R X d S )Nr<   r’   rv   Zfloat322Zfloat32r   ÚboolÚ20130101Ztime1Z20130102Ztime2Úw)ÚmodeÚobjr±   )r)   r³   r^   r   r   r+   rM   r,   )r4   r²   r   r5   rR   r6   r6   r7   Útest_append_misc_chunksize¢  s    
rº   c              
   C   sØ   t | ƒ�Æ}ttdƒd�}| d|¡ tjtdd�� | d¡ W 5 Q R X ttj	 
dd¡tdƒd�}| d|¡ t | d¡|¡ | d|¡ t | d¡|¡ ttdƒd�}| d|¡ t | d¡|¡ W 5 Q R X d S )	NÚABCrB   r   z 'No object named df in the file'rk   r   rG   r   )r   r   rx   r+   rq   rr   ÚKeyErrorrM   r.   r1   Zrandr)   r,   r-   )r4   r5   Zdf_emptyr   r6   r6   r7   Útest_append_misc_empty_frame²  s    
r½   c              
   C   sX  t | ƒ��D}t ¡ }dggt|ƒ |d< |jd tjks<t‚t 	d¡}t
jt|d�� | d|¡ W 5 Q R X dggt|ƒ |d< dggt|ƒ |d< t
jt|d�� | d|¡ W 5 Q R X t ¡ }tt dd	d
¡|jd�}| t¡}tj|dd…< ||d< |jd tjk�st‚d}t
jt|d�� | d|¡ W 5 Q R X d}t
jt|d�� | dt d¡¡ W 5 Q R X t 	d¡}t
jt|d�� | dtt d¡ƒ¡ W 5 Q R X t ¡ }| d|¡ d|d< t 	d¡}t
jt|d�� | d|¡ W 5 Q R X t|dƒ tdƒ|d< | d|¡ d|d< t 	d¡}t
jt|d�� | d|¡ W 5 Q R X W 5 Q R X d S )Nr|   ÚinvalidziCannot serialize the column [invalid]
because its data contents are not [string] but [mixed] object dtyperk   r   Zinvalid2Zinvalid3rX   r   r   r%   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'>]r<   z‰invalid combination of [non_index_axes] on appending data [(1, ['A', 'B', 'C', 'D', 'foo'])] vs current table [(1, ['A', 'B', 'C', 'D'])]r¶   rF   zû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,kind->datetime64,shape->None])r   r)   r³   rO   Zdtypesr.   Zobject_rL   ro   rp   rq   rr   rs   r+   r   r_   r&   r^   Úobjectr/   r3   rz   r   r   )r4   r5   r   rt   rT   r6   r6   r7   Útest_append_raiseÌ  s^    ÿ
ÿ ÿ
ÿrÀ   c              	   C   s~  t tdƒdd„ tdƒD ƒdœƒ}|d |d  |d< tj|jd	d
…df< t| ƒ��"}t|dƒ |jd|dd� | 	d¡}t
 ||¡ |j	ddd�}t
 ||¡ |j	ddd�}t
 ||jd	d … ¡ | 	dd¡}t
 ||jd	d … ¡ | 	dd¡}|jdgd�}t
 ||jdd … ¡ | 	dd¡}|jdd … }t
 ||jdd … ¡ t|dƒ | d|¡ | 	d¡}t
 ||¡ W 5 Q R X d S )Nr¶   c                 S   s    g | ]}t d ƒt|dd� ‘qS )r¶   r   )ÚdaysÚseconds)r   r   )Ú.0r{   r6   r6   r7   Ú
<listcomp>!  s    z.test_append_with_timedelta.<locals>.<listcomp>r   r•   rA   rD   rE   rG   r   r   Tr'   zC<100000)ÚwherezC<pd.Timedelta('-3D')zC<'-3D'zC<'-500000s')Zsubsetr‘   z	C<'-3.5D'r   rj   r   )r   r   rw   r.   r/   r0   r   r   r+   rM   r)   r,   rm   rb   r-   )r4   r   r5   rR   r6   r6   r7   Útest_append_with_timedelta  s<    ÿþÿ



rÆ   c              
   C   s4  t  ¡ }t  ¡ jdjd�}d|d< t||gdd�}t| ƒ�ð}d}tjt|d��  |j	d	d
gd dœ|dd� W 5 Q R X tjt|d�� |j	d d dœ|dd� W 5 Q R X d}tjt|d�� | 	d|d¡ W 5 Q R X |j	d	d
gd dœ|dd� |j
ddgddgdd�}||jdk|jdk@  }t  ||¡ W 5 Q R X d S )Nú{}_2rB   rF   r<   r   ©Zaxisz=append_to_multiple requires a selector that is in passed dictrk   rA   rD   ©r   r   r   )ÚselectorzQappend_to_multiple must have a dictionary specified as the way to split the valuer   r   zA>0r¡   )rÅ   rÊ   r   )r)   r*   Úrenamer   r   r   rq   rr   rz   Úappend_to_multipleÚselect_as_multiplerA   rD   r,   )r4   r   r   r   r5   rt   rR   rS   r6   r6   r7   Útest_append_to_multipleK  s4    
  ÿ ÿ  ÿrÎ   c              	   C   s¸   t  ¡ }t  ¡ jdjd�}tj|jd|j ddg¡f< t	||gdd�}t
| ƒ�`}|jddgd dœ|dd	d
� | ddg¡}| ¡ }t  ||¡ t  | d¡j| d¡j¡ W 5 Q R X d S )NrÇ   rB   r   rA   rD   rÈ   rÉ   r   T©rÊ   rb   r   )r)   r*   rË   r   r.   r/   rm   rC   Úget_indexerr   r   rÌ   rÍ   rb   r,   Zassert_index_equalrM   r&   )r4   r   r   r   r5   rR   rS   r6   r6   r7   Útest_append_to_multiple_dropnam  s    
   ÿrÑ   c                 C   sÜ   t  ¡ }t  ¡ jdjd�}tj|jd|j ddg¡f< t	||gdd�}t
| ƒ�„}t dd¡�l |jddgd d	œ|d
dd� d}tjt|d�� | d
dg¡ W 5 Q R X | d
¡j | d¡j¡rÄt‚W 5 Q R X W 5 Q R X d S )NrÇ   rB   r   rA   rD   rÈ   rd   T)Údf1aÚdf2arÒ   FrÏ   z,all tables must have exactly the same nrows!rk   rÓ   )r)   r*   rË   r   r.   r/   rm   rC   rÐ   r   r   re   rf   rÌ   rq   rr   rz   rÍ   rM   r&   ÚequalsrL   )r4   r   r   r   r5   rt   r6   r6   r7   Ú$test_append_to_multiple_dropna_false  s$     ÿ   ÿrÕ   c              	   C   sÀ   t t dd¡t dd¡t dd¡d dd„ tdƒD ƒdd„ tdƒD ƒdœƒ}|jd	g }t| ƒ�V}|jd
gddgddgdœ|jd	g dddddœd� | dddg¡}t 	||¡ W 5 Q R X d S )Nr   é   éX   c                 S   s   g | ]}d ‘qS )r|   r6   ©rÃ   Ú_r6   r6   r7   rÄ   ›  s     z8test_append_to_multiple_min_itemsize.<locals>.<listcomp>rV   c                 S   s   g | ]}d ‘qS )Zabcder6   rØ   r6   r6   r7   rÄ   œ  s     )ÚIXÚNumÚBigNumÚStrÚLongStrr   rÚ   rÛ   rÜ   rÝ   rÞ   )r&   ÚnumsÚstrsr&   r   r9   r   )rÝ   rÞ   rÛ   r�   rß   rà   )
r   r.   r3   rw   rm   r   rÌ   rÍ   r)   r,   )r4   r   rS   r5   rR   r6   r6   r7   Ú$test_append_to_multiple_min_itemsize”  s*    

ûÿ	
ý

ø
rá   )4r_   r   ro   Úwarningsr   Únumpyr.   rq   Zpandas._libs.tslibsr   Zpandas.util._test_decoratorsÚutilZ_test_decoratorsÚtdZpandasre   r   r   r   r)   r   r	   r
   Zpandas.tests.io.pytables.commonr   r   r   ÚmarkZ
single_cpuZ
pytestmarkÚfilterwarningsr8   rU   ra   rh   ru   r}   r—   r    r®   r°   r´   Zparametrizerº   r½   Z&skip_array_manager_not_yet_implementedrÀ   rÆ   rÎ   rÑ   rÕ   rá   r6   r6   r6   r7   Ú<module>   sD    

E//U2y 

M1"