Ë
    u™ãjÆN  ã            	       ó  — d dl Z d dlZd dlZd dlZd dlmZ ej                  j                  gZd„ Zd„ Zd„ Zd„ Zd„ Zej                  j#                  ddg gd	d	ggg«      d
efd„«       Zej                  j#                  dddg«      d„ «       Zej                  j#                  dddg«      d„ «       Zej                  j#                  dddg«      d„ «       Zej                  j#                  dddg«      d„ «       Zd„ Zej                  j#                  dddg«      d„ «       Zej                  j#                  dddg«      d„ «       Zej                  j#                  dddg«      ej                  j#                  dddg«      d„ «       «       Zd„ Zd„ Zd„ Zd„ Zej                  j#                  ddd „ fd!d"„ fd#d$„ fd%d&„ fg«      d'„ «       Z ej                  j#                  d(g d)¢«      d*„ «       Z!ej                  j#                  d(g d)¢«      d+„ «       Z"ej                  j#                  d,d-e jF                  fd.e jH                  fd/e jJ                  fd0e jL                  fg«      ej                  j#                  d1d2d3g«      d4„ «       «       Z'd5„ Z(d6„ Z)d7„ Z*ej                  j#                  d8 ejV                  d d9g«       ejX                  d	d:g«      d;f ejX                  d	d:g«       ejV                  d d9g«      d<fg«      d=„ «       Z-y)>é    Nc           	      ó  — t        j                  t        j                  g d¢g d¢d¬«      «      }| j                  d|d¬«       | j	                  d«      }t        j                  ||«       t        j                  t        j                  g d¢g d¢d¬«      «      }| j                  d	|d¬«       | j	                  d	«      }t        j                  ||«       t        j                  |g d
¢dœ«      }| j                  d|d¬«       | j	                  d«      }t        j                  ||«       t        j                  g d¢«      j                  d«      }| j                  d|«       | j	                  d«      }t        j                  ||«       t        j                  ddt        j                  ddddg«      j                  d«      }| j                  d|«       | j	                  d«      }t        j                  ||«       |j                  «       }t        j                  t        d«      «      j                  d«      |d<   | j                  d|«       | j	                  d«      }t        j                  ||«       | j                  «       }d|v sJ ‚d|v sJ ‚d|v sJ ‚t        j                  t        j                  g d¢g d¢d¬«      «      }| j                  d|d¬«       | j	                  d«      }t        j                  ||«       | j                  d|dg¬«       ||j                  j!                  ddg«         }| j	                  dd g¬!«      }t        j                  ||«       ||j                  j!                  ddg«         }| j	                  dd"g¬!«      }t        j                  ||«       ||j                  j!                  d#g«         }| j	                  dd$g¬!«      }t        j                  ||«       ||j                  j!                  d%g«         }| j	                  dd&g¬!«      }t        j                  ||«       | j                  d|«       t        j"                  ||g«      }||j                  j!                  ddg«         }| j	                  dd g¬!«      }t        j                  ||«       |j                  «       }|d   j$                  j'                  «       |d<   d'}t)        j*                  t,        |¬(«      5  | j                  d|«       d d d «       | j	                  d)«      }|€J ‚| j/                  d«       t)        j*                  t0        d*¬(«      5  | j	                  d)«       d d d «       y # 1 sw Y   ŒexY w# 1 sw Y   y xY w)+N)ÚaÚbr   r   r   Úc©r   r   r   ÚdF©Ú
categoriesÚorderedÚsÚtable)ÚformatTÚ	s_ordered)é   é   é   é   é   é   )r   ÚvalsÚdf)r   r   r   r   r   r   r   ÚcategoryÚsir   r   r   r   r   Úsi2ÚabcdefgÚs2Údf2z/df2   z/df2/meta/values_block_0/metaz/df2/meta/values_block_2/metaÚdf3©Údata_columnsr   r   zs in ["b","c"]©Úwherezs = ["b","c"]r   z
s in ["d"]Úfz
s in ["f"]zEcannot append a categorical with different categories to the existing©Úmatchzdf3/meta/s/metaz-'No object named df3/meta/s/meta in the file')ÚpdÚSeriesÚCategoricalÚappendÚselectÚtmÚassert_series_equalÚ	DataFrameÚassert_frame_equalÚastypeÚnpÚnanÚcopyÚlistÚinfor   ÚisinÚconcatÚcatÚremove_unused_categoriesÚpytestÚraisesÚ
ValueErrorÚremoveÚKeyError)	Útemp_hdfstorer   Úresultr   r   r4   Úexpectedr   Úmsgs	            út/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/tests/io/pytables/test_categorical.pyÚtest_categoricalrC      sç  € ä
�	‰	Ü
�‰Ú*Ú+Øô	
ó	€Að ×Ñ˜˜a¨ÐÔ0Ø×!Ñ! #Ó&€FÜ×Ñ˜1˜fÔ%ä
�	‰	Ü
�‰Ú*Ú+Øô	
ó	€Að ×Ñ˜ a°ÐÔ8Ø×!Ñ! +Ó.€FÜ×Ñ˜1˜fÔ%ä	�‰˜AÒ'9Ñ:Ó	;€BØ×Ñ˜˜r¨'ÐÔ2Ø×!Ñ! $Ó'€FÜ×Ñ˜& "Ô%ô 	�	‰	Ò'Ó(×/Ñ/°
Ó;€AØ×Ñ˜˜qÔ!Ø×!Ñ! $Ó'€FÜ×Ñ˜6 1Ô%ä
�	‰	�1�aœŸ™  A q¨!Ð,Ó-×4Ñ4°ZÓ@€AØ×Ñ˜ Ô"Ø×!Ñ! %Ó(€FÜ×Ñ˜6 1Ô%ð �'‰'‹)€CÜ—	‘	œ$˜y›/Ó*×1Ñ1°*Ó=€Cˆ�IØ×Ñ˜ Ô$Ø×!Ñ! %Ó(€FÜ×Ñ˜& #Ô&ð ×ÑÓ€DØ˜ÑÐÐà*¨dÑ2Ð2Ð2Ø*¨dÑ2Ð2Ð2ô 	�	‰	Ü
�‰Ú*Ú+Øô	
ó	€Að ×Ñ˜˜q¨ÐÔ1Ø×!Ñ! $Ó'€FÜ×Ñ˜6 1Ô%ð ×Ñ˜ °#°ÐÔ7Ø�"—$‘$—)‘)˜S #˜JÓ'Ñ(€HØ×!Ñ! %Ð0@Ð/AÐ!ÓB€FÜ×Ñ˜& (Ô+à�"—$‘$—)‘)˜S #˜JÓ'Ñ(€HØ×!Ñ! %°Ð/@Ð!ÓA€FÜ×Ñ˜& (Ô+à�"—$‘$—)‘)˜S˜EÓ"Ñ#€HØ×!Ñ! %°¨~Ð!Ó>€FÜ×Ñ˜& (Ô+à�"—$‘$—)‘)˜S˜EÓ"Ñ#€HØ×!Ñ! %°¨~Ð!Ó>€FÜ×Ñ˜& (Ô+ð ×Ñ˜ Ô#ä	�‰�B˜�8Ó	€BØ�"—$‘$—)‘)˜S #˜JÓ'Ñ(€HØ×!Ñ! %Ð0@Ð/AÐ!ÓB€FÜ×Ñ˜& (Ô+ð �'‰'‹)€CØ�3‰x�|‰|×4Ñ4Ó6€Cˆ�Hà
Q€CÜ	�‰”z¨Ô	-ñ )Ø×Ñ˜U CÔ(÷)ð
 ×!Ñ!Ð"3Ó4€FØÐÐÐØ×Ñ˜Ôä	�‰”xÐ'VÔ	Wñ 0Ø×ÑÐ.Ô/÷0ð 0÷)ð )ú÷0ð 0ús   Ó;U2ÕU>Õ2U;Õ>Vc                 ó&  — ddg}ddg}ddg}t        j                  |||dœ«      }|j                  g d d …f   }|j                  | dd	d
¬«       t        j                  | dd¬«      }t        j                  ||«       |j                  j                  d«      |_        |j                  j                  d«      |_	        |j                  g d d …f   }|j                  | dd	d
¬«       t        j                  | dd¬«      }t        j                  ||«       y )NÚESP_012345_6789ÚESP_987654_3210Ú
APF00006npÚ
APF0001immg333333@gš™™™™™#@)ÚobsidsÚimgidsÚdatar   r   T©Úkeyr   r    zobsids=Br!   r   )
r&   r-   ÚilocÚto_hdfÚread_hdfr+   r.   rI   r/   rJ   )Útemp_h5_pathrI   rJ   rK   r   r@   r?   s          rB   Útest_categorical_conversionrR   z   sù   € ð  Ð!2Ð3€FØ˜LÐ)€FØ�ˆ:€Dô 
�‰ °6À4ÑHÓ	I€Bð �w‰w�rš1�u‰~€HØ‡I�Iˆl ¨WÀ4€IÔHÜ�[‰[˜ t°:Ô>€FÜ×Ñ˜& (Ô+ð —	‘	× Ñ  Ó,€B„IØ—	‘	× Ñ  Ó,€B„Ið �w‰w�rš1�u‰~€HØ‡I�Iˆl ¨WÀ4€IÔHÜ�[‰[˜ t°:Ô>€FÜ×Ñ˜& (Õ+ó    c           	      óL  — t        j                  dddt        j                  gt        j                  t        j                  t        j                  t        j                  gg d¢t        j                  d gdz  t
        ¬«      dœ«      }|j                  j                  d«      |d<   |j                  j                  d«      |d<   |j                  j                  d«      |d	<   |}|j                  | d
dd¬«       t        j                  | d
«      }t        j                  ||«       y )Nr   r   r   ©r   r   r   r   r   ©Údtyper   r   r   r   r   TrL   )r&   r-   r0   r1   r'   Úobjectr   r/   r   rO   rP   r+   r.   )rQ   r   r@   r?   s       rB   Ú!test_categorical_nan_only_columnsrY   –   s×   € ô 
�‰à�s˜C¤§¡Ð(Ü—&‘&œ"Ÿ&™&¤"§&¡&¬"¯&©&Ð1ÚÜ—‘˜D˜6 A™:¬VÔ4ñ		
ó
€Bð �d‰d�k‰k˜*Ó%€B€s�GØ�d‰d�k‰k˜*Ó%€B€s�GØ�d‰d�k‰k˜*Ó%€B€s�GØ€HØ‡I�Iˆl ¨WÀ4€IÔHÜ�[‰[˜ tÓ,€FÜ×Ñ˜& (Õ+rS   c                 óü   — t        j                  dt        j                  g d¢«      j                  d«      i«      }|j	                  | dd¬«       t        j
                  | d¬«      }t        j                  ||«       y )NÚA)Úaaar1   Úbbbr\   Úzzzr]   r   r   r   ©rM   r   ©rM   )r&   r-   r'   r/   rO   rP   r+   r.   ©rQ   r   r?   s      rB   Ú"test_categorical_nan_rep_collisionrb   «   sc   € ô
 
�‰Ø	Œb�i‰iÒBÓC×JÑJÈ:ÓVÐWó
€Bð ‡I�Iˆl ¨W€IÔ5Ü�[‰[˜¨4Ô0€Fä×Ñ˜& "Õ%rS   c                 óÖ  — t        j                  ddg«      }| j                  dt        j                  dt        j                  ddg|¬«      i«      «       | j                  dt        j                  dt        j                  ddg|ddg¬«      i«      «       t        j                  dt        j                  g d	¢|¬«      i«      }t        j                  | j                  d«      |«       y )
Nr1   r   r   r[   rV   r   r   )rW   Úindex)r1   r   r   r1   )r&   ÚCategoricalDtyper)   r-   r'   r+   r.   r*   )r>   rW   r@   s      rB   Ú)test_categorical_nan_rep_collision_appendrf   ¹   s½   € ô ×Ñ ¨ Ó-€EØ×ÑØŒb�l‰l˜C¤§¡¨E°3¨<¸uÔ!EÐFÓGôð ×ÑØŒb�l‰l˜C¤§¡¨C°¨<¸uÈQÐPQÈFÔ!SÐTÓUôô �|‰|˜S¤"§)¡)Ò,DÈEÔ"RÐSÓT€HÜ×Ñ˜-×.Ñ.¨tÓ4°hÕ?rS   zwhere, expectedÚqr   r"   c                 ó  — t        j                  dg d¢i«      }|j                  j                  d«      |_        ddi}t	        |j                  j                  «       «      }t        j                  d|i«      }|j                  j                  d«      |_        |j                  j                  j                  |«      |_        |j                  | dd|¬«       t        j                  | d|› d	�¬
«      }t        j                  ||«       y )NÚcol)r   r   r   r   r   r   r   )rM   r   Úmin_itemsizezcol=="ú"r!   )r&   r-   ri   r/   ÚsortedÚuniquer7   Úset_categoriesrO   rP   r+   r.   )rQ   r"   r@   r   Ú
max_widthsÚcategorical_valuesr?   s          rB   Útest_convert_valuerq   È   sÌ   € ô 
�‰�ušoÐ.Ó	/€BØ�V‰V�]‰]˜:Ó&€B„FØ˜�€JÜ §¡§¡£Ó0ÐÜ�|‰|˜U HÐ-Ó.€HØ—<‘<×&Ñ& zÓ2€H„LØ—<‘<×#Ñ#×2Ñ2Ð3EÓF€H„Là‡I�Iˆl ¨WÀ:€IÔNÜ�[‰[˜¨v°e°W¸AÐ->Ô?€FÜ×Ñ˜& (Õ+rS   ÚfmtÚfixedr   c                 óî   — t        j                  dg d¢it        j                  g d¢ddg¬«      ¬«      }|j                  |d| ¬	«       t        j                  |d¬
«      }t        j                  ||«       y )NÚx©r   r   r   )r[   ÚBr[   r[   rw   ©r
   ©rd   r   r_   r`   )r&   r-   r(   rO   rP   r+   r.   ©rr   rQ   r   r?   s       rB   Ú test_categorical_index_roundtripr{   Ù   s`   € ô 
�‰Ø	ŠiÐ¤§¡ªÈCÐQTÈ:Ô Vô
€Bð ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€FÜ×Ñ˜& "Õ%rS   c                 ó¬  — t        j                  g d¢g d¢dd¬«      }t        j                  dg d¢i|¬«      }|j                  |d	| ¬
«       t        j                  |d	¬«      }t        j                  ||«       |j                  j                  du sJ ‚t        |j                  j                  «      g d¢k(  sJ ‚|j                  j                  dk(  sJ ‚y )N)r   r   r   ©r   r   r   TÚix)r
   r   ÚnameÚv©ç      ð?ç       @ç      @ry   r   r_   r`   )r&   ÚCategoricalIndexr-   rO   rP   r+   r.   rd   r   r3   r
   r   )rr   rQ   Úcir   r?   s        rB   Ú)test_categorical_index_preserves_metadatar‡   ä   s³   € ô 
×	Ñ	Ú¢O¸TÈô
€Bô 
�‰�sšOÐ,°BÔ	7€BØ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€FÜ×Ñ˜& "Ô%Ø�<‰<×Ñ 4Ñ'Ð'Ð'Ü�—‘×'Ñ'Ó(ªOÒ;Ð;Ð;Ø�<‰<×Ñ Ò$Ð$Ñ$rS   c                 óî   — t        j                  dg d¢it        j                  g d¢ddg¬«      ¬«      }|j                  |d| ¬	«       t        j                  |d¬
«      }t        j                  ||«       y )Nru   rv   )r   Nr   r   r   rx   ry   r   r_   r`   ©r&   r-   r…   rO   rP   r+   r.   rz   s       rB   Útest_categorical_index_with_nanrŠ   ô   sc   € ô 
�‰Ø	ŠiÐÜ×!Ñ!Ò"2ÀÀS¸zÔJô
€Bð ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€FÜ×Ñ˜& "Õ%rS   c                 óæ   — t        j                  dg d¢it        j                  g d¢«      ¬«      }|j                  |d| ¬«       t        j                  |d¬«      }t        j                  ||«       y )Nr€   rU   ©r   r   r1   r   ry   r   r_   r`   r‰   rz   s       rB   Ú-test_categorical_index_category_equal_nan_repr�      s\   € ô 
�‰Ø	ŠlÐ¤2×#6Ñ#6Ò7MÓ#Nô
€Bð ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€Fä×Ñ˜& "Õ%rS   c           	      óp  — t        j                  dg d¢it        j                  g d¢«      ¬«      }|j                  | ddd¬«       t        j                  | d¬	«      }t        j                  dg d¢it        j                  d
dt
        j                  d
gd
dg¬«      ¬«      }t        j                  ||«       y )Nr€   rU   rŒ   ry   r   r   r1   )rM   r   Únan_repr`   r   r   rx   )	r&   r-   r…   rO   rP   r0   r1   r+   r.   )rQ   r   r?   r@   s       rB   Ú6test_categorical_index_category_equal_explicit_nan_repr�     s—   € ô 
�‰Ø	ŠlÐ¤2×#6Ñ#6Ò7MÓ#Nô
€Bð ‡I�Iˆl ¨W¸e€IÔDÜ�[‰[˜¨4Ô0€Fä�|‰|Ø	ŠlÐÜ×!Ñ! 3¨¬R¯V©V°SÐ"9ÀsÈCÀjÔQô€Hô ×Ñ˜& (Õ+rS   c                 óæ  — t        j                  dddgit        j                  t        j                  t        j                  g«      ¬«      }|j                  |d| ¬«       t        j                  |d¬«      }t        j                  dddgit        j                  t         j                  j                  ddgt        j                  g d	¬
«      ¬«      «      ¬«      }t        j                  ||«       y )Nr€   r   r   ry   r   r_   r`   éÿÿÿÿÚfloat64rV   rx   )r&   r-   r…   r0   r1   rO   rP   r(   Ú
from_codesÚIndexr+   r.   )rr   rQ   r   r?   r@   s        rB   Útest_categorical_index_all_nanr–   !  sº   € ô 
�‰�s˜Q ˜F�m¬2×+>Ñ+>ÄÇÁÌÏÉÐ?OÓ+PÔ	Q€BØ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€Fä�|‰|Ø	ˆq�!ˆfˆÜ×!Ñ!Ü�N‰N×%Ñ%Ø�R�¤R§X¡X¨b¸	Ô%Bð &ó ó
ô€Hô ×Ñ˜& (Õ+rS   c                 óî   — t        j                  dg d¢it        j                  g d¢g d¢¬«      ¬«      }|j                  |d| ¬«       t        j                  |d¬	«      }t        j                  ||«       y )
Nru   rv   ©é
   é   é   )r™   rš   r›   é(   rx   ry   r   r_   r`   r‰   rz   s       rB   Ú)test_categorical_index_numeric_categoriesr�   6  s_   € ô 
�‰Ø	ŠiÐÜ×!Ñ!¢,Ò;KÔLô
€Bð ‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€FÜ×Ñ˜& "Õ%rS   zdtype, expected_dtype)ÚInt64Úint64)ÚstringÚstrc                 óN  — |dk(  rg d¢ng d¢}t        j                  ||¬«      }t        j                  dg d¢it        j                  ||¬«      ¬«      }| d	k(  r>|dk(  r9t	        j
                  t        d
¬«      5  |j                  |d| ¬«       d d d «       y |j                  |d| ¬«       t        j                  |d¬«      }|j                  |«      }t        j                  dg d¢it        j                  ||¬«      ¬«      }	t        j                  ||	«       y # 1 sw Y   y xY w)Nrž   r˜   ©r   r   r   rV   ru   rv   rx   ry   rs   z&Cannot store an Index with dtype Int64r$   r   r_   r`   )r&   r•   r-   r…   r9   r:   ÚNotImplementedErrorrO   rP   r/   r+   r.   )
rr   rW   Úexpected_dtyperQ   Úvaluesr
   r   r?   Úexpected_categoriesr@   s
             rB   Ú+test_categorical_index_extension_categoriesr¨   B  s  € ð # gÒ-‹\²?€FÜ—‘˜&¨Ô.€JÜ	�‰Ø	ŠiÐ¤× 3Ñ 3°JÈ:Ô Vô
€Bð ˆg‚~˜% 7Ò*Ü�]‰]ÜÐ'Oô
ñ 	:ð �I‰I�l¨°SˆIÔ9÷	:ð 	à‡I�Iˆl ¨S€IÔ1Ü�[‰[˜¨4Ô0€FØ$×+Ñ+¨NÓ;ÐÜ�|‰|Ø	ŠiÐÜ×!Ñ!Ð"5ÐBUÔVô€Hô ×Ñ˜& (Õ+÷	:ð 	ús   Á:DÄD$c                 óî   — t        j                  ddgddggddgt        j                  ddg«      ¬	«      }|j                  | d
¬«       t        j                  | d
¬«      }t        j                  ||«       y )Nr   r   r   r   Úr1Úr2r   r   )rd   Úcolumnsr   r`   r‰   ra   s      rB   Ú*test_categorical_columns_axis_fixed_formatr­   c  sk   € ä	�‰Ø
ˆQˆ�!�Q�ÐØ�TˆlÜ×#Ñ# S¨# JÓ/ô
€Bð
 ‡I�Iˆl €IÔ%Ü�[‰[˜¨4Ô0€FÜ×Ñ˜& "Õ%rS   c                 óê   — t        j                  g d¢t        j                  g d¢g d¢¬«      d¬«      }|j                  | d¬«       t        j                  | d¬«      }t        j                  ||«       y )Nr˜   )ru   ÚyÚzrx   r   )rd   r   Úserr`   )r&   r'   r…   rO   rP   r+   r,   )rQ   r±   r?   s      rB   Ú*test_categorical_index_series_fixed_formatr²   o  sX   € ä
�)‰)ÚÜ×!Ñ!¢/ºoÔNØô€Cð
 ‡J�Jˆ| €JÔ'Ü�[‰[˜¨5Ô1€FÜ×Ñ˜6 3Õ'rS   c                 óL  — t        j                  g d¢g d¢d¬«      }t        j                  dg d¢i|¬«      }|j                  | dd¬	«       |j                  | ddd
¬«       t        j                  | d¬«      }t        j
                  ||g«      }t        j                  ||«       y )Nr£   r~   )r
   r   r€   r�   ry   r   r   r_   T©rM   r   r)   r`   )r&   r…   r-   rO   rP   r6   r+   r.   )rQ   r†   r   r?   r@   s        rB   Ú#test_categorical_index_table_appendrµ   {  sƒ   € ä	×	Ñ	š_ºÈtÔ	T€BÜ	�‰�sšOÐ,°BÔ	7€BØ‡I�Iˆl ¨W€IÔ5Ø‡I�Iˆl ¨W¸T€IÔBÜ�[‰[˜¨4Ô0€FÜ�y‰y˜"˜b˜Ó"€HÜ×Ñ˜& (Õ+rS   c                 óZ  — t        j                  dt        j                  g d¢g d¢¬«      i«      }t        j                  | «      5 }|j	                  d||j
                  ¬«       |j                  dd«      }d d d «       ||d   dk(     }t        j                  |«       y # 1 sw Y   Œ+xY w)	NÚcol1)r   r   r   r   r}   rx   r   r   zcol1='a'r   )	r&   r-   r(   ÚHDFStorer)   r¬   r*   r+   r.   )rQ   r   Ústorer?   r@   s        rB   Ú-test_categorical_select_non_sorted_categoriesrº   †  s”   € ä	�‰Ø	”—‘Ò 4ÂÔQÐRó
€Bô 
�‰�\Ó	"ð 0 eØ�‰�T˜2¨B¯J©JˆÔ7Ø—‘˜d JÓ/ˆ÷0ð �"�V‘* Ñ#Ñ$€HÜ×Ñ˜& (Õ+÷0ð 0ús   Á1B!Â!B*zwhere, maskz
col == "z"c                 ó   — | dk(  S ©Nr°   © ©ri   s    rB   ú<lambda>r¿   —  ó
   €  3¨#¡:€ rS   zcol in ["z", "y"]c                 ó(   — | j                  ddg«      S )Nr°   r¯   ©r5   r¾   s    rB   r¿   r¿   ˜  ó   € ¨#¯(©(°C¸°:Ó*>€ rS   zcol in ["a", "z"]c                 ó(   — | j                  ddg«      S )Nr   r°   rÂ   r¾   s    rB   r¿   r¿   ™  rÃ   rS   z
col != "z"c                 ó   — | dk7  S r¼   r½   r¾   s    rB   r¿   r¿   š  rÀ   rS   c           	      ó   — t        j                  dt        j                  ddt        j                  dg«      i«      }|j                  | dddg¬«       t        j                  | d|¬«      }| ||d   «         }t        j                  ||«       y )Nri   r   r   r   r   rL   r!   )	r&   r-   r(   r0   r1   rO   rP   r+   r.   )rQ   r"   Úmaskr   r?   r@   s         rB   Ú,test_categorical_where_non_category_with_nanrÈ   ”  sw   € ô 
�‰�uœbŸn™n¨c°3¼¿¹ÀÐ-DÓEÐFÓ	G€BØ‡I�Iˆl ¨WÀEÀ7€IÔKä�[‰[˜ t°5Ô9€FØ‘$�r˜%‘y“/Ñ"€HÜ×Ñ˜& (Õ+rS   Úop)ú<ú<=ú>ú>=c                 ó$  — t        j                  dt        j                  g d¢«      i«      }|j                  | dddg¬«       d}t	        j
                  t        |¬«      5  t        j                  | dd|› d	�¬
«       d d d «       y # 1 sw Y   y xY w)Nri   r£   r   r   rL   ú7Unordered Categoricals can only compare equality or notr$   zcol ú "b"r!   )r&   r-   r(   rO   r9   r:   Ú	TypeErrorrP   ©rQ   rÉ   r   rA   s       rB   Ú3test_categorical_where_ordering_op_unordered_raisesrÓ   ¨  sv   € ô 
�‰�uœbŸn™nª_Ó=Ð>Ó	?€BØ‡I�Iˆl ¨WÀEÀ7€IÔKà
C€CÜ	�‰”y¨Ô	,ñ ?Ü
�‰�L $°°R°D¸¨oÕ>÷?÷ ?ñ ?ús   Á BÂBc                 ó(  — t        j                  dg d¢it        j                  g d¢«      ¬«      }|j                  | dd¬«       d}t	        j
                  t        |¬	«      5  t        j                  | dd
|› d�¬«       d d d «       y # 1 sw Y   y xY w)Nr€   rv   r£   ry   r   r   r_   rÏ   r$   zindex rÐ   r!   )r&   r-   r…   rO   r9   r:   rÑ   rP   rÒ   s       rB   Ú9test_categorical_index_where_ordering_op_unordered_raisesrÕ   ³  s{   € ô 
�‰�sšIÐ&¬b×.AÑ.AÂ/Ó.RÔ	S€BØ‡I�Iˆl ¨W€IÔ5à
C€CÜ	�‰”y¨Ô	,ñ AÜ
�‰�L $°°r°d¸$Ð.?Õ@÷A÷ Añ Aús   Á"BÂBzop, comparisonrÊ   rË   rÌ   rÍ   Úas_indexTFc                 ó�  — t        j                  g d¢g d¢d¬«      }|r3t        j                  dg d¢it        j                  |«      ¬«      }di }}n!t        j                  |g d¢d	œ«      }d
dd
gi}} |j                  | fdddœ|¤Ž t        j
                  | d|› d|› d�¬«      }t        j                  || ||d«         «       y )Nr£   r}   Tr	   r€   rv   ry   rd   )ri   r€   ri   r    r   r   r_   ú rÐ   r!   r   )r&   r(   r-   r…   rO   rP   r+   r.   )	rQ   rÉ   Ú
comparisonrÖ   r7   r   r   Úkwargsr?   s	            rB   Ú*test_categorical_where_ordering_op_orderedrÛ   ¾  sº   € ô �.‰.š²_ÈdÔ
S€CÙÜ�\‰\˜3¢	Ð*´"×2EÑ2EÀcÓ2JÔKˆØ ˆf‰ä�\‰\ #ªIÑ6Ó7ˆØ˜~°¨wÐ7ˆfˆØ€B‡I�IˆlÐ? ¨WÑ?¸Ò?ä�[‰[˜ t°d°V¸1¸R¸DÀÐ3EÔF€FÜ×Ñ˜& "¡Z°°SÓ%9Ñ":Õ;rS   c                 ó€  — t        j                  dt        j                  g d¢«      i«      }|j                  | dddg¬«       t        j                  | dd¬«      }t        j                  |||d   dk(     «       t        j                  | dd	¬«      }t        j                  |||d   j                  d
dg«         «       y )Nri   r£   r   r   rL   z
col == "b"r!   r   zcol in ["a", "c"]r   r   )r&   r-   r(   rO   rP   r+   r.   r5   ra   s      rB   Ú,test_categorical_where_equality_op_unorderedrÝ   Ó  s�   € ä	�‰�uœbŸn™nª_Ó=Ð>Ó	?€BØ‡I�Iˆl ¨WÀEÀ7€IÔKä�[‰[˜ t°<Ô@€FÜ×Ñ˜& " R¨¡Y°#Ñ%5Ñ"6Ô7ä�[‰[˜ tÐ3FÔG€FÜ×Ñ˜& " R¨¡Y§^¡^°S¸#°JÓ%?Ñ"@ÕArS   c                 ó<  — t        j                  dt        j                  g d¢t        j                  ¬«      i«      }|j                  | dddg¬«       d}t        j                  t        |¬«      5  t        j                  | dd	¬
«       d d d «       y # 1 sw Y   y xY w)Nri   r£   )r   r   r   rL   rÏ   r$   ú	col < "b"r!   )
r&   r-   r(   r0   ÚFalse_rO   r9   r:   rÑ   rP   )rQ   r   rA   s      rB   Ú5test_categorical_where_ordering_op_numpy_bool_orderedrá   ß  sr   € ä	�‰�uœbŸn™nª_ÄbÇiÁiÔPÐQÓ	R€BØ‡I�Iˆl ¨WÀEÀ7€IÔKà
C€CÜ	�‰”y¨Ô	,ñ ;Ü
�‰�L $¨kÕ:÷;÷ ;ñ ;ús   Á0BÂBc                 óò  — t        j                  d«      }t        j                  dt        j                  g d¢«      i«      }|j                  | dddg¬«       |j                  | d«      5 }|j                  d«      }|j                  j                  }|d   d	= ||j                  _	        d d d «       t        j                  | dd
¬«      }t        j                  ||j                  d d «       y # 1 sw Y   ŒExY w)NÚtablesri   r£   r   r   rL   r   z/dfr   rß   r!   r   )r9   Úimportorskipr&   r-   r(   rO   Ú	open_fileÚget_nodeÚ_v_attrsr4   rP   r+   r.   rN   )rQ   rã   r   ÚhandleÚnoder4   r?   s          rB   Ú5test_categorical_where_ordering_op_unrecorded_orderedrê   é  sÎ   € ä× Ñ  Ó*€Fä	�‰�uœbŸn™nª_Ó=Ð>Ó	?€BØ‡I�Iˆl ¨WÀEÀ7€IÔKà	×	Ñ	˜,¨Ó	,ð "°Ø�‰˜uÓ%ˆØ�}‰}×!Ñ!ˆØ�‰K˜	Ð"Ø!ˆ�‰Ô÷	"ô �[‰[˜ t°;Ô?€FÜ×Ñ˜& "§'¡'¨"¨1 +Õ.÷"ð "ús   Á*?C-Ã-C6zfirst, second, msgr   r   z<cannot append a categorical index to a non-categorical indexz<cannot append a non-categorical index to a categorical indexc                 óx  — t        j                  dddgi| ¬«      }|j                  |dd¬«       t        j                  ddd	gi|¬«      }t        j                  t
        |¬
«      5  |j                  |ddd¬«       d d d «       t        j                  t        j                  |d¬«      |«       y # 1 sw Y   Œ5xY w)Nr€   r‚   rƒ   ry   r   r   r_   r„   g      @r$   Tr´   r`   )	r&   r-   rO   r9   r:   rÑ   r+   r.   rP   )ÚfirstÚsecondrA   rQ   r   Úothers         rB   Ú-test_categorical_index_append_mismatch_raisesrï   ú  s    € ô$ 
�‰�s˜S #˜JÐ'¨uÔ	5€BØ‡I�Iˆl ¨W€IÔ5ä�L‰L˜#  S˜zÐ*°&Ô9€EÜ	�‰”y¨Ô	,ñ JØ�‰�\ t°GÀDˆÔI÷Jô ×Ñœ"Ÿ+™+ l¸Ô=¸rÕB÷	Jð Jús   Á&B0Â0B9).ÚoperatorÚnumpyr0   r9   Úpandasr&   Úpandas._testingÚ_testingr+   ÚmarkÚ
single_cpuÚ
pytestmarkrC   rR   rY   rb   rf   Úparametrizer¡   rq   r{   r‡   rŠ   r�   r�   r–   r�   r¨   r­   r²   rµ   rº   rÈ   rÓ   rÕ   ÚltÚleÚgtÚgerÛ   rÝ   rá   rê   r•   r…   rï   r½   rS   rB   ú<module>rý      s�  ðÛ ã Û ã Ý à�k‰k×$Ñ$Ð%€
òk0ò\,ò8,ò*&ò@ð ‡�×ÑÐ*¨c°2¨Y¸¸s¸e¸Ð,EÓFð,¨Cò ,ó Gð,ð  ‡�×Ñ˜ ¨'Ð 2Ó3ñ&ó 4ð&ð ‡�×Ñ˜ ¨'Ð 2Ó3ñ%ó 4ð%ð ‡�×Ñ˜ ¨'Ð 2Ó3ñ&ó 4ð&ð ‡�×Ñ˜ ¨'Ð 2Ó3ñ&ó 4ð&ò,ð" ‡�×Ñ˜ ¨'Ð 2Ó3ñ,ó 4ð,ð( ‡�×Ñ˜ ¨'Ð 2Ó3ñ&ó 4ð&ð ‡�×Ñ˜ ¨'Ð 2Ó3Ø‡�×ÑØÐ0Ð2CÐDóñ,óó 4ð,ò:	&ò	(ò,ò,ð ‡�×ÑØà	Ñ-Ð.Ø	Ñ>Ð?Ø	Ñ>Ð?Ø	Ñ-Ð.ð	óñ,óð,ð ‡�×Ñ˜Ò5Ó6ñ?ó 7ð?ð ‡�×Ñ˜Ò5Ó6ñAó 7ðAð ‡�×ÑØØ	ˆ8�;‰;Ð˜$ §¡Ð,¨s°H·K±KÐ.@À4ÈÏÉÐBUÐVóð ‡�×Ñ˜ d¨E ]Ó3ñ<ó 4ó	ð
<ò 	Bò;ò/ð" ‡�×ÑØð ˆB�H‰H�a˜�VÓØˆB×Ñ  c 
Ó+ØJð	
ð  ˆB×Ñ  c 
Ó+ØˆB�H‰H�a˜�VÓØJð	
ðóñCóñCrS   