Ë
    ômxi  ã                   ón   — d dl Zd dlZd dlmZ d dlZd dlmZmZ d dl	m
Z d„ Zd„ Zd„ Zd„ Zd„ Zd	„ Zd
„ Zy)é    N)Únp_version_gt2)Ú	DataFrameÚ
MultiIndexc                 óh   — | j                  «       }| j                  }t        j                  ||«       y )N)Úto_numpyÚvaluesÚtmÚassert_numpy_array_equal)ÚidxÚresultÚexps      úa/home/htdocs/ttos/venv/lib/python3.12/site-packages/pandas/tests/indexes/multi/test_conversion.pyÚtest_to_numpyr      s&   € Ø�\‰\‹^€FØ
�*‰*€CÜ×Ñ ¨Õ,ó    c                 óN  — t        j                  | «      }t        j                  dt        ¬«      }g d¢|d d  t	        j
                  ||«       t        j                  | «      }t        j                  | «      }t        j                  ||«      sJ ‚t        j                  | d¬«      }t        j                  | d¬«      }t        j                  ||«      rJ ‚t        sy d}t	        j                  t        |¬«      5  t        j                  | d¬«       d d d «       y # 1 sw Y   y xY w)	N)é   ©Údtype©)ÚfooÚone)r   Útwo)Úbarr   )Úbazr   )Úquxr   )r   r   T)ÚcopyzGStarting with NumPy 2.0, the behavior of the 'copy' keyword has changed©ÚmatchF)ÚnpÚasarrayÚemptyÚobjectr	   r
   Úmay_share_memoryÚarrayr   Úassert_produces_warningÚFutureWarning)r   r   ÚexpectedÚresult_copy1Úresult_copy2Úmsgs         r   Útest_array_interfacer+      sç   € ä�Z‰Z˜‹_€FÜ�x‰x˜¤FÔ+€Hò€H‰Q€Kô ×Ñ ¨Ô1ô —:‘:˜c“?€LÜ—:‘:˜c“?€LÜ×Ñ˜|¨\Ô:Ð:Ð:ô —8‘8˜C dÔ+€LÜ—8‘8˜C dÔ+€LÜ×"Ñ" <°Ô>Ð>Ð>åàð T€CÜ	×	#Ñ	#¤M¸Ô	=ñ "Ü
�‰�˜5Õ!÷"÷ "ñ "ús   Ã:DÄD$c            	      ó€  — g d¢} t        j                  | «      }|j                  d¬«      }t        | «      }t	        j
                  ||«       |j                  «       }||_        t	        j
                  ||«       g d¢} t        j                  | ddg¬«      }|j                  d¬«      }t        | «      }ddg|_        t	        j
                  ||«       |j                  «       }||_        t	        j
                  ||«       t        j                  | «      }|j                  dddg¬«      }t        | «      }ddg|_        t	        j
                  ||«       |j                  ddg¬«      }||_        ddg|_        t	        j
                  ||«       d	}t        j                  t        |¬
«      5  |j                  d¬«       d d d «       d}t        j                  t        |¬
«      5  |j                  dg¬«       d d d «       t        j                  t        d«      t        j                  dd¬«      g«      }|j                  d¬«      }t        t!        j"                  t!        j$                  dd¬«      d«      t!        j&                  t        j                  dd¬«      d«      dœ«      }t	        j
                  ||«       |j                  «       }||_        t	        j
                  ||«       |j                  dddg¬«      }t        t!        j"                  t!        j$                  dd¬«      d«      t!        j&                  t        j                  dd¬«      d«      dœ«      }t	        j
                  ||«       |j                  ddg¬«      }||_        t	        j
                  ||«       y # 1 sw Y   �ŒêxY w# 1 sw Y   �Œ¾xY w)N))é   r   )r-   r   )é   r   )r.   r   F©ÚindexÚfirstÚsecond©Únames)r0   Úname)r5   z1'name' must be a list / sequence of column names.r   z<'name' should have same length as number of levels on index.é   Ú20130101é   )ÚperiodsÚint64r   )r   r-   )r1   r2   )r   Úfrom_tuplesÚto_framer   r	   Úassert_frame_equalr0   ÚcolumnsÚpytestÚraisesÚ	TypeErrorÚ
ValueErrorÚfrom_productÚrangeÚpdÚ
date_ranger   ÚrepeatÚarangeÚtile)Útuplesr0   r   r'   r*   s        r   Útest_to_framerK   7   s  € Ú=€Fä×"Ñ" 6Ó*€EØ�^‰^ %ˆ^Ó(€FÜ˜Ó €HÜ×Ñ˜& (Ô+à�^‰^Ó€FØ€H„NÜ×Ñ˜& (Ô+â=€FÜ×"Ñ" 6°'¸8Ð1DÔE€EØ�^‰^ %ˆ^Ó(€FÜ˜Ó €HØ Ð*€HÔÜ×Ñ˜& (Ô+à�^‰^Ó€FØ€H„NÜ×Ñ˜& (Ô+ô ×"Ñ" 6Ó*€EØ�^‰^ %¨w¸Ð.Aˆ^ÓB€FÜ˜Ó €HØ Ð*€HÔÜ×Ñ˜& (Ô+à�^‰^ '¨8Ð!4ˆ^Ó5€FØ€H„NØ Ð*€HÔÜ×Ñ˜& (Ô+à
=€CÜ	�‰”y¨Ô	,ñ %Ø�‰˜GˆÔ$÷%ð I€CÜ	�‰”z¨Ô	-ñ 'Ø�‰˜W˜IˆÔ&÷'ô ×#Ñ#¤U¨1£X¬r¯}©}¸ZÐQRÔ/SÐ$TÓU€EØ�^‰^ %ˆ^Ó(€FÜä�y‰yœŸ™ 1¨GÔ4°aÓ8Ü�w‰w”r—}‘} Z¸Ô;¸QÓ?ñ	
ó€Hô ×Ñ˜& (Ô+à�^‰^Ó€FØ€H„NÜ×Ñ˜& (Ô+ð �^‰^ %¨w¸Ð.Aˆ^ÓB€FÜä—Y‘YœrŸy™y¨°'Ô:¸AÓ>Ü—g‘gœbŸm™m¨JÀÔBÀAÓFñ	
ó€Hô ×Ñ˜& (Ô+à�^‰^ '¨8Ð!4ˆ^Ó5€FØ€H„NÜ×Ñ˜& (Õ+÷E%ñ %ú÷'ñ 'ús   Æ+N&Ç#N3Î&N0Î3N=c                  ó>  — t        j                  t        j                  ddd¬«      g d¢t        j                  g d¢d¬«      g d	¢gg d
¢¬«      } t        | j                  «      D ��ci c]  \  }}|| j                  |   j                  “Œ! }}}t        t        j                  ddd¬«      g d¢t        j                  g d¢d¬«      g d	¢d
œ«      }| j                  d¬«      }|j                  j                  «       }t        j                  ||«       ||k(  sJ ‚y c c}}w )NÚ19910905r   z
US/Eastern)r9   Útz)r-   r-   r-   r.   r.   r.   )ÚarO   ÚbrP   ÚcrQ   T)Úordered)ÚxrS   ÚyÚzrS   rT   )ÚdatesrO   rP   rQ   r3   Fr/   )r   Úfrom_arraysrE   rF   ÚCategoricalÚ	enumerater4   Úlevelsr   r   r<   ÚdtypesÚto_dictr	   r=   )ÚmiÚir5   Úoriginal_dtypesÚexpected_dfÚdfÚ	df_dtypess          r   Útest_to_frame_dtype_fidelityrc   €   sô   € ä	×	Ñ	ä�M‰M˜*¨a°LÔAÚÜ�N‰NÒ9À4ÔHÚ*ð		
ò 'ô
€Bô @IÈÏÉÓ?R×S±G°A°t�t˜RŸY™Y q™\×/Ñ/Ñ/ÐS€OÑSää—]‘] :°q¸\ÔJÚ#Ü—‘Ò >ÈÔMÚ/ñ		
ó€Kð 
�‰˜5ˆÓ	!€BØ—	‘	×!Ñ!Ó#€Iä×Ñ˜"˜kÔ*Ø˜iÒ'Ð'Ñ'ùó Ts   Á'$Dc                  óª   — g d¢} t        j                  g d¢g d¢g d¢g| ¬«      }|j                  «       j                  j	                  «       }|| k(  sJ ‚y )N)rU   r   rO   )rO   rP   rQ   )rS   rT   rU   )ÚqÚwÚer3   )r   rW   r<   r>   Útolist)r'   r]   r   s      r   Ú$test_to_frame_resulting_column_orderri   œ   sM   € â€HÜ	×	Ñ	Ú	š/ª?Ð;À8ô
€Bð �[‰[‹]×"Ñ"×)Ñ)Ó+€FØ�XÒÐÑr   c                  óT  — ddg} ddg}t        j                  | |¬«      }t        j                  t        d¬«      5  |j                  «        d d d «       |j                  d¬«      }t        | ||¬	«      }t        j                  ||«       d d
g}t        j                  | |¬«      }t        j                  t        d¬«      5  |j                  «        d d d «       |j                  d¬«      }t        | |d
d
g¬	«      }t        j                  ||«       y # 1 sw Y   ŒÇxY w# 1 sw Y   ŒNxY w)N)r-   r.   )r8   é   rO   r3   z%Cannot create duplicate column labelsr   T)Úallow_duplicates)r0   r>   r   )	r   r;   r?   r@   rB   r<   r   r	   r=   )Údatar4   r0   r   r'   s        r   Útest_to_frame_duplicate_labelsrn   ¦   s  € à�FÐ€DØ�#ˆJ€EÜ×"Ñ" 4¨uÔ5€EÜ	�‰”zÐ)PÔ	Qñ Ø�‰Ô÷ð �^‰^¨Tˆ^Ó2€FÜ˜ U°EÔ:€HÜ×Ñ˜& (Ô+à�1ˆI€EÜ×"Ñ" 4¨uÔ5€EÜ	�‰”zÐ)PÔ	Qñ Ø�‰Ô÷ð �^‰^¨Tˆ^Ó2€FÜ˜ U°Q¸°FÔ;€HÜ×Ñ˜& (Õ+÷ð ú÷ð ús   »DÃ DÄDÄD'c                 ó~   — t        j                  dd¬«      }| j                  «       }t        j                  ||«       y )Nr   F)Útupleize_cols)rE   ÚIndexÚto_flat_indexr	   Úassert_index_equal)r   r'   r   s      r   Útest_to_flat_indexrt   ¼   s:   € Ü�x‰xð	
ð ô
€Hð ×ÑÓ €FÜ×Ñ˜& (Õ+r   )Únumpyr   r?   Úpandas.compat.numpyr   ÚpandasrE   r   r   Úpandas._testingÚ_testingr	   r   r+   rK   rc   ri   rn   rt   © r   r   ú<module>r{      sA   ðÛ Û å .ã ÷õ ò-ò "òFF,òR(ò8ò,ó,,r   