Ë
    ¤eh6  ã                   óÂ  — d dl Zd dlZd dlmZmZmZ d dlmZ	 ej                  d„ «       Zej                  j                  dd„ d„ fd„ d„ fd	„ d
„ fg«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej                  j                  dg d¢g d¢gg d¢g d¢ddgfg d¢g d¢gg d¢g d¢ddgfg d ¢g d!¢gg d¢g d"¢d#d$gfg d%¢g d¢g d&¢gg d¢g d'¢g d(¢fg«      d)„ «       Zd*„ Zy)+é    N)Ú	DataFrameÚ
MultiIndexÚSeriesc                  ó’   — t         j                  j                  d«      j                  d«      } t	        | g d¢g d¢gg d¢g d¢g¬«      S )z—
    Factory function to create simple 3 x 3 dataframe with
    both columns and row MultiIndex using supplied data or
    random data by default.
    é   )é   r   ©r   r   é   ©é   é   é
   ©r
   r
   r   ©r   r   é   ©ÚcolumnsÚindex)ÚnpÚrandomÚdefault_rngÚstandard_normalr   )Údatas    úh/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/indexing/multiindex/test_iloc.pyÚsimple_multiindex_dataframer      sA   € ô �9‰9× Ñ  Ó#×3Ñ3°FÓ;€DÜØ’y¢*Ð-²iÂÐ5Môð ó    zindexer, expectedc                 ó    — | j                   d   S )Nr   ©Úiloc©Údfs    r   ú<lambda>r"      ó   € �r—w‘w˜q‘z€ r   c                 ó0   — t        | d   g d¢g d¢gd¬«      S )Nr   r	   r   )r
   r   ©r   Úname©r   ©Úarrs    r   r"   r"      s   € œ˜s 1™vªiºÐ-DÈ6ÔR€ r   c                 ó    — | j                   d   S ©Nr   r   r    s    r   r"   r"   "   r#   r   c                 ó0   — t        | d   g d¢g d¢gd¬«      S )Nr   r	   r   )r   r   r%   r'   r(   s    r   r"   r"   #   s   € œ˜s 1™vªiºÐ-DÈ7ÔS€ r   c                 ó(   — | j                   d d …df   S r+   r   r    s    r   r"   r"   &   s   € �r—w‘wšq !˜t‘}€ r   c                 ó8   — t        | d d …df   g d¢g d¢gd¬«      S )Nr   r   r   )r
   r   r%   r'   r(   s    r   r"   r"   '   s   € œ˜s¢1 a 4™y²ºKÐ0HÈwÔW€ r   c                 ól   — |}|j                   } | |«      } ||«      }t        j                  ||«       y )N)ÚvaluesÚtmÚassert_series_equal)ÚindexerÚexpectedr   r!   r)   Úresults         r   Útest_iloc_returns_seriesr6      s4   € ð$ 
%€BØ
�)‰)€CÙ�R‹[€FÙ˜‹}€HÜ×Ñ˜6 8Õ,r   c                 ó|   — | }|j                   ddg   }|j                  dd¬«      }t        j                  ||«       y )Nr   é   r
   F©Ú
drop_level)r   Úxsr1   Úassert_frame_equal)r   r!   r5   r4   s       r   Útest_iloc_returns_dataframer=   3   s:   € Ø	$€BØ�W‰W�a˜�V‰_€FØ�u‰u�Q 5ˆuÓ)€HÜ×Ñ˜& (Õ+r   c                 óV   — | }|j                   }|j                  d   }|d   }||k(  sJ ‚y )N©r   r   )r0   r   )r   r!   r)   r5   r4   s        r   Útest_iloc_returns_scalarr@   :   s4   € Ø	$€BØ
�)‰)€CØ�W‰W�T‰]€FØ�4‰y€HØ�XÒÐÑr   c                  ó0  — t        g d¢g d¢gŽ } t        j                  | «      }t        t        j
                  j                  d«      j                  d«      |¬«      }|j                  ddg   }|j                  dd¬	«      }t        j                  ||«       y )
N)ÚarB   ÚbrC   )ÚxÚyrD   rE   r   )r
   r
   ©r   r   rC   Fr9   )Úzipr   Úfrom_tuplesr   r   r   r   r   r   r;   r1   r<   )Útupr   r!   r5   r4   s        r   Ú test_iloc_getitem_multiple_itemsrJ   B   s|   € ä
Ò$Ò&:Ð;Ð
<€CÜ×"Ñ" 3Ó'€EÜ	”2—9‘9×(Ñ(¨Ó+×;Ñ;¸FÓCÈ5Ô	Q€BØ�W‰W�a˜�V‰_€FØ�u‰u�S UˆuÓ+€HÜ×Ñ˜& (Õ+r   c                  óÊ   — t         j                  j                  d«      j                  d«      } t	        | g d¢g d¢gg d¢g d¢g¬«      }|j
                  d   }| d   }||k(  sJ ‚y )	Nr   ©r
   r   )ÚirM   Új)ÚArO   ÚB)rM   rM   rN   Úk)ÚXrR   ÚYrS   r   r?   )r   r   r   r   r   r   )r)   r!   r5   r4   s       r   Útest_iloc_getitem_labelsrT   L   se   € ä
�)‰)×
Ñ
 Ó
"×
2Ñ
2°6Ó
:€CÜ	ØÚ ¢/Ð2Ú#Ò%9Ð:ô
€Bð
 �W‰W�T‰]€FØ�4‰y€HØ�XÒÐÑr   c                 ó\   — | }|j                   d d }|d d }t        j                  ||«       y )Nr
   )r   r1   r<   ©Ú multiindex_dataframe_random_datar!   r5   r4   s       r   Útest_frame_getitem_slicerX   Y   s1   € Ø	)€BØ�W‰W�R�aˆ[€FØ�"�1ˆv€HÜ×Ñ˜& (Õ+r   c                 ó®   — | }d|j                   d d |j                  d d dk(  j                  «       sJ ‚|j                  dd  dk7  j                  «       sJ ‚y )Nr   r
   )r   r0   Úall)rW   r!   s     r   Útest_frame_setitem_slicer[   `   sX   € Ø	)€BØ€B‡G�GˆBˆQ€Kà�I‰I�b�qˆM˜QÑ×#Ñ#Ô%Ð%Ð%Ø�I‰I�a�bˆM˜QÑ×#Ñ#Ô%Ð%Ñ%r   c                  ó8  — t        j                  g d¢«      } t        j                  g d¢«      }t        t        j                  d«      j                  d«      || ¬«      }|j                  d d …df   }|j                  d d …df   }t        j                  ||«       y )N))ÚOhioÚGreen©r]   ÚRed)ÚColorador^   ))rB   r8   )rB   r   )rC   r8   )rC   r   r   rL   )r   r   r8   r_   )
r   rH   r   r   ÚarangeÚreshaper   Úlocr1   r2   )r   r   r!   r5   r4   s        r   Ú test_indexing_ambiguity_bug_1678re   h   s}   € ä×$Ñ$ÚCó€Gô ×"Ñ"Ò#KÓL€Eä	”2—9‘9˜R“=×(Ñ(¨Ó0¸ÀwÔ	O€Bà�W‰W’Q˜�T‰]€FØ�v‰v’a˜Ð(Ñ)€HÜ×Ñ˜6 8Õ,r   c                  óZ  — ddgddgddgddgd	d
gg} t        j                  g d¢«      }t        | «      }t        | |¬«      }t        t        d«      D ��cg c]*  }t        d«      D �cg c]  }|j                  ||f   ‘Œ c}‘Œ, c}}«      }t        j                  ||«       y c c}w c c}}w )NÚstr00Ústr01Ústr10Ústr11Ústr20Úsrt21Ústr30Ústr31Ústr40Ústr41))ÚCCrO   ©rq   rP   rr   )ÚBBrB   )rs   rC   rF   é   r   )r   rH   r   Úranger   r1   r<   )r   r   r4   r!   ÚrÚcr5   s          r   Útest_iloc_integer_locationsrx   v   s«   € ð 
�'ÐØ	�'ÐØ	�'ÐØ	�'ÐØ	�'Ðð€Dô ×"Ñ"ÚIó€Eô ˜‹€HÜ	�4˜uÔ	%€BäÄ5ÈÃ8×L¸a´°a³Ö9¨1˜Ÿ™  A ›Ô9ÓLÓM€Fä×Ñ˜& (Õ+ùò :ùÓLs   ÁB'
Á&B"Á>B'
Â"B'
z!data, indexes, values, expected_k)r   é   rt   )r   é!   r   )r   éÿÿÿÿr8   )r   r   r8   é   r   )r8   ry   i+  )r8   rz   iš  )éÈ   i,  éd   ió  i*  )r8   r   r|   )r   r
   r   )r   r   iè  é   iú  )r8   é   r
   )r   rz   r   )r
   r|   r   )r   é   é   c                 ó   — t        | g d¢¬«      }|j                  ddg«      }|j                  j                  «       }t	        ||«      D ]  \  }}|j
                  |xx   |z  cc<   Œ ||d<   |j                  }t        j                  ||«       y )N)rM   rN   rQ   )r   r   rM   rN   rQ   )r   Ú	set_indexrQ   ÚcopyrG   r   r1   r2   )	r   Úindexesr0   Ú
expected_kr!   ÚseriesrM   Úvr4   s	            r   Ú'test_iloc_setitem_int_multiindex_seriesrŠ   Œ   s�   € ô 
˜¢oÔ	6€BØ	�‰�s˜C�jÓ	!€Bà�T‰T�Y‰Y‹[€FÜ�G˜VÓ$ò ‰ˆˆ1Ø�‰�A‹˜!ÑŒðð €B€s�GØ�t‰t€HÜ×Ñ˜6 8Õ,r   c                 óŽ   — | }|j                   d   }|j                  |j                  d   «      }t        j                  ||«       y r+   )r   r;   r   r1   r2   rV   s       r   Útest_getitem_ilocrŒ   §   s:   € Ø	)€BØ�W‰W�Q‰Z€FØ�u‰u�R—X‘X˜a‘[Ó!€HÜ×Ñ˜6 8Õ,r   )Únumpyr   ÚpytestÚpandasr   r   r   Úpandas._testingÚ_testingr1   Úfixturer   ÚmarkÚparametrizer6   r=   r@   rJ   rT   rX   r[   re   rx   rŠ   rŒ   © r   r   ú<module>r–      s0  ðÛ Û ÷ñ õ
 ð ‡�ñ
ó ð
ð ‡�×ÑØñ "ÙRð	
ñ
 "ÙSð	
ñ
 %ÙWð	
ðóñ"-ó#ð"-ò,òò,ò
ò,ò&ò-ò,ð, ‡�×ÑØ'ò ’jÐ	!¢:ªy¸1¸b¸'ÐBâ
šÐ	%¢z²?ÀSÈ$ÀKÐPâ
’YÐ	¢ª^¸bÀ$¸ZÐHâ
’j¢*Ð	-ªzº:Â{ÐSð	óñ-óð-ó-r   