
    A>i#                     T    S SK rS SKrS SKrS SKJrJrJrJr  S SK	J
r   " S S5      rg)    N)	DataFrameIndexSeriesconcatc                       \ rS rSr\R
                  R                  SS9S 5       rS rS r	S r
S rS	 rS
 rS rS rS rS rS rS rSrg)TestDataFrameConcat   z(GH#62888 the `mi[2][1] is 1` check fails)reasonc                 ~   [        SS/S/SS/S9n[        / SQS// SQS9n[        XS	.5      n[        R                  R	                  S
/S-  S/S-  -   [
        R                  " / SQ[        S9/5      nUS   S   SL d   e[        US   S   5      [        L d   e[        S/ SQ0US9n[        R                  " X55        g )N{     dataTF)columnsindex)7     E   p   r   )            c   )OneTwor   r   r      )TFr   r   r   r   r   dtyper   r   )r   r   r   r   r   r   r   r   )r   r   pd
MultiIndexfrom_arraysnparrayobjecttypeinttmassert_frame_equal)selfleftrightresultmiexpecteds         i/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/reshape/concat/test_dataframe.py-test_concat_multiindex_level_bool_and_numericATestDataFrameConcat.test_concat_multiindex_level_bool_and_numeric   s     #sfXdE]K!F8;K
 34 ]]&&!ugk)6fE
 !uQx4BqE!H~$$$f&EFbQ
f/    c                    [        [        R                  " S5      SS/[        R                  S9n[        [        R                  " S5      [        R                  S9n[        X4SS9R                  n[        [        R                  " S5      /S	-  [        R                  " S
5      /S	-  -   / SQS9n[        R                  " X45        g )N)
   r   foobar)r   r   r   )r   r   r   axisfloat64r   float32)r6   r7   r   r   r   )r   r#   onesr:   r;   r   dtypesr   r   r(   assert_series_equalr*   df1df2resultsr/   s        r0   "test_concat_multiple_frames_dtypes6TestDataFrameConcat.test_concat_multiple_frames_dtypes%   s    RWWW-u~RZZXRWWW-RZZ@#!,33XXi !A%))<(=(AA&
 	w1r3   c           	          [        [        R                  " S5      [        S5      S9n[        [        R                  " S5      S-  [        S5      S9n[	        X4SS/S9n[        S	S	S
S
S
S.S	S	S
S
S
S.S.5      n[
        R                  " X45        g )N)r   r   ABr   )r   r   r   )beebah)rH   bookeys      ?g       @))rH   rI   r   )rH   rI   r   )rH   rJ   r   )rH   rJ   r   )rH   rJ   r   )AB)r   r#   r<   listr   r(   r)   r?   s        r0   test_concat_tuple_keys*TestDataFrameConcat.test_concat_tuple_keys0   s    d<!+T$Z@#>>*JK (+'*'*'*'* (+'*'*'*'*
$ 	g0r3   c                    [        SS/SS/S.5      n[        SS/SS	9n[        X/US
9n[        / SQ/ SQS.[        R                  R                  SS/SS/4SS /S9S9n[        R                  " X45        [        SS/S S	9n[        X/US/S9n[        R                  " Xd5        [        X/US
9n[        / SQ/ SQS.[        R                  R                  SS/SS/4S S /S9S9n[        R                  " Xx5        g )Nr   r   皙?皙?)r6   r7   abbaznamerK   )r   r   r   r   )rT   rU   rT   rU   r   namesr   rL   r\   )r   r   r   r    r!   from_productr(   r)   )	r*   dfr   concatted_named_from_keysexpected_namedindex_no_nameconcatted_named_from_namesconcatted_unnamedexpected_unnameds	            r0   test_concat_named_keys*TestDataFrameConcat.test_concat_named_keysI   s   1vsCj9:sCju-$*B8%$@!" )=>--,,sCj1a&-A%QU,W
 	7HsCjt4%+RH=QVPW%X"
8I"B8-@$ )=>--,,sCj1a&-A$PT,V
 	/Br3   c                 8   [        SSS/0[        S5      S9n[        SSS/0[        S5      S9n[        S/ SQ0/ S	QS9n[        X/S
S9n[        R                  " XC5        [        X/SS9n[        R                  " XS5        [        X/SS9n[        R                  " Xc5        [        SS/SS//SS/SS/S9n[        X/SS9n[        R                  " X5        [        X/SS9n	[        R                  " X5        [        SS/5      n
[        SS/5      n[        / SQ/ S	QS9n[        X/S
S9n[        R                  " X5        [        X/SS9n[        R                  " X5        [        X/SS9n[        R                  " X5        [        SS/SS//SS/SS/S9n[        X/SS9n[        R                  " UU5        [        X/SS9n[        R                  " UU5        [        R                  " [        SS9   [        X/SS9  S S S 5        g ! , (       d  f       g = f)NrN   rT   rU   r   r   333333?皙?)rT   rU   ri   rj   )r   r   r   r   r   r8   rowsr   r   )r   r   r   zNo axis named)match	something)
r   ranger   r(   r)   r   r>   pytestraises
ValueError)r*   r@   rA   expected_indexconcatted_indexconcatted_rowconcatted_0expected_columnsconcatted_columnsconcatted_1series1series2expected_index_seriesconcatted_index_seriesconcatted_row_seriesconcatted_0_seriesexpected_columns_seriesconcatted_columns_seriesconcatted_1_seriess                      r0   test_concat_axis_parameter.TestDataFrameConcat.test_concat_axis_parameter_   s"   sCj)q:sCj)q: #C)=#>lS #':
o>z7
m<cZa0
k: %3Z#s$QFS#J
 #C:I>
/BcZa0
k<#s$#s$ !'';< P!'(:!I
5M%w&8vF
3K#W$6Q?
1I #,3Z#s$QFQF#
 $*7*<9#M 
68OP#W$6Q?
02IJ ]]:_=G%K8 >==s   6H
Hc           	      h   [        S[        S5      0S[        R                  R	                  / SQ/ SQ/SS/S9S	9n[        UR                  S S2S S 24   UR                  S
S 2S S 24   45      n[        S/ SQ0S[        R                  R                  / SQSS/S9S	9n[        R                  " X#5        g )Ncol	   int32)A0A1A2)B0B1B2r   r   r[   )r   r   )r   r         ))r   r   )r   r   )r   r   )r   r   )
r   rn   r    r!   r^   r   ilocfrom_tuplesr(   r)   r*   r_   r-   r/   s       r0   test_concat_numerical_names/TestDataFrameConcat.test_concat_numerical_names   s    E!H**');<QF + 	
 !Qa9:L!--++HQRTUPV , 
 	f/r3   c                    [        SS0/5      n[        X/SS9nUR                  S5      n[        [        R                  " SS/5      R                  SS5      SS/S9R                  S5      n[        R                  " X#5        g )NrV   rW   r   r8   categoryr   rG   )r   r   astyper#   r$   reshaper(   r)   r   s       r0   test_concat_astype_dup_col.TestDataFrameConcat.test_concat_astype_dup_col   sx    c
|$RH1%:&HHc3Z ((A.c


&
 	 	f/r3   c                     [        S[        / SQ[        / SQSS9S905      n[        S[        SS/[        S	S
/SS9S905      n[        X#/SSS/US9n[	        UR
                  5      SS/:X  d   eg )Nvaluer   r   r   )rV   rW   cidrY   r   r   r   rV   rW   r   t1t2)r9   rL   sort)r   r   )r   r   )r   r   r   r   rP   r   )r*   r   r   r   r-   s        r0   test_concat_dataframe_keys_bug2TestDataFrameConcat.test_concat_dataframe_keys_bug   s}    fYeO$.OPQ
 AeS#JT6R!STU qd|$GFNN#'IIIIr3   c                     [        [        / SQSS95      n[        [        / SQSS95      n[        X/5      n[        UR                  S5      U/5      n[        R
                  " X45        g )N)TFTTboolr   )r   r   r   int64)r   r   r   r   r(   r)   r*   r@   rA   r-   r/   s        r0   test_concat_bool_with_int-TestDataFrameConcat.test_concat_bool_with_int   sY     8GHy89
#3::g.45
f/r3   c                 8   / SQn/ SQn[        X!S9n[        U/S/SS/S9n[        R                  R	                  S/U/SS/S9n[        X%S9n[
        R                  " XF5        [
        R                  " UR                  R                  S	   [        S	S
/SS95        g )N)r   r   r   r   )r   r   rN   IDdater]   r[   r   r   rY   )r   r   r    r!   r^   r(   r)   assert_index_equalr   levelsr   )r*   r   r   r_   r-   r.   r/   s          r0   )test_concat_duplicates_in_index_with_keys=TestDataFrameConcat.test_concat_duplicates_in_index_with_keys   s    D.C5v?]]''#tVn'M$1
f/
fll11!4eQF6PQr3   c                     [        S/S/SS.5      n[        SS/05      n[        X/SSSS9n[        S	[        R                  /SS/S	[        R                  /S
.5      n[        R
                  " X45        g )Nr   r   rN   rO   r   rN   d   Touterignore_indexjoinr   rM   )r   rN   rO   )r   r   r#   nanr(   r)   r   s        r0   test_outer_sort_columns+TestDataFrameConcat.test_outer_sort_columns   sl    qc23se%
G$O#rvvaXS"&&MRS
f/r3   c                     [        S/S/SS.5      n[        S/SS.5      n[        X/SSSS	9n[        SS/SS/S
.5      n[        R                  " X45        g )Nr   r   r   r   r   rN   r   Tinnerr   r   rN   r   r   r(   r)   r   s        r0   test_inner_sort_columns+TestDataFrameConcat.test_inner_sort_columns   s_    qc23se*+
G$O!Qq#h78
f/r3   c                     [        S/SS.5      n[        U/SSSS9n[        S/S/S.5      n[        R                  " X#5        g )Nr   r   r   Tr   r   r   r   )r*   r@   r-   r/   s       r0   test_sort_columns_one_df,TestDataFrameConcat.test_sort_columns_one_df   sF    se*+DwTJ!C512
f/r3    N)__name__
__module____qualname____firstlineno__ro   markxfailr1   rC   rQ   rf   r   r   r   r   r   r   r   r   r   __static_attributes__r   r3   r0   r   r      sh    [[HI0 J0*	212C,89t0*	0J0
R000r3   r   )numpyr#   ro   pandasr    r   r   r   r   pandas._testing_testingr(   r   r   r3   r0   <module>r      s)        `0 `0r3   