gL idddlZddlZddlZddlmZmZddlmZm Z m Z m Z ddl m ZGddZy)N)IS64is_platform_windows) Categorical DataFrameSeries date_rangeceZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd Zej"j%dgdej"j%dddgdZdZy) TestIterationc@|j|jusJyN)keyscolumnsself float_frames g/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pandas/tests/frame/test_iteration.py test_keyszTestIteration.test_keyss![%8%8888ctgdgdggd}|jD]!\}}t|tjr!Jy)N)arbr)ritems isinstance_constructor_sliced)rdfkvs rtest_iteritemszTestIteration.test_iteritemssD  9- GHHJ @DAqa!>!>? ?? @rcgd}tgdgdg|}t||jD]9\}\}}||k(sJt|tsJ|||k(j r9Jy)N)rrcrrr )rzipr!r"rall)rcolsr$r)r%r&s r test_itemszTestIteration.test_itemssq  9-t <T288:. &IAv16M6a( ((qEQJ##% %% &rcV|jD]\}}|j|k(rJyr )r!name)rfloat_string_framer%r&s rtest_items_nameszTestIteration.test_items_names&s.&,,. DAq66Q; ; rcJt|t|jk(sJyr )listrrs r test_iterzTestIteration.test_iter*s K D)<)<$====rc|jD]*\}}|j|}tj||,|jD]*\}}|j|}tj||,yr )iterrowsloctmassert_series_equal)rrr0r%r&exps r test_iterrowszTestIteration.test_iterrows-sz((* +DAq//!$C  " "1c * +'//1 +DAq$((+C  " "1c * +rctgdtdddd}|jD]*\}}|j|}t j ||,y)N)M1701M1802M1903M2004z 2000-01-01rME)periodsfreq) non_iso8601iso8601)rrr6r7r8r9)rsr%r&r:s rtest_iterrows_iso8601z#TestIteration.test_iterrows_iso86016sX C%lADI   JJL +DAq%%(C  " "1c * +rc Nttjdddgdgdgdgggtgigd}ttjddddddgtigt ddd}t |j \}}tj||y) Nir)rrr)defgabcdefgrobject)indexr/dtype) rdatetimesetrr3nextr6r8r9)rr$expected_results rtest_iterrows_cornerz"TestIteration.test_iterrows_cornerBs ''a34VVTTeWT      tQ *D$Br Jy/   ' 6 vx0rct|jD]`\}}tj|dd}|d|_|j |ddfj d}tj||by)NrrT)drop) enumerate itertuplesrr#r/iloc reset_indexr8r9)rritupserrUs rtest_itertupleszTestIteration.test_itertuplesXsv 6 6 89 2FAs//AB8C1vCH"''1-99t9DH  " "3 1  2rcttjjdj dt ddddg}|j dD]}t|d trJy) Nrr)floatsintsrdrer FrPr) rnprandom default_rngstandard_normalranger\r"intrr$r`s rtest_itertuples_index_falsez)TestIteration.test_itertuples_index_false_sk yy,,Q/??BERSH Uv&  ==u=- +Cc!fc* ** +rctgdgdd}|ddg}t|jgdk(sJts1tr*t t|jddk(sJyyy) Nrrrrdatar))rrr)rrr)rrrr/z![(0, 1, 4), (1, 2, 5), (2, 3, 6)])rr3r\rrrepr)rr$dfaas rtest_itertuples_duplicate_colsz,TestIteration.test_itertuples_duplicate_colshsu ))< =3*~DOO%&*KKKK$%TT"--T-23467 7.2%rctgdgdd}t|jd}|jdk(sJ|j|j |j f|k(sJt|jdk(sJy)NrrrprqTestNamers)Indexrr) rrTr\_fieldsryrrtype__name__rms rtest_itertuples_tuple_namez(TestIteration.test_itertuples_tuple_nameusr ))< =2==j=12{{1111 355#%%(C///Cy!!Z///rctgdgdd}t|jd}|dk(sJ|jdk(sJy) Nrr)defreturnrqrxrs)rrr)ry_1_2)rrTr\rz)rr$tup2s r%test_itertuples_disallowed_col_labelsz3TestIteration.test_itertuples_disallowed_col_labels|sG IC DBMMzM23y   ||4444rlimit)irPTFctt|Dcic] }d|d| c}g}t|j|}t |t sJt |dsJycc}w)Nfoo_bar_rfrz)rrkrTr\r"tuplehasattr)rrrPr_r$rWs r,test_itertuples_py2_3_field_limit_namedtuplez:TestIteration.test_itertuples_py2_3_field_limit_namedtuplesluFA4stA3Z/FG Hbmm%m01&%(((vy)))GsA'ctgdgdd}t|d|d<t|jj}t j |jjj}tj|||jdD] }t||jD]\}}t||jD]\}}t|y)N)rrrrrr)rrrrrrK)id raw_gradergradeFrf)rrr3rvaluesrgarraytolistr8assert_almost_equalr\strr6r!) rr$rWrUtrowrFr)cols r#test_sequence_like_with_categoricalz1TestIteration.test_sequence_like_with_categoricals%4R S ""[/27 bhhoo&88BHHOO,335 vx0U+ A F kkm FC F hhj FAs H rN)r| __module__ __qualname__rr'r-r1r4r;rGrXrbrnrvr}rpytestmark parametrizerrrrr r s9@ &>+ +1,2+ 05  [[W&67 [[WtUm4*58*rr )rRnumpyrgr pandas.compatrrpandasrrrrpandas._testing_testingr8r rrrrs.   LLr