Ë
    ž…jz  ã                   óp   — d Z ddlmZ ddlZddlZddlZddlm	Z
 ej                  d„ «       Z G d„ d«      Zy)z�
Note: for naming purposes, most tests are title with as e.g. "test_nlargest_foo"
but are implicitly also testing nsmallest_foo.
é    )Úascii_lowercaseNc                  óB  — t        j                  g d¢g d¢g d¢t        d«      t        j                  t        d«      «      j	                  d«      g d¢t        j
                  dd¬	«      t        j
                  ddd
¬«      t        j                  ddd¬«      dœ	g d¢¬«      S )N)é   r   é   ©r   r   é   )g      @g      @g      @ÚabcÚcategory)é   é   é	   Ú20130101r   )Úperiodsz
US/Eastern)r   Útzz1 sÚs)r   Úfreq)	ÚgroupÚintÚfloatÚstringÚcategory_stringÚcategory_intÚdatetimeÚ
datetimetzÚ	timedelta©Úcolumns)ÚpdÚ	DataFrameÚlistÚSeriesÚastypeÚ
date_rangeÚtimedelta_range© ó    úi/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pandas/tests/frame/methods/test_nlargest.pyÚdf_main_dtypesr(      s{   € ä�<‰<âÚÚ$Ü˜5“kÜ!Ÿy™y¬¨e«Ó5×<Ñ<¸ZÓHÚ%ÜŸ™ j¸!Ô<ÜŸ-™-¨
¸AÀ,ÔOÜ×+Ñ+¨E¸1À3ÔGñ
	
ò

ôð r&   c                   ó
  — e Zd Zej                  j                  ddgdgddgddgddgddgg d¢g d¢g d¢g d¢g d	¢g d
¢g«      ej                  j                  d edd«      «      d„ «       «       Zej                  j                  dddgddgg«      d„ «       Zd„ Z	d„ Z
d„ Zej                  j                  dg d¢g d¢dgdgddgddgg«      ej                  j                  d edd«      «      d„ «       «       Zd„ Zd„ Zd„ Zd„ Zy)ÚTestNLargestNSmallestÚorderÚaÚcÚb©r,   r.   r-   )r-   r,   r.   )r-   r.   r,   )r.   r-   r,   )r.   r,   r-   )r.   r-   r-   Únr   é   c                 óº  — t        j                  t        j                  j	                  d«      j                  d«      t        t        d d «      t        j                  j	                  d«      j                  d«      j                  d«      dœ«      }d|v r>d|› d�}t        j                  t        |¬«      5   t        ||«      ||«       d d d «       y |d	k(  } t        ||«      ||«      }t        j                  t        |j                  «      «      |_        |j                  ||¬
«      j!                  |«      }t#        j$                  ||«       y # 1 sw Y   y xY w)Nr   é
   Úfloat64r/   r.   z6Column 'b' has dtype (object|str), cannot use method 'ú' with this dtype©ÚmatchÚ	nsmallest©Ú	ascending)r   r   ÚnpÚrandomÚdefault_rngÚpermutationr    r   r"   ÚpytestÚraisesÚ	TypeErrorÚgetattrÚIndexÚindexÚsort_valuesÚheadÚtmÚassert_frame_equal)	ÚselfÚnselect_methodr0   r+   ÚdfÚ	error_msgr:   ÚresultÚexpecteds	            r'   Útest_nlargest_nz%TestNLargestNSmallest.test_nlargest_n.   s1  € ô* �\‰\ä—Y‘Y×*Ñ*¨1Ó-×9Ñ9¸"Ó=Üœ/¨#¨2Ð.Ó/Ü—Y‘Y×*Ñ*¨1Ó-×9Ñ9¸"Ó=×DÑDÀYÓOñó
ˆð �%‰<ð&Ø&4Ð%5Ð5FðHð ô —‘œy°	Ô:ñ 6Ø+”˜˜NÓ+¨A¨uÔ5÷6ð 6ð '¨+Ñ5ˆIØ0”W˜R Ó0°°EÓ:ˆFÜŸ8™8¤D¨¯©Ó$6Ó7ˆFŒLØ—~‘~ e°y�~ÓA×FÑFÀqÓIˆHÜ×!Ñ! &¨(Õ3÷6ð 6ús   Â6EÅEr   r   r   r   c                 óN  — |}|d   }d|› d||   j                   › d|› d�}|j                  dd«      j                  dd	«      j                  d
d«      j                  dd«      }t        j                  t        |¬«      5   t        ||«      d|«       d d d «       y # 1 sw Y   y xY w)Nr   zColumn 'z' has dtype z, cannot use method 'r5   ú(z\(ú)z\)ú[z\[ú]z\]r6   r   )ÚdtypeÚreplacer?   r@   rA   rB   )rI   r(   rJ   r   rK   ÚcolrL   s          r'   Útest_nlargest_errorz)TestNLargestNSmallest.test_nlargest_errorX   s³   € ð ˆØ�a‰jˆà�s�e˜<¨¨3©¯© ð 7"Ø"0Ð!1Ð1BðDð 	ð ×Ñ˜c 5Ó)ß‰W�S˜%Ó ß‰W�S˜%Ó ß‰W�S˜%Ó ð	 	ô �]‰]œ9¨IÔ6ñ 	4Ø'ŒG�B˜Ó'¨¨7Ô3÷	4÷ 	4ñ 	4ús   Á>BÂB$c                 ó¬   — |}|j                  dt        t        |«      ddhz
  «      «       |j                  dt        t        |«      ddhz
  «      «       y )Nr   r   r   )r8   r    ÚsetÚnlargest)rI   r(   rK   s      r'   Útest_nlargest_all_dtypesz.TestNLargestNSmallest.test_nlargest_all_dtypesl   sK   € ØˆØ
�‰�QœœS ›WÐ(9¸8Ð'DÑDÓEÔFØ
�‰�A”tœC ›GÐ'8¸(Ð&CÑCÓDÕEr&   c                 óh  — t        j                  g d¢g d¢dœ«      }|j                  dddg¬«      }t        j                  g d¢g d	¢dœg d
¢¬«      }t        j                  ||«       |j                  dddg¬«      }t        j                  g d¢g d¢dœg d¢¬«      }t        j                  ||«       y )N)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   ©rD   )r   r   r   r   )r   r   r   r   )é   r_   r   r   )r   r   r[   rG   rH   r8   ©rI   rK   rM   rN   s       r'   Ú+test_nlargest_duplicates_on_starter_columnszATestNLargestNSmallest.test_nlargest_duplicates_on_starter_columnsq   s™   € ô �\‰\Ò 2Ò9KÑLÓMˆà—‘˜Q¨¨c¨
�Ó3ˆÜ—<‘<Ú¢\Ñ2º,ô
ˆô 	×Ñ˜f hÔ/à—‘˜a¨#¨s¨�Ó4ˆÜ—<‘<Ú¢\Ñ2º,ô
ˆô 	×Ñ˜f hÕ/r&   c                 ón  — t        j                  dgdz  g d¢dœ«      }|j                  dd«      }t        j                  dgdz  g d¢dœt        d«      ¬«      }t	        j
                  ||«       |j                  dd«      }t        j                  dgdz  g d¢dœ«      }t	        j
                  ||«       y )	Nr   ra   ©r   r   r   r_   ra   r^   r   r,   r   r`   )r   r   r[   ÚrangerG   rH   r8   rb   s       r'   Ú test_nlargest_n_identical_valuesz6TestNLargestNSmallest.test_nlargest_n_identical_values‚   s“   € ä�\‰\   a¡ªoÑ>Ó?ˆà—‘˜Q Ó$ˆÜ—<‘< q c¨A¡g²IÑ >ÄeÈAÃhÔOˆÜ
×Ñ˜f hÔ/à—‘˜a Ó%ˆÜ—<‘< q c¨A¡g²IÑ >Ó?ˆÜ
×Ñ˜f hÕ/r&   é   c                 ó   — t        j                  g d¢g d¢g d¢dœg d¢¬«      }|j                  ||«      }|j                  |d¬«      j	                  |«      }t        j                  ||«       |j                  ||«      }|j                  |d	d¬
«      j	                  |«      }|dgk(  r|dv s|ddgk(  r5|dk(  r0|j                  t        j                  j                  dd	¬«      «       t        j                  ||«       y )N)r   r   r   r_   r_   )r   r   r   r   r   )r   r   r   ra   r_   r/   )r   r   r   r   r   r`   Ústable)ÚkindF)r:   rk   r,   )r   r   r   r_   r.   ra   zYpandas default unstable sorting of duplicatesissue with numpy>=1.25 with AVX instructions)ÚreasonÚstrict)r   r   r8   rE   rF   rG   rH   r[   Úapplymarkerr?   ÚmarkÚxfail)rI   r0   r+   ÚrequestrK   rM   rN   s          r'   Útest_nlargest_n_duplicate_indexz5TestNLargestNSmallest.test_nlargest_n_duplicate_indexŽ   só   € ô �\‰\Ú!ªºoÑNÚ!ô
ˆð —‘˜a Ó'ˆØ—>‘> %¨h�>Ó7×<Ñ<¸QÓ?ˆÜ
×Ñ˜f hÔ/à—‘˜Q Ó&ˆØ—>‘> %°5¸x�>ÓH×MÑMÈaÓPˆØ�c�UŠN˜q LÑ0°uÀÀcÀ
Ò7JÐPQÐUVÒPVØ×ÑÜ—‘×!Ñ!ðGð !ð "ó ôô 	×Ñ˜f hÕ/r&   c                 ót  — t        j                  g d¢g d¢dœ«      }|j                  ddd¬«      }t        j                  g d¢g d	¢dœg d
¢¬«      }t        j                  ||«       |j                  ddd¬«      }t        j                  g d¢g d¢dœt        dd«      ¬«      }t        j                  ||«       y )N)ra   r_   r_   r   r   r   r   r   )r3   r   r   r   ra   é2   r3   é   r^   r_   r,   Úall)Úkeep)ra   r_   r_   r   r   r   r   )r3   r   r   ra   rt   r3   ru   )r   r   r   r_   ra   rh   r   r`   r   )r   r   r   r   r   )r   ra   rt   r3   ru   r   r   )r   r   r[   rG   rH   r8   rf   rb   s       r'   Ú%test_nlargest_duplicate_keep_all_tiesz;TestNLargestNSmallest.test_nlargest_duplicate_keep_all_ties¬   s©   € ä�\‰\Ú*Ò1MÑNó
ˆð —‘˜Q ¨%�Ó0ˆÜ—<‘<â*Ú.ñò (ô
ˆô 	×Ñ˜f hÔ/à—‘˜a ¨5�Ó1ˆÜ—<‘<â$Ú'ñô ˜˜1“+ô
ˆô 	×Ñ˜f hÕ/r&   c                 ór  — t        j                  t         j                  j                  dgddgg«      ddgddgddgd	d
gg¬«      }|j	                  dd«      }|j
                  g d¢   }t        j                  ||«       |j                  dd«      }|j
                  g d¢   }t        j                  ||«       y )NÚxr,   r.   g…ëQ¸Õ?g¤p=
×£À?g…ëQ¸…ë?g      Ð?gffffffæ?g333333ë?g…ëQ¸í?)r   Údatar   )rz   r,   )r   r   r   )rz   r.   )r   r   r   )	r   r   Ú
MultiIndexÚfrom_productr8   ÚilocrG   rH   r[   rb   s       r'   Ú&test_nlargest_multiindex_column_lookupz<TestNLargestNSmallest.test_nlargest_multiindex_column_lookupÅ   s«   € ô �\‰\Ü—M‘M×.Ñ.°°¸¸S°zÐ/BÓCØ˜�,  t ¨t°T¨l¸TÀ4¸LÐIô
ˆð —‘˜a Ó,ˆØ—7‘7š9Ñ%ˆÜ
×Ñ˜f hÔ/ð —‘˜Q 
Ó+ˆØ—7‘7š9Ñ%ˆÜ
×Ñ˜f hÕ/r&   c                 ó  — t        j                  t        j                  t        j                  ddddg«      }|j	                  dd«      }|j                  dd¬«      j                  d«      }t        j                  ||«       y )Nr   r   r   r   ra   Fr9   )	r   r   r;   Únanr[   rE   rF   rG   rH   rb   s       r'   Útest_nlargest_nanz'TestNLargestNSmallest.test_nlargest_nan×   sb   € ä�\‰\œ2Ÿ6™6¤2§6¡6¨1¨a°°AÐ6Ó7ˆØ—‘˜Q Ó"ˆØ—>‘> !¨u�>Ó5×:Ñ:¸1Ó=ˆÜ
×Ñ˜f hÕ/r&   c                 ó$  — t        j                  g d¢g d¢g d¢dœt        d«      ¬«      }|j                  ddd	g¬
«      }t        j                  g d¢g d¢g d¢dœt        d«      ¬«      j	                  ddi«      }t        j                  ||«       y )N)r   r   r   r_   ra   Nr   )r   rh   ra   r_   r   r   r   )r   r   r   r   r   r   r   r/   r   r`   ra   r,   r.   r   re   )r   rh   ra   r_   r   )r   r   r   r   r   r   )r   r   rf   r8   r"   rG   rH   rb   s       r'   Ú"test_nsmallest_nan_after_n_elementz8TestNLargestNSmallest.test_nsmallest_nan_after_n_elementÞ   s‰   € ä�\‰\â-Ú*Ú*ñô
 ˜“(ô
ˆð —‘˜a¨#¨s¨�Ó4ˆÜ—<‘<â$Ú$Ú$ñô
 ˜“(ô
÷ ‰&�#�w�Ó
 ð 	ô 	×Ñ˜f hÕ/r&   N)Ú__name__Ú
__module__Ú__qualname__r?   ro   Úparametrizerf   rO   rX   r\   rc   rg   rr   rx   r   r‚   r„   r%   r&   r'   r*   r*   +   sE  „ ð ‡[�[×ÑØàˆEØˆEØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJÚÚÚÚÚâð	
óð$ ‡[�[×Ñ˜S¡%¨¨2£,Ó/ñ4ó 0ó%ð&4ð. ‡[�[×ÑØ�WÐ/Ð0°7¸HÐ2EÐFóñ4óð4ò"Fò
0ò"
0ð ‡[�[×ÑØÚ	š/¨C¨5°3°%¸#¸s¸ÀcÈ3ÀZÐPóð ‡[�[×Ñ˜S¡%¨¨1£+Ó.ñ0ó /ó	ð
0ò20ò20ò$0ó0r&   r*   )Ú__doc__r   r   Únumpyr;   r?   Úpandasr   Úpandas._testingÚ_testingrG   Úfixturer(   r*   r%   r&   r'   ú<module>r�      s?   ðñõ
 #ã Û ã Ý ð ‡�ñó ð÷6F0ò F0r&   