zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
U
¬ý°dì'ã@sXddlZddlZddlZddlmZmZmZddlm    Z
Gdd„dƒZ Gdd„dƒZ dS)éN)Ú    DataFrameÚ
MultiIndexÚSeriesc@s–eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zej dddg¡dd„ƒZdd„Zdd „Zd!S)"ÚTestMultiLevelcCsÈ|}| d¡ ¡}|j|jdd}|jdd tj¡}t ||¡|dj|jdd}|djdd tj¡}tj||dd|j    jddd ¡}|j|jdd}|jdd tj¡j    }t ||¡dS)    NÚmonthé©ÚlevelÚAF©Z check_names©Úaxis)Úcolumnsr    )
ÚgroupbyÚsumÚreindexÚindexÚ    transformÚnpÚtmÚassert_frame_equalÚassert_series_equalÚT)ÚselfÚ/multiindex_year_month_day_dataframe_random_dataÚymdZ
month_sumsÚresultÚexpected©rúSd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/test_multilevel.pyÚtest_reindex_levels z!TestMultiLevel.test_reindex_levelcCs0|}|jddg}|jddg}t ||¡dS)Nré©ÚfooÚone©Úbarr$)ÚilocÚlocrr)rÚ multiindex_dataframe_random_dataÚframerZ    reindexedrrrÚ test_reindex#szTestMultiLevel.test_reindexcCsŒ|}|jddd…}| |¡}|j|ks,t‚|j|}|j |¡sFt‚|j}|j|d}|j|ksft‚|jdd…|f}|j |¡sˆt‚dS)Né
©r)rrÚAssertionErrorr(Úequalsrr)rrrZ    new_indexÚchunkZymdTrrrÚtest_reindex_preserve_levels*s
 
 z+TestMultiLevel.test_reindex_preserve_levelsc    Csb|}|d}|j d¡}|j|dd}| dd„¡}| dd„¡}| |j¡}tj||dddS)    Nr
rF)Ú
group_keyscSs|dS©Nér©ÚxrrrÚ<lambda>Eóz7TestMultiLevel.test_groupby_transform.<locals>.<lambda>cSs|dSr3rr5rrrr7Fr8r )rÚget_level_valuesrÚapplyrrrr)    rr)r*ÚsZgrouperÚgroupedZappliedrrrrrÚtest_groupby_transform=s  z%TestMultiLevel.test_groupby_transformcCs\tdgdgdggdgdgdggdddgd}ttj d    ¡gd
d d d g|d}|jdddS)Nr#r&Úbazrr$ÚtwoZthree©ÚlevelsÚcodesÚnameséÚaÚbÚcÚd)rrr)rrrÚrandomZrandr)rÚmidxÚdfrrrÚtest_groupby_cornerJsý z"TestMultiLevel.test_groupby_cornercCsŠt ddddddg¡}tddd    d
d d gd dddddgg|d}|jdd|j dd„¡}|jddd}| ¡}|jddgk ¡s†t    ‚dS)N)Úf1Ús1)rMÚs2)Úf2rN)rPrO)Úf3rN)rQrOrr4r!rDééééé    r,é é r-r cSs |ddkS)Nr)rPrQr)Úurrrr7ar8z:TestMultiLevel.test_groupby_level_no_obs.<locals>.<lambda>r©r r    rPrQ)
rÚ from_tuplesrr(rÚmaprrÚallr.)rrJrKZdf1r<rrrrÚtest_groupby_level_no_obsTsúÿ
(z(TestMultiLevel.test_groupby_level_no_obscCsJ|}|dd…j}|d|d<t|jtƒs.t‚|d|dk ¡sFt‚dS)NrR)éÐrrT)r_rr,)rÚ
isinstancerrr.r])rrrrKrrrÚ.test_setitem_with_expansion_multiindex_columnsgs
 z=TestMultiLevel.test_setitem_with_expansion_multiindex_columnscCsÀtdddgt dddg¡d}tdd    d
gt d d dg¡d}||}|j |j¡}| |¡| |¡}t ||¡|ddd …|ddd …}|j |j¡}| |¡| |¡}t ||¡dS)Nrr4r!)r
r)r
r4)ÚBr!)ÚdatarrDrRrS)ÚZr)rdr4éÿÿÿÿ)rrr[rÚunionrrr)rr6ÚyÚresZ    exp_indexÚexprrrÚtest_alignmentqs ÿÿ zTestMultiLevel.test_alignmentcCsš|}|jddgd ¡}|j d¡}|j d¡}| ||g¡ ¡}tj||dd|jj|jjdd…ksnt‚|j|jjdd…d ¡}t ||¡dS)NrrrFr r4)rZmeanrr9rrrCr.)rrrrZk1Zk2rÚresult2rrrÚtest_groupby_multilevel…s  z&TestMultiLevel.test_groupby_multilevelcCsDt ddddg¡}ttj dd¡||d}| d¡|d<| ¡}dS)    Nr")r#r?r%)r&r?rD)rrr)ZTotalsÚ)rr[rrrIÚrandnrZ _consolidate)rrrKrrrÚtest_multilevel_consolidate–s 
ÿz*TestMultiLevel.test_multilevel_consolidatec    Csútdddgddggddddddgddddddggd}ttj d¡|d    }ttj dd
¡|d    }|d}|jd}|dd…}|j d¡|_t     
||¡t     
||¡t j t d d |d W5QRX|jd}| d¡}|dd…}|j d¡|_t     ||¡t     ||¡tdddgddggddddddgddddddggd}ttj d¡|d    }ttj dd
¡|d    }|d}|jd}|dd…}|j d¡|_t     
||¡t     
||¡|jd}| d¡}|dd…}|j d¡|_t     ||¡t     ||¡dS)N©r#r&r)r#r>r)r#Úquxrrrr4)rArBrS©rrDz^\(\('foo', 'bar', 0\), 2\)$)Úmatch)rpr4)r#r&)r#r>)r#rq)rrrrIrnrr(rZ    droplevelrrÚpytestZraisesÚKeyErrorÚxsr)rrZseriesr*rrkrrrrÚtest_level_with_tuplesžsLþ
 
 
   þ
 
 
  z%TestMultiLevel.test_level_with_tuplescCsÂ|}|jddgdd}|jdddddd    g}t ||¡|jjddgddd
}t ||j¡|jddg}t ||¡|d jddg}t ||d ¡|jjdd…ddgf}t ||j¡dS) Nr#rqrrrr4rTrUrVrZr
)rr'rrrr(r)rr)r*rrrrrÚ$test_reindex_level_partial_selectionÎs  z3TestMultiLevel.test_reindex_level_partial_selectionrHrDcCsxdddg}tdgdgdg|gdœƒ}||jdk |¡}| ¡j}tdgdgdggggggdddgd}t ||¡dS)    NrErFrGrr4r!)rErFrGrHr@)rrErÚfirstrrrZassert_index_equal)rrHr2rKÚgrrrrrÚ+test_empty_frame_groupby_dtypes_consistencyás
 
ÿz:TestMultiLevel.test_empty_frame_groupby_dtypes_consistencycCsZddddg}ddddg}tj|ddgd}t||d}| |j¡ ¡}t|ƒd    ksVt‚dS)
N)Ú600809Z20061231)r|Z20070331)r|Z20070630ZdemoZSTK_IDZRPT_Date)rCrrr!)rr[rrrryÚlenr.)rZidx_tpÚdtÚidxr;rrrrÚtest_duplicate_groupby_issuesïsü  z,TestMultiLevel.test_duplicate_groupby_issuescCsPddgg}ddtjfdg}t|t |¡d}|jjj}|jjj}t     ||¡dS)Nr6rrErF)rErGgr-)
rÚnanrrr[ZdtypesrErFrr)rrcrrKrrrrrÚtest_subsets_multiindex_dtypeþs 
 
 
z,TestMultiLevel.test_subsets_multiindex_dtypeN)Ú__name__Ú
__module__Ú __qualname__r r+r1r=rLr^rarjrlrorwrxrtÚmarkZ parametrizer{r€r‚rrrrr s  
 
0
rc@seZdZdZdd„ZdS)Ú
TestSortedz+everything you wanted to test about sortingc    CsÔtdddgdddggddd    ddd    gdd    dddd    ggƒ}td
tt|ƒƒi|d d }|jjd ks`t‚| ¡}|jjdksxt‚td
dddd    git ddddg¡d d }|j    t
j dd…dd…fdd…f}t   ||¡dS)Nr
rbÚCrGrFrErrr4ÚcolÚint64)rZdtypeFTrDrR)rbrE)rbrG)rˆrE)rˆrF)rrÚranger}rZis_monotonic_increasingr.Z
sort_indexr[r(ÚpdZ
IndexSlicerr)rrrKÚsortedrrrrrÚtest_sort_non_lexsorted s"ÿ
ÿû$z"TestSorted.test_sort_non_lexsortedN)rƒr„r…Ú__doc__rŽrrrrr‡sr‡) ÚnumpyrrtZpandasrŒrrrZpandas._testingZ_testingrrr‡rrrrÚ<module>s |