§
    Å[6g-D  ã                   ó’   — d dl mZ d dlZd dlZd dlmZ d dlZd dlm	Z	m
Z
mZmZmZ d dlmZ  G d„ d¦  «        Z G d„ d¦  «        ZdS )	é    )ÚdeepcopyN)ÚPerformanceWarning)Ú	DataFrameÚIndexÚ
MultiIndexÚSeriesÚconcatc                   ó~   — e Zd Zd„ Zej                             dg d¢¦  «        d„ ¦   «         Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
S )ÚTestIndexConcatc           	      ó¤  — t          g d¢g d¢g d¢dœ¦  «        }t          dg d¢i¦  «        }t          g d¢¦  «        |_        t          g d¢¦  «        |_        t          ||gd	d
|¬¦  «        }t          j        }t          |||dgg d¢g d¢ddd|ggt          g d¢¦  «        ¬¦  «        }|s|j        g d¢         }t          j        ||¦  «         d S )N©ÚaÚbÚc©é   é   é   )ç      @çš™™™™™	@ç333333ó?)Útest1Útest2Útest3r   )çÍÌÌÌÌÌ@çš™™™™™@ç333333@©ÚxÚyÚz)r   r    Úqr   T)ÚaxisÚignore_indexÚsortr   )r   r   r   r   )r   r   r   r   r   r   r   )r"   r   r    r!   ©Úindex)r   r    r!   r"   )	r   r   r'   r	   ÚnpÚnanÚlocÚtmÚassert_frame_equal)Úselfr%   Úframe1Úframe2Úv1r)   Úexpecteds          úe/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/pandas/tests/reshape/concat/test_index.pyÚtest_concat_ignore_indexz(TestIndexConcat.test_concat_ignore_index   s  € ÝØ%�o�o°	°	°	ÀOÀOÀOÐTÐTñ
ô 
ˆõ ˜G _ _ _Ð5Ñ6Ô6ˆÝ˜_˜_˜_Ñ-Ô-ˆŒÝ˜_˜_˜_Ñ-Ô-ˆŒå�V˜VÐ$¨1¸4ÀdÐKÑKÔKˆåŒfˆÝà�c˜3 Ð$Ø"Ð"Ð"Ø"Ð"Ð"Ø�a˜˜cÐ"ð	õ Ð,Ð,Ð,Ñ-Ô-ð
ñ 
ô 
ˆð ð 	:Ø”|Ð$8Ð$8Ð$8Ô9ˆHå
Ô˜b (Ñ+Ô+Ð+Ð+Ð+ó    z#name_in1,name_in2,name_in3,name_out))Úidxr5   r5   r5   )r5   r5   NN)r5   NNN)Úidx1Úidx2NN)r6   r6   r7   N)r6   r7   Úidx3N)NNNNc           	      óà  — t          g d¢|¬¦  «        t          g d¢|¬¦  «        t          g d¢|¬¦  «        g}d„ t          |g d¢¦  «        D ¦   «         }t          |d¬¦  «        }t          g d	¢|¬¦  «        }t          d
ddt          j        t          j        gt          j        d
ddt          j        gt          j        t          j        d
ddgdœ|¬¦  «        }	t          j        ||	¦  «         d S )Nr   ©Úname)r   r   Úd)r   r<   Úec                 ó>   — g | ]\  }}t          |g d ¢i|¬¦  «        ‘ŒS ))r   r   r   r&   )r   )Ú.0Úir   s      r2   ú
<listcomp>z@TestIndexConcat.test_concat_same_index_names.<locals>.<listcomp>@   s>   € ð 
ð 
ð 
Ù37°1°a�I�q˜)˜)˜)�n¨AÐ.Ñ.Ô.ð
ð 
ð 
r4   r   r   ©r#   )r   r   r   r<   r=   r   r   r&   )r   Úzipr	   r   r(   r)   r+   r,   )
r-   Úname_in1Úname_in2Úname_in3Úname_outÚindicesÚframesÚresultÚexp_indr1   s
             r2   Útest_concat_same_index_namesz,TestIndexConcat.test_concat_same_index_names-   s  € õ �/�/�/¨Ð1Ñ1Ô1Ý�/�/�/¨Ð1Ñ1Ô1Ý�/�/�/¨Ð1Ñ1Ô1ð
ˆð

ð 
Ý;>¸wÈÈÈÑ;XÔ;Xð
ñ 
ô 
ˆõ ˜ QÐ'Ñ'Ô'ˆåÐ1Ð1Ð1¸ÐAÑAÔAˆÝà˜˜A�rœv¥r¤vÐ.Ý”f˜a  A¥r¤vÐ.Ý”f�bœf a¨¨AÐ.ðð ð
 ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   c           	      óæ  — t          t          j                             d¦  «                             d¦  «        t	          d¦  «        t          t	          d¦  «        d¬¦  «        ¬¦  «        }t          t          j                             d¦  «                             d¦  «        t	          d¦  «        t          t	          d¦  «        d¬¦  «        ¬¦  «        }t          ||gd	d
gddg¬¦  «        }t          ||gd	d
gdg¬¦  «        }t	          |j        j        ¦  «        }d|d<   |j         	                    |d¬¦  «         t          j        ||¦  «         |j        j        |j        j        k    sJ ‚d S )Nr   )r   r   ÚABCÚabcÚindex_ar:   )Úcolumnsr'   Úindex_bÚkey0Úkey1Úlvl0Úlvl1©ÚkeysÚnamesr   T)Úinplace)r   r(   ÚrandomÚdefault_rngÚlistr   r	   r'   rY   Ú	set_namesr+   r,   )r-   r   r   rJ   ÚexprY   s         r2   Útest_concat_rename_indexz(TestIndexConcat.test_concat_rename_indexQ   sW  € ÝÝŒI×!Ò! !Ñ$Ô$×+Ò+¨FÑ3Ô3Ý˜‘K”KÝ�˜U™œ¨)Ð4Ñ4Ô4ð
ñ 
ô 
ˆõ
 ÝŒI×!Ò! !Ñ$Ô$×+Ò+¨FÑ3Ô3Ý˜‘K”KÝ�˜U™œ¨)Ð4Ñ4Ô4ð
ñ 
ô 
ˆõ ˜˜A˜ f¨fÐ%5¸fÀfÐ=MÐNÑNÔNˆå�a˜�V 6¨6Ð"2¸6¸(ÐCÑCÔCˆÝ�S”Y”_Ñ%Ô%ˆØˆˆa‰ØŒ	×Ò˜E¨4ÐÑ0Ô0Ð0å
Ô˜f cÑ*Ô*Ð*ØŒ|Ô! S¤Y¤_Ò4Ð4Ð4Ð4Ð4Ð4r4   c                 ó    — t          ddg¦  «        }t          ||g|d¬¦  «        }|r|dv r|j        |j        usJ ‚d S |j        |j        u sJ ‚d S )Nr   r   T©r#   Úcopy©r   r'   )r   r	   r'   )r-   r#   Úusing_copy_on_writeÚserÚcombs        r2   Útest_concat_copy_index_seriesz-TestIndexConcat.test_concat_copy_index_seriesg   sq   € å�a˜�V‰nŒnˆÝ�s˜C�j t°$Ð7Ñ7Ô7ˆØ"ð 	+ d¨lÐ&:Ð&:Ø”: S¤YÐ.Ð.Ð.Ð.Ð.Ð.à”: ¤Ð*Ð*Ð*Ð*Ð*Ð*r4   c                 ó  — t          ddgddggddg¬¦  «        }t          ||g|d¬	¦  «        }|sD|j                             |j        ¦  «        rJ ‚|j                             |j        ¦  «        rJ ‚d S |d
v rD|j                             |j        ¦  «        rJ ‚|j                             |j        ¦  «        sJ ‚d S |dv rB|j                             |j        ¦  «        sJ ‚|j                             |j        ¦  «        rJ ‚d S d S )Nr   r   r   é   r   r   ©rQ   Trb   rd   )r   rQ   )r   r	   r'   Úis_rQ   )r-   r#   re   Údfrg   s        r2   Útest_concat_copy_index_framez,TestIndexConcat.test_concat_copy_index_framep   s#  € å˜˜A˜  A Ð'°#°s°Ð<Ñ<Ô<ˆÝ�r˜2�h T°Ð5Ñ5Ô5ˆØ"ð 	4Ø”z—~’~ b¤hÑ/Ô/Ð/Ð/Ð/Ø”|×'Ò'¨¬
Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ø�\Ð!Ð!Ø”z—~’~ b¤hÑ/Ô/Ð/Ð/Ð/Ø”<×#Ò# B¤JÑ/Ô/Ð/Ð/Ð/Ð/Ð/Ø�^Ð#Ð#Ø”:—>’> "¤(Ñ+Ô+Ð+Ð+Ð+Ø”|×'Ò'¨¬
Ñ3Ô3Ð3Ð3Ð3ð $Ð#à3Ð3r4   c                 óÌ  — t          g d¢d¬¦  «        }t          g d¢d¬¦  «        }t          ||gdd¬¦  «        }t          |j        t          j        ¦  «        sJ ‚t          dd	gd
dgddgg¦  «        }t          j        ||dd¬¦  «         t          g d¢¦  «        }t          g d¢¦  «        }t          ||gdd¬¦  «        }t          |j        t          j        ¦  «        sJ ‚t          dd	gd
dgddgg¦  «        }t	          j        d
¦  «        |_        t          j        ||dd¬¦  «         t          dd
gddgdœ¦  «        }t          dd	gddgdœ¦  «        }t          ||gdd¬¦  «        }t          ddgd
dgddgd	dggddg¬¦  «        }t          j        ||dd¬¦  «         t          ||gdd¬¦  «        }t          g d¢g d¢g¦  «        }t          j        ||dd¬¦  «         d S )Nr   r   r:   )rj   é   é   r    r   T)r#   r$   rj   r   rp   r   rq   ©Úcheck_index_typeÚcheck_column_typeF)ÚAÚBé   é   r   ru   rv   rk   )r   rp   r   rw   )r   rq   rj   rx   )	r   r	   Ú
isinstancerQ   ÚpdÚ
RangeIndexr   r+   r,   )r-   Ús1Ús2Úresr_   Údf1Údf2s          r2   Útest_default_indexz"TestIndexConcat.test_default_index~   s0  € å�I�I�I CÐ(Ñ(Ô(ˆÝ�I�I�I CÐ(Ñ(Ô(ˆÝ�b˜"�X A°DÐ9Ñ9Ô9ˆÝ˜#œ+¥r¤}Ñ5Ô5Ð5Ð5Ð5Ý˜!˜Q˜ ! Q ¨!¨Q¨Ð0Ñ1Ô1ˆõ 	Ô˜c 3¸ÐQUÐVÑVÔVÐVõ �I�I�IÑÔˆÝ�I�I�IÑÔˆÝ�b˜"�X A°EÐ:Ñ:Ô:ˆÝ˜#œ+¥r¤}Ñ5Ô5Ð5Ð5Ð5Ý˜!˜Q˜ ! Q ¨!¨Q¨Ð0Ñ1Ô1ˆÝ”m AÑ&Ô&ˆŒÝ
Ô˜c 3¸ÐQUÐVÑVÔVÐVõ ˜q !˜f¨A¨q¨6Ð2Ð2Ñ3Ô3ˆÝ˜q !˜f¨A¨q¨6Ð2Ð2Ñ3Ô3ˆå�c˜3�Z a°dÐ;Ñ;Ô;ˆÝ˜!˜Q˜ ! Q ¨!¨Q¨°!°Q°Ð8À3ÈÀ*ÐMÑMÔMˆÝ
Ô˜c 3¸ÐQUÐVÑVÔVÐVå�c˜3�Z a°dÐ;Ñ;Ô;ˆÝ˜˜˜ | | |Ð4Ñ5Ô5ˆÝ
Ô˜c 3¸ÐQUÐVÑVÔVÐVÐVÐVr4   c           
      óÄ  — t          t          j                             d¦  «                             ddd¬¦  «                             dd¦  «        g d¢¬¦  «        }t          ||gd	¬
¦  «        }t          j        |j	        d d …d d…f         |¦  «         t          j        |j	        d d …dd …f         |¦  «         t          ||gd¬
¦  «        }t          j        |j	        d d…         |¦  «         t          j        |j	        dd …         |¦  «         t          t          t          j                             d¦  «         
                    d¦  «        g d¢¬¦  «        t          t          j                             d¦  «                             ddd¬¦  «                             dd¦  «        ddg¬¦  «        gd	¬
¦  «        }t          ||gd	¬
¦  «        }t          j        |j	        d d …d d…f         |¦  «         t          j        |j	        d d …dd …f         |¦  «         t          ||gd¬
¦  «        }t          j        |j	        d d…         |¦  «         t          j        |j	        dd …         |¦  «         |j	        dd…d d …f                              |j	        dd …         ¦  «        }t          j        ||¦  «         |j	        dd…d d …f                              |j	        dd…         ¦  «                             |j	        dd…         ¦  «        }t          j        ||¦  «         t          ||gd¬
¦  «        }|                     |¦  «        }t          j        ||¦  «         d S )Nr   r   é
   é(   )Úsizerj   )ru   ru   ÚCr†   rk   r   rB   )rƒ   rj   )ru   ru   rv   rv   é   ru   r†   rq   rx   é	   )r   r(   r[   r\   ÚintegersÚreshaper	   r+   r,   ÚilocÚstandard_normalÚ_append)r-   rm   rJ   r1   s       r2   Útest_dups_indexzTestIndexConcat.test_dups_indexž   sQ  € õ ÝŒI×!Ò! !Ñ$Ô$×-Ò-¨a°¸"Ð-Ñ=Ô=×EÒEÀbÈ!ÑLÔLØ(Ð(Ð(ð
ñ 
ô 
ˆõ
 ˜˜R˜ qÐ)Ñ)Ô)ˆÝ
Ô˜fœk¨!¨!¨!¨R¨a¨R¨%Ô0°"Ñ5Ô5Ð5Ý
Ô˜fœk¨!¨!¨!¨Q¨R¨R¨%Ô0°"Ñ5Ô5Ð5å˜˜R˜ qÐ)Ñ)Ô)ˆÝ
Ô˜fœk¨#¨2¨#Ô.°Ñ3Ô3Ð3Ý
Ô˜fœk¨"¨#¨#Ô.°Ñ3Ô3Ð3õ åÝ”I×)Ò)¨!Ñ,Ô,×<Ò<¸WÑEÔEØ0Ð0Ð0ðñ ô õ Ý”I×)Ò)¨!Ñ,Ô,×5Ò5°a¸À"Ð5ÑEÔE×MÒMÈbÐRSÑTÔTØ  #˜Jðñ ô ð	ð ð
ñ 
ô 
ˆõ ˜˜R˜ qÐ)Ñ)Ô)ˆÝ
Ô˜fœk¨!¨!¨!¨R¨a¨R¨%Ô0°"Ñ5Ô5Ð5Ý
Ô˜fœk¨!¨!¨!¨Q¨R¨R¨%Ô0°"Ñ5Ô5Ð5å˜˜R˜ qÐ)Ñ)Ô)ˆÝ
Ô˜fœk¨#¨2¨#Ô.°Ñ3Ô3Ð3Ý
Ô˜fœk¨"¨#¨#Ô.°Ñ3Ô3Ð3ð ”˜˜1˜˜a˜a˜a˜”×(Ò(¨¬°°°¬Ñ5Ô5ˆÝ
Ô˜f bÑ)Ô)Ð)à”˜˜1˜˜a˜a˜a˜”×(Ò(¨¬°°1°¬Ñ6Ô6×>Ò>¸r¼wÀqÈÀt¼}ÑMÔMˆÝ
Ô˜f bÑ)Ô)Ð)å˜2˜r˜(¨Ð+Ñ+Ô+ˆØ—’˜B‘”ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   N)Ú__name__Ú
__module__Ú__qualname__r3   ÚpytestÚmarkÚparametrizerL   r`   rh   rn   r�   rŽ   © r4   r2   r   r      s´   € € € € € ð,ð ,ð ,ð2 „[×ÒØ-ð	
ð 	
ð 	
ñô ð0ð 0ñô ð0ð05ð 5ð 5ð,+ð +ð +ð4ð 4ð 4ðWð Wð Wð@10ð 10ð 10ð 10ð 10r4   r   c                   ót  — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    ddg e
d¦  «        gdg ej        d	d
¦  «        gdgddggdg ej        ddd¬¦  «        gg¦  «        ej         	                    ddg e
d¦  «        gdg ej        d	d
¦  «        gdgddggdg ej        ddd¬¦  «        gg¦  «        dedefd„¦   «         ¦   «         Zd„ Zd„ Zd„ Zej         	                    dddggg d¢gg¦  «        d„ ¦   «         Zd„ Zd„ Zd„ Zej         	                    dg d ¢¦  «        d!„ ¦   «         Zd"„ Zd#S )$ÚTestMultiIndexConcatc                 ó  — |}|j         }t          ||gddgdg¬¦  «        }|j         j        d|j        z   k    sJ ‚t          j        |j        d         |¦  «         t          j        |j        d         |¦  «         |j         j        dk    sJ ‚d S )Nr   r   Ú	iterationrW   )r™   r   )r'   r	   rY   r+   r,   r*   Únlevels)r-   Ú multiindex_dataframe_random_dataÚframer'   rJ   s        r2   Ú test_concat_multiindex_with_keysz5TestMultiIndexConcat.test_concat_multiindex_with_keysÓ   s—   € Ø0ˆØ”ˆÝ˜ ˜¨a°¨V¸K¸=ÐIÑIÔIˆàŒ|Ô! ^°e´kÑ%AÒAÐAÐAÐAÝ
Ô˜fœj¨œm¨UÑ3Ô3Ð3Ý
Ô˜fœj¨œm¨UÑ3Ô3Ð3ØŒ|Ô# qÒ(Ð(Ð(Ð(Ð(Ð(r4   c                 óx  — t          j        dgt          d¦  «        gdd g¬¦  «        }t          dt          d¦  «        i|t          j        ¬¦  «        }t          ||gddgdg¬	¦  «        }t          j        ddgdgt          d¦  «        gg d
¢¬¦  «        }t          dt          t          d¦  «        ¦  «        dz  i|t          j        ¬¦  «        }t          j	        ||¦  «         t          ||d d…         gddgdg¬	¦  «        }dgdz  dgdz  z   }dgdz  }t          t          d¦  «        ¦  «        t          t          d¦  «        ¦  «        z   }t          t          |||¦  «        ¦  «        }t          j        |g d
¢¬¦  «        }t          d|i|t          j        ¬¦  «        }t          j	        ||¦  «         d S )Nr   rp   Úlevel1©rY   Úcol)r'   Údtyper   Úlevel2rW   )r£   rŸ   Nrw   )r   Úfrom_productÚranger   r(   Úint32r	   r]   r+   r,   rC   Úfrom_tuples)	r-   r'   rm   rJ   r1   r£   rŸ   Úno_nameÚtupless	            r2   Ú/test_concat_multiindex_with_none_in_index_nameszDTestMultiIndexConcat.test_concat_multiindex_with_none_in_index_namesÝ   s°  € åÔ'¨!¨­e°A©h¬h¨ÀÈ$Ð?OÐPÑPÔPˆÝ˜�u Q™xœxÐ(°½R¼XÐFÑFÔFˆå˜˜R˜¨¨1 v°h°ZÐ@Ñ@Ô@ˆÝÔ'Ø�ˆV�a�S�% ™(œ(Ð#Ð+EÐ+EÐ+Eð
ñ 
ô 
ˆõ ˜e¥T­%°©(¬(¡^¤^°aÑ%7Ð8ÀÍRÌXÐVÑVÔVˆÝ
Ô˜f hÑ/Ô/Ð/å˜˜R   œV˜¨A¨q¨6¸(¸ÐDÑDÔDˆØ��q‘˜A˜3 ™7Ñ"ˆØ��q‘ˆÝ•u˜Q‘x”x‘.”.¥4­¨a©¬¡>¤>Ñ1ˆÝ•c˜& &¨'Ñ2Ô2Ñ3Ô3ˆÝÔ& vÐ5OÐ5OÐ5OÐPÑPÔPˆÝ˜e WÐ-°UÅ"Ä(ÐKÑKÔKˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   c           	      óH  — t          t          j                             d¦  «                             d¦  «        ¦  «        }t          t          j        d¦  «        t          j        d¦  «        gt          j        t          j	        d¦  «        d¦  «        t          j
        t          j	        d¦  «        d¦  «        g¬¦  «        |_        t          |j        g d¢d d …f         |j        dgd d …f         g¦  «        }|j        g d¢d d …f         }t          j        ||¦  «         d S )Nr   )rˆ   r   r   ©ÚlevelsÚcodes)r   r   rj   rp   )r   r   rj   rp   )r   r(   r[   r\   rŒ   r   rz   r{   ÚrepeatÚarangeÚtiler'   r	   r‹   r+   r,   )r-   rm   r~   r_   s       r2   Ú!test_concat_multiindex_rangeindexz6TestMultiIndexConcat.test_concat_multiindex_rangeindexò   sù   € õ
 •r”y×,Ò,¨QÑ/Ô/×?Ò?ÀÑGÔGÑHÔHˆÝÝ”M !Ñ$Ô$¥b¤m°AÑ&6Ô&6Ð7Ý”9�RœY q™\œ\¨1Ñ-Ô-­r¬wµr´yÀ±|´|ÀQÑ/GÔ/GÐHð
ñ 
ô 
ˆŒõ
 �b”g˜i˜i˜i¨¨¨˜lÔ+¨R¬W°a°S¸!¸!¸!°V¬_Ð=Ñ>Ô>ˆØŒg�l�l�l A A A�oÔ&ˆÝ
Ô˜c 3Ñ'Ô'Ð'Ð'Ð'r4   c                 óâ  — t          j        dgdgg¦  «        }t          dg|¬¦  «        }t          j        dgdgg¦  «        }t          dg|¬¦  «        }||dœ}t          dd	gdgddggddgddgddggg d
¢¬¦  «        }t          dgdgg|¬¦  «        }t          t	          |¦  «        dg¬¦  «        }t          j        ||¦  «         t          |dg¬¦  «        }	t          j        |	|¦  «         d S )Nr   r   r   r&   r   r   )r|   r}   r|   r}   )ÚtestnameNN)r­   r®   rY   r´   r    )r   r¤   r   r	   r   r+   r,   )
r-   Úexample_multiindex1Úexample_dataframe1Úexample_multiindex2Úexample_dataframe2Úexample_dictÚexpected_indexr1   Úresult_copyÚresult_no_copys
             r2   Ú(test_concat_multiindex_dfs_with_deepcopyz=TestMultiIndexConcat.test_concat_multiindex_dfs_with_deepcopy  s-  € å(Ô5¸°u¸s¸e°nÑEÔEÐÝ&¨ sÐ2EÐFÑFÔFÐå(Ô5¸°u¸s¸e°nÑEÔEÐÝ&¨ sÐ2EÐFÑFÔFÐà0Ð8JÐKÐKˆÝ#Ø˜4�L 3 %¨#¨s¨Ð4Ø�q�6˜A˜q˜6 A q 6Ð*Ø*Ð*Ð*ð
ñ 
ô 
ˆõ
 ˜q˜c A 3˜Z¨~Ð>Ñ>Ô>ˆÝ�X lÑ3Ô3¸J¸<ÐHÑHÔHˆÝ
Ô˜k¨8Ñ4Ô4Ð4Ý °Z°LÐAÑAÔAˆÝ
Ô˜n¨hÑ7Ô7Ð7Ð7Ð7r4   Úmi1_listr   r   r   g       @g      @r   ru   rv   r<   Ú2017Ú2018)ÚstartÚendÚperiodsÚmi2_listc                 óV  — t          j        |¦  «        }t          j        |¦  «        }t          t          j        dt          |¦  «        f¦  «        |¬¦  «        }t          t          j        dt          |¦  «        f¦  «        |¬¦  «        }|d         |d         k    r3t          |d         t          |d         ¦  «        gg d¢g d¢g¬¦  «        }nQt          |d         |d         z   t          |d         ¦  «        t          |d         ¦  «        z   gg d¢g d¢g¬¦  «        }t          t          j        dt          |¦  «        f¦  «        |¬¦  «        }t          j        d ¦  «        5  t          ||fd¬	¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          j
        ||	¦  «         d S )
Nr   rk   r   )r   r   r   r   )r   r   r   r   r¬   )r   r   r   r   )r   r   r   r   rB   )r   r¤   r   r(   ÚzerosÚlenr]   r+   Úassert_produces_warningr	   r,   )
r-   r¾   rÄ   Úmi1Úmi2r   r€   Úexpected_miÚexpected_dfÚ	result_dfs
             r2   Ú*test_concat_with_various_multiindex_dtypesz?TestMultiIndexConcat.test_concat_with_various_multiindex_dtypes  sà  € õ, Ô% hÑ/Ô/ˆÝÔ% hÑ/Ô/ˆå�œ !¥S¨¡X¤X Ñ/Ô/¸Ð=Ñ=Ô=ˆÝ�œ !¥S¨¡X¤X Ñ/Ô/¸Ð=Ñ=Ô=ˆà�AŒ;˜( 1œ+Ò%Ð%Ý$Ø  œ¥T¨(°1¬+Ñ%6Ô%6Ð7Ø#�|�| \ \ \Ð2ðñ ô ˆKˆKõ
 %à˜Q”K (¨1¤+Ñ-Ý˜ !œÑ%Ô%­¨X°a¬[Ñ(9Ô(9Ñ9ðð $�|�| \ \ \Ð2ðñ ô ˆKõ  ¥¤¨!­S°Ñ-=Ô-=Ð)>Ñ ?Ô ?ÈÐUÑUÔUˆåÔ'¨Ñ-Ô-ð 	3ð 	3Ý  S˜z°Ð2Ñ2Ô2ˆIð	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3øøøð 	3ð 	3ð 	3ð 	3õ 	Ô˜k¨9Ñ5Ô5Ð5Ð5Ð5s   Å)F	Æ	FÆFc                 óD  — t          dg d¢ig d¢¬¦  «        }t          |gdg¬¦  «        }dgg d¢g}|j        }t          j        |¦  «        }t          j        ||¦  «         |}t          dg d¢it          j        |¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nr¡   r   )Ú1Ú2rÑ   r&   ÚX©rX   )r   r	   r'   r   r¤   r+   Úassert_index_equalr,   )r-   rm   Ú	iterablesÚresult_indexrº   rÍ   rÌ   s          r2   Útest_concat_multiindex_z,TestMultiIndexConcat.test_concat_multiindex_F  s¾   € å˜˜˜˜Ð/°°°ÐGÑGÔGˆÝ�R�D ˜uÐ%Ñ%Ô%ˆà�U˜O˜O˜OÐ,ˆ	Ø”xˆÝ#Ô0°Ñ;Ô;ˆå
Ô˜l¨NÑ;Ô;Ð;àˆ	ÝØ�O�O�OÐ$­JÔ,CÀIÑ,NÔ,Nð
ñ 
ô 
ˆõ 	Ô˜i¨Ñ5Ô5Ð5Ð5Ð5r4   c                 ó~  — t          ddgi¦  «        }t          ddgi¦  «        }t          ddgi¦  «        }t          |||gg d¢¬¦  «        }t          j        t          d¬¦  «        5  |j        d	d d …f         }d d d ¦  «         n# 1 swxY w Y   t          dg d
¢it          g d¢¦  «        ¬¦  «        }t          j        t          d¬¦  «        5  |j        d	         }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         t          dg d¢i¦  «        }t          dddgi¦  «        }t          dddgi¦  «        }t          |||gg d¢¬¦  «        }t          j        t          d¬¦  «        5  |j        d	d d …f         }d d d ¦  «         n# 1 swxY w Y   t          g d¢g d¢t          d¦  «        dœ¦  «         	                    ddg¦  «        }d d g|j
        _        t          j        t          d¬¦  «        5  |j        d	d d …f         }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         d S )Nr;   r   r   r   )r   r    r   rÓ   zindexing past lexsort depth©Úmatch©r   r   r   )rÛ   )r    r   rÛ   r&   )r   r   r   r   r   r   r<   )r   r   r   r    r    r   r   )r   r   r   r   r   r   r   Úaababcd)r   r   r;   )r   r	   r+   rÈ   r   r*   r   r,   r]   Ú	set_indexr'   rY   )r-   r   r€   Údf3Údf_aÚout_aÚdf_bÚout_bs           r2   Útest_concat_with_key_not_uniquez4TestMultiIndexConcat.test_concat_with_key_not_uniqueW  s’  € å˜ ! ˜Ñ&Ô&ˆÝ˜ ! ˜Ñ&Ô&ˆÝ˜ ! ˜Ñ&Ô&ˆÝ�s˜C �o¨O¨O¨OÐ<Ñ<Ô<ˆåÔ'ÝÐ&Cð
ñ 
ô 
ð 	*ð 	*ð ”H˜X q q q˜[Ô)ˆEð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*õ
 Ø�Y�Y�YÐ¥uÐ-KÐ-KÐ-KÑ'LÔ'Lð
ñ 
ô 
ˆõ Ô'ÝÐ&Cð
ñ 
ô 
ð 	'ð 	'ð ”H˜XÔ&ˆEð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'õ
 	Ô˜e UÑ+Ô+Ð+å˜   Ð1Ñ2Ô2ˆÝ˜ # s Ð,Ñ-Ô-ˆÝ˜ # s Ð,Ñ-Ô-ˆÝ�s˜C �o¨O¨O¨OÐ<Ñ<Ô<ˆÝÔ'ÝÐ&Cð
ñ 
ô 
ð 	*ð 	*ð ”H˜X q q q˜[Ô)ˆEð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*õ
 à8Ð8Ð8Ø*Ð*Ð*Ý˜Y™œðð ñ
ô 
÷ Š)�S˜#�JÑ
Ô
ð 	ð ! $˜<ˆŒ
ÔÝÔ'ÝÐ&Cð
ñ 
ô 
ð 	*ð 	*ð ”H˜X q q q˜[Ô)ˆEð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*õ
 	Ô˜e UÑ+Ô+Ð+Ð+Ð+sH   Á(BÂB
ÂB
ÃC*Ã*C.Ã1C.Å4FÆFÆFÇ?HÈH!È$H!c                 óø   — t          ddgidg¬¦  «        }t          ddgidg¬¦  «        }d}t          j        t          |¬¦  «        5  t	          ||gddgg d¢g¬	¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nru   r   r   r&   r    z*Level values not unique: \['x', 'y', 'y'\]rÙ   ©r   r    r    )rX   r­   ©r   r’   ÚraisesÚ
ValueErrorr	   )r-   r   r€   Úmsgs       r2   Ú"test_concat_with_duplicated_levelsz7TestMultiIndexConcat.test_concat_with_duplicated_levels…  sì   € å˜˜q˜c˜
¨3¨%Ð0Ñ0Ô0ˆÝ˜˜q˜c˜
¨3¨%Ð0Ñ0Ô0ˆØ;ˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Jð 	JÝ�C˜�: S¨# J¸¸¸Ð7HÐIÑIÔIÐIð	Jð 	Jð 	Jñ 	Jô 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jøøøð 	Jð 	Jð 	Jð 	Jð 	Jð 	Js   ÁA/Á/A3Á6A3r­   r   r    rå   c                 óì   — t          ddgidg¬¦  «        }t          ddgidg¬¦  «        }d}t          j        t          |¬¦  «        5  t	          ||g|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nru   r   r   r&   r    z+levels supported only when keys is not NonerÙ   )r­   ræ   )r-   r­   r   r€   ré   s        r2   Ú&test_concat_with_levels_with_none_keysz;TestMultiIndexConcat.test_concat_with_levels_with_none_keys�  sË   € å˜˜q˜c˜
¨3¨%Ð0Ñ0Ô0ˆÝ˜˜q˜c˜
¨3¨%Ð0Ñ0Ô0ˆØ;ˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	.ð 	.Ý�C˜�: fÐ-Ñ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.ð 	.ð 	.s   ÁA)Á)A-Á0A-c                 ó2  — t          dddgi¦  «        }t          dddgi¦  «        }t          ||gdd¬¦  «        }t          ddgddgdœ¦  «        }t          j        ||¦  «         t	          j        dd¦  «        }t          j        |j        |d¬	¦  «         d S )
Nr   r   r   r   T)r%   r#   )r   r   r   )Úexact)r   r	   r+   r,   rz   r{   rÔ   r'   )r-   r   r€   rJ   r1   rº   s         r2   Útest_concat_range_index_resultz3TestMultiIndexConcat.test_concat_range_index_result•  s¥   € å˜˜q !˜f˜Ñ&Ô&ˆÝ˜˜q !˜f˜Ñ&Ô&ˆå˜˜c˜
¨°AÐ6Ñ6Ô6ˆÝ A q 6°°A°Ð7Ð7Ñ8Ô8ˆÝ
Ô˜f hÑ/Ô/Ð/Ýœ q¨!Ñ,Ô,ˆÝ
Ô˜fœl¨NÀ$ÐGÑGÔGÐGÐGÐGr4   c                 óT  — t          g d¢gt          g d¢d¬¦  «        ¬¦  «        }t          ddggt          ddgd¬¦  «        ¬¦  «        }t          ||gd	d
d	¬¦  «        }t          g d¢ddt          j        ggt          g d¢d¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )N©r   r   r   r   Úobject©r¢   rk   r   r   r   TÚouter©r$   Újoinr%   ©r   r   g      ð?©r   r   r	   r(   r)   r+   r,   )r-   r   r€   rJ   r1   s        r2   Útest_concat_index_keep_dtypez1TestMultiIndexConcat.test_concat_index_keep_dtype   sÄ   € å˜˜˜˜­U°9°9°9ÀHÐ-MÑ-MÔ-MÐNÑNÔNˆÝ˜!˜Q˜˜­%°°A°¸hÐ*GÑ*GÔ*GÐHÑHÔHˆÝ˜˜c˜
°¸GÈ$ÐOÑOÔOˆÝØˆ[ˆ[˜1˜a¥¤˜.Ð)µ5¸¸¸È(Ð3SÑ3SÔ3Sð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   c                 óT  — t          g d¢gt          g d¢|¬¦  «        ¬¦  «        }t          ddggt          ddg|¬¦  «        ¬¦  «        }t          ||gdd	d¬
¦  «        }t          g d¢ddt          j        ggt          g d¢|¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nrñ   r   ró   rk   r   r   r   Trô   rõ   r÷   rø   )r-   Úany_numeric_ea_dtyper   r€   rJ   r1   s         r2   Ú'test_concat_index_keep_dtype_ea_numericz<TestMultiIndexConcat.test_concat_index_keep_dtype_ea_numericª  sÑ   € åØˆYˆYˆK¥ y y yÐ8LÐ!MÑ!MÔ!Mð
ñ 
ô 
ˆõ ˜!˜Q˜˜­%°°A°Ð>RÐ*SÑ*SÔ*SÐTÑTÔTˆÝ˜˜c˜
°¸GÈ$ÐOÑOÔOˆÝØˆ[ˆ[˜1˜a¥¤˜.Ð)Ý˜)˜)˜)Ð+?Ð@Ñ@Ô@ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   r¢   )ÚInt8ÚInt16ÚInt32c                 óT  — t          g d¢gt          g d¢|¬¦  «        ¬¦  «        }t          ddggt          ddgd¬¦  «        ¬¦  «        }t          ||gd	d
d	¬¦  «        }t          g d¢ddt          j        ggt          g d¢d¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nrñ   r   ró   rk   r   r   r   rÿ   Trô   rõ   r÷   rø   )r-   r¢   r   r€   rJ   r1   s         r2   Útest_concat_index_find_commonz2TestMultiIndexConcat.test_concat_index_find_common·  sÆ   € õ ˜˜˜˜­U°9°9°9ÀEÐ-JÑ-JÔ-JÐKÑKÔKˆÝ˜!˜Q˜˜­%°°A°¸gÐ*FÑ*FÔ*FÐGÑGÔGˆÝ˜˜c˜
°¸GÈ$ÐOÑOÔOˆÝØˆ[ˆ[˜1˜a¥¤˜.Ð)µ5¸¸¸È'Ð3RÑ3RÔ3Rð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r4   c                 óâ  — t          g d¢¦  «        }t          ddg¦  «        }t          g d¢¦  «        }t          g |st          nd¬¦  «        }t          ||||gdddd	¬
¦  «        }t          dgdz  t          j        gz   dgdz  t          j        gz   dt          j        gdz  t          j        gdz  dgz   t          j        gz   g|st          nd¬¦  «        }t          j        ||dd¬¦  «         d S )Nr   r   r   )r   r   r   r<   zstring[pyarrow_numpy]ró   Frô   r   )r%   rö   r$   r#   r   r   r   r<   Trr   )r   rò   r	   r   r(   r)   r+   r,   )r-   Úusing_infer_stringr|   r}   Ús3Ús4rJ   r1   s           r2   Ú(test_concat_axis_1_sort_false_rangeindexz=TestMultiIndexConcat.test_concat_axis_1_sort_false_rangeindexÂ  s-  € å�O�O�OÑ$Ô$ˆÝ�S˜#�JÑÔˆÝÐ(Ð(Ð(Ñ)Ô)ˆÝØÐ$6ÐS•f�fÐ<Sð
ñ 
ô 
ˆõ Ø��R˜Ð 5¨wÀUÐQRð
ñ 
ô 
ˆõ à�˜‘	�RœV˜HÑ$Ø�˜‘	�RœV˜HÑ$Ø•b”f� Ñ!Ý”�˜1‘ ˜uÑ$­¬ xÑ/ð	ð !3ÐO•&�&Ð8Oð
ñ 
ô 
ˆõ 	ÔØ�H¨tÀtð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r4   N)r�   r�   r‘   r�   rª   r²   r½   r’   r“   r”   r¥   r(   r°   rz   Ú
date_ranger]   rÎ   r×   rã   rê   rì   rï   rù   rü   r  r  r•   r4   r2   r—   r—   Ò   sW  € € € € € ð)ð )ð )ð0ð 0ð 0ð*(ð (ð (ð8ð 8ð 8ð( „[×ÒØàˆU�E�E˜!‘H”HÐØˆU�I�B”I˜c 3Ñ'Ô'Ð(ØˆU�S˜#�JÐØˆU�M�B”M¨°FÀAÐFÑFÔFÐGð		
ñô ð „[×ÒØàˆU�E�E˜!‘H”HÐØˆU�I�B”I˜c 3Ñ'Ô'Ð(ØˆU�S˜#�JÐØˆU�M�B”M¨°FÀAÐFÑFÔFÐGð		
ñô ð6Øð6Ø(,ð6ð 6ð 6ñô ñô ð$6ð>6ð 6ð 6ð",,ð ,,ð ,,ð\Jð Jð Jð „[×Ò˜X¨#¨s¨¨°°°Ð6GÐ'HÑIÔIð.ð .ñ JÔIð.ð	Hð 	Hð 	Hð0ð 0ð 0ð0ð 0ð 0ð „[×Ò˜WÐ&@Ð&@Ð&@ÑAÔAð0ð 0ñ BÔAð0ð
ð 
ð 
ð 
ð 
r4   r—   )rc   r   Únumpyr(   r’   Úpandas.errorsr   Úpandasrz   r   r   r   r   r	   Úpandas._testingÚ_testingr+   r   r—   r•   r4   r2   ú<module>r     s  ðØ Ð Ð Ð Ð Ð à Ð Ð Ð Ø €€€à ,Ð ,Ð ,Ð ,Ð ,Ð ,à Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð ð|0ð |0ð |0ð |0ð |0ñ |0ô |0ð |0ð~F
ð F
ð F
ð F
ð F
ñ F
ô F
ð F
ð F
ð F
r4   