zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
U
­ý°du"ã@s`ddlZddlZddlmmZddlmZm    Z    m
Z
m Z ddl m ZGdd„dƒZdd„ZdS)éN)Ú    DataFrameÚ
MultiIndexÚ
date_rangeÚ to_datetimec
@sºeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Ze    j
d d„ƒZ e j  deeg¡dd„ƒZdd„Ze j  deddƒedƒgddgfeddƒeddddddddgfg¡dd „ƒZdS)!ÚTestMultiIndexPartialc    CsÐddg}ddg}ttdƒt ||g¡d}ttdƒ|d}|d}t ||¡ttdƒt |dd…|g¡d}|dg}t ||¡tjtdd    |dW5QRXtjtd
d    |dgW5QRXdS) Né
éÚaÚbé©ÚindexÚcolumnséÚ1©Úmatchz'\[1\] not in index')    rÚrangerÚ from_productÚtmÚassert_frame_equalÚpytestÚraisesÚKeyError)ÚselfÚl1Úl2ÚdfÚexpectedÚresult©r údd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/indexing/multiindex/test_partial.pyÚtest_getitem_partial_ints  ÿ
 z.TestMultiIndexPartial.test_getitem_partial_intcCsdS)Nr )rr r r!Útest_series_slice_partial'sz/TestMultiIndexPartial.test_series_slice_partialc
Csô|}|}| d¡}|jd}|jdj}t ||¡t ||¡| d¡}|jd}t ||¡tddgddgddggddddddddgddddddddgddddddddggd    }ttj     d
d ¡|t
d ƒd }    |     d¡}|    jd}t ||¡dS)NÚfoo©éÐéÚbarÚoneZtwoéÿÿÿÿrr)ÚlevelsÚcodesér'Zabcdr )r$r)) ÚxsÚlocÚTrrrrÚnpÚrandomÚrandnÚlist)
rÚ multiindex_dataframe_random_dataÚ/multiindex_year_month_day_dataframe_random_dataÚframeÚymdrZresult2rr rr r r!Útest_xs_partial*s*
 
 
 
 ýþ
 
z%TestMultiIndexPartial.test_xs_partialcCsT|}|j}|d}|j|j|jjddkd}|j d¡ d¡|_t ||¡dS)N©r&r r)rr)r0Zreindexrr,Ú    droplevelrr)rr6r8rrr r r!Útest_getitem_partialJs z*TestMultiIndexPartial.test_getitem_partialcCsl|}|jdd…}|dd…}t ||¡|}|jdd…}|jjd}||dk|dk@}t ||¡dS)Nr(Zbazéér:r%r)r/rrr r,)rr5r6r7rrr8Zlevr r r!Útest_fancy_slice_partialSs   z.TestMultiIndexPartial.test_fancy_slice_partialc    CsÔtdddgdddgdddggddgddgddggd    }ttj d
d ¡|d }|jd dd…f}|jd }t ||¡|jd ddgf}|jd ddg}t ||¡tj    t
dd|jddd…fW5QRXdS)Nrrr    r
ÚxÚyÚpÚq)r,r+r=r ©r )r    rAz\('a', 'foo'\)r)r    r$) rrr1r2Zrandr/rrrrr)rÚidxrrrr r r!Ú"test_getitem_partial_column_selectcsþ
  z8TestMultiIndexPartial.test_getitem_partial_column_selectc    Cs(|}| ¡}| ¡}d|jd<d|jdd…<t ||¡|rjt ¡d|djd<W5QRXd|jd<nd|djd<d|jdd…df<t ||¡d|jd    <d|jdd
…<t ||¡|rþt ¡d|djd <W5QRX|djd |djd kn&d|djd <|djd dks$t‚dS) Nrr%éAéUrÚA)r%rIér&édé)Úcopyr/ÚilocrrZraises_chained_assignment_errorÚAssertionError)rr6Zusing_copy_on_writer8rÚexpr r r!Útest_partial_setws,
 
 
 
z&TestMultiIndexPartial.test_partial_setÚdtypec    CsÖ|}|jj}|j |d |¡g|dd…¡|_|d}|j}t|tƒsNt‚|tkrn|jdjt    j
ks„t‚n|jdjt    j ks„t‚d|jdks–t‚|jdj r¦t‚|j r°t‚t jtdd|dW5QRXdS)NrrrIrLZ14r)r r+Z
set_levelsZastypeÚ
isinstancerrOÚintrRr1Úint_Úfloat64Z_should_fallback_to_positionalrrr)rr6rRr8r+ZserÚmir r r!Ú!test_getitem_intkey_leading_level™s&
z7TestMultiIndexPartial.test_getitem_intkey_leading_levelcCs|}| ¡}| ¡}d|jddg<d|jd<d|jd<t ||¡| ¡}| ¡}d|jdd…<d|jd<d|jd<t ||¡|d ¡}|d ¡}d|jddg<d|jd<d|jd<t ||¡|d ¡}|d ¡}d|jdd…<d|jd<d|jd<t ||¡dS)Nrr$r(rI)rMr/rrZassert_series_equal)rr5r7rrr r r!Útest_setitem_multiple_partial²s2
 
 
 
 
 
 
 
z3TestMultiIndexPartial.test_setitem_multiple_partialzindexer, exp_idx, exp_valuesz2019-2Nz
2019-02-01r r=Ú2019ÚMS©ZperiodsÚfreqrrc    Cstdddd}tttdƒƒtj|ddggdd    gd
d }t|tj|ddggdd    gd
d }||}t ||¡|j|}t ||¡|jdd |}t ||¡|j|dd…f}t ||¡|     dd¡ 
¡}|     dd¡ 
¡}|jdd…|dd…f}t ||¡dS) NrZr r[r\r'rrr@rA©ÚnamesrD©Zaxis) rrr4rrrrrr/Z    swaplevelZ
sort_index)    rZindexerZexp_idxZ
exp_valuesZdate_idxrrrZdf2r r r!Ú!test_partial_getitem_loc_datetimeÐs* 
þþ 
   z7TestMultiIndexPartial.test_partial_getitem_loc_datetime)Ú__name__Ú
__module__Ú __qualname__r"r#r9r<r?rFÚtdZskip_array_manager_invalid_testrQrÚmarkZ parametrizerTÚfloatrXrYÚslicerrrar r r r!rs*     
!
 
ýþþ rcCsŒddgddgg}tj|ddgd}tj|dd    gd}ttj d
d
¡||d }|jdd…dd…f d¡jddd }|jd }t     
||¡dS)Nr    r
r rZcol1Zcol2r^Zrow1Zrow2r'r r`)r    r
) rrrr1r2r3rNr;r/rr)Ú    iterablesrÚrowsrrrr r r!Ú"test_loc_getitem_partial_both_axisøs&
rk)Únumpyr1rZpandas.util._test_decoratorsÚutilZ_test_decoratorsreZpandasrrrrZpandas._testingZ_testingrrrkr r r r!Ú<module>s j