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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
U
­ý°d;<ã@s’ddlZddlZddlmZddlZddlmZmZm    Z    m
Z
ddl m Z Gdd„dƒZGdd„dƒZGdd    „d    ƒZGd
d „d ƒZGd d „d ƒZdS)éN)ÚInvalidIndexError)ÚCategoricalIndexÚIndexÚ IntervalIndexÚ    Timestampc@s$eZdZdd„Zdd„Zdd„ZdS)ÚTestTakec    Cs˜tdddgdd}| t dddg¡¡}tdddgdd}t ||¡t |j|j¡|jt dddg¡dd    }tddtjgdddgdd
}t ||¡t |j|j¡|jt dddg¡d dd }tdddgdd}t ||¡t |j|j¡tt    d ƒt    dƒddd}| t dddg¡¡}tt    dƒt    dƒddd}t ||¡t |j|j¡|jt dddg¡dd    }tddtjgt    dƒddd}t ||¡t |j|j¡|jt dddg¡d dd }tt    dƒt    dƒddd}t ||¡t |j|j¡d}t
j t |d |jt dddg¡dd    W5QRXt
j t |d |jt dddg¡dd    W5QRXd}t
j t |d| t ddg¡¡W5QRXdS)NéééÚxxx©ÚnameréÿÿÿÿT©Ú
fill_value)Ú
categoriesr F©Z
allow_fillrZCBAÚABC)rÚorderedr ZBCAÚBÚCúJWhen allow_fill=True and fill_value is not None, all indices must be >= -1©Úmatchéþÿÿÿéûÿÿÿú3index -5 is out of bounds for (axis 0 with )?size 3)rÚtakeÚnpÚarrayÚtmÚassert_index_equalZassert_categorical_equalÚvaluesÚnanÚlistÚpytestÚraisesÚ
ValueErrorÚ
IndexError)ÚselfÚidxÚresultÚexpectedÚmsg©r.úed:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/indexes/categorical/test_indexing.pyÚtest_take_fill_valuesn   ÿÿ 
ÿ ÿ ÿ$$zTestTake.test_take_fill_valuec    Cs–tjdddgdd}t|ƒ}| t dddg¡¡}tjdddgdd}t|ƒ}t ||¡|jt dddg¡d    d
}tjddd gdd}t dddg¡}t||d }t ||¡|jt dddg¡d d    d}tjdddgdd}t|ƒ}t ||¡d}tj    t
|d |jt dddg¡d    d
W5QRXtj    t
|d |jt dddg¡d    d
W5QRXd}tj    t |d| t ddg¡¡W5QRXdS)Nz
2011-01-01z
2011-02-01z
2011-03-01r r rrrTrÚNaT©rFrrrrrr) ÚpdZ DatetimeIndexrrrrr r!r%r&r'r()r)r*r+r,Zexp_catsr-r.r.r/Útest_take_fill_value_datetimeOs<ÿ   ÿ ÿ$$z&TestTake.test_take_fill_value_datetimec    Cs¤tdddgdd}dddg}d}tjt|d    |j|dd
W5QRXd }tjt|d    |j||d W5QRXd }tjt|d    |j|ddW5QRXdS)Nrr    r
Úfoor rrz1take\(\) got an unexpected keyword argument 'foo'r)r5z$the 'out' parameter is not supported)Úoutz%the 'mode' parameter is not supportedZclip)Úmode)rr%r&Ú    TypeErrorrr')r)r*Úindicesr-r.r.r/Útest_take_invalid_kwargsvs
z!TestTake.test_take_invalid_kwargsN)Ú__name__Ú
__module__Ú __qualname__r0r4r:r.r.r.r/rs>'rc@s4eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd S) Ú
TestGetLocc     Csúttdƒtdƒd}ttdƒƒ}| d¡| d¡ks8t‚| d¡| d¡ksPt‚||fD](}tjtdd| d¡W5QRXqXttd    ƒtdƒd}ttd    ƒƒ}| d
¡}t     || d
¡¡t     |t
  d d d d d d g¡¡| d¡}|| d¡ksøt‚|d kst‚||fD]*}tjtdd| d¡W5QRXqttdƒtdƒd}ttdƒƒ}| d¡}|| d¡ksxt‚|t dddƒksŽt‚| d¡}|| d¡ks¬t‚|t dddƒksÂt‚||fD]*}tjtdd| d¡W5QRXqÊdS)NZabcdeÚedabcr2ÚaÚez 'NOT-EXIST'rz    NOT-EXISTZaacdedÚdFTéZaabbbÚabcrr    Úbéz'c'Úc) rr$rÚget_locÚAssertionErrorr%r&ÚKeyErrorr Úassert_numpy_array_equalrrÚslice)    r)Zcidx1Úidx1ÚiZcidx2Úidx2ÚresZcidx3Zidx3r.r.r/Ú test_get_locˆs@   
ÿ
 
 
 zTestGetLoc.test_get_loccCs&ttdƒƒ}| d¡}|dks"t‚dS)NrDrEr)rr$rHrI)r)Úcidxr+r.r.r/Útest_get_loc_unique·s 
zTestGetLoc.test_get_loc_uniquecCs2ttdƒƒ}| d¡}tdddƒ}||ks.t‚dS)NZabbcrErr
)rr$rHrLrI©r)rRr+r,r.r.r/Ú test_get_loc_monotonic_nonunique¼s 
 z+TestGetLoc.test_get_loc_monotonic_nonuniquecCs<ttdƒƒ}| d¡}tjddddgtd}t ||¡dS)NZabcbrEFT©Údtype)rr$rHrrÚboolr rKrTr.r.r/Ú#test_get_loc_nonmonotonic_nonuniqueÂs 
z.TestGetLoc.test_get_loc_nonmonotonic_nonuniquecCs,tddtjgƒ}| tj¡}|dks(t‚dS)NÚArr    )rrr#rHrI)r)ÚcirPr.r.r/Útest_get_loc_nanÈs zTestGetLoc.test_get_loc_nanN)r;r<r=rQrSrUrYr\r.r.r.r/r>‡s
/r>c@sLeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dS)ÚTestGetIndexerc    Csjttdƒtdƒd}tjt|ƒtjd}| |¡}t ||¡t    j
t dd|j|ddW5QRXdS)NÚcabr2rVzInvalid fill methodrÚinvalid©Úmethod) rr$rZarangeÚlenÚintpÚ get_indexerr rKr%r&r')r)r*r,Úactualr.r.r/Útest_get_indexer_baseÑs 
 z$TestGetIndexer.test_get_indexer_basec
CsÆtj d¡ttdƒtdƒdd}tt |¡ƒ}d}ddd    t|ƒfD]B}|tjjd
t|ƒ|d }t    j
t |d |  |¡W5QRXqDtdƒtd ƒfD](}t    j
t |d |  |¡W5QRXq˜dS)NiÍ[Úaabbcar^F©rrú8Reindexing only valid with uniquely valued Index objectsrr    rFr)ÚsizerZaababca) rÚrandomÚseedrr$rrrbÚrandintr%r&rrd)r)r[Zoidxr-ÚnÚfinderr.r.r/Ú test_get_indexer_requires_uniqueÜs z/TestGetIndexer.test_get_indexer_requires_uniquec
Csšttdƒtdƒd}ttdƒƒ}|tdƒttdƒƒfD]^}d}tjt|d| |¡W5QRX| |¡\}}tj    ddd    d
gtj
d }t   ||¡q6dS) NÚaabcder?r2Úabfrirrrr    rrV) rr$rr%r&rrdZget_indexer_non_uniquerrrcr Zassert_almost_equal)r)rMrOZindexerr-Zr1Ú_r,r.r.r/Útest_get_indexer_non_uniqueôs z*TestGetIndexer.test_get_indexer_non_uniquec    Cs¨ttdƒtdƒd}ttdƒƒ}d}tjt|d|j|ddW5QRXd    }tjt|d|j|d
dW5QRXd }tjt|d|j|d dW5QRXdS) Nrqr?r2rrz3method pad not yet implemented for CategoricalIndexrÚpadr`z8method backfill not yet implemented for CategoricalIndexZbackfillz7method nearest not yet implemented for CategoricalIndexZnearest)rr$r%r&ÚNotImplementedErrorrd)r)rMrOr-r.r.r/Útest_get_indexer_methods z&TestGetIndexer.test_get_indexer_methodcCsftjtdƒtdƒgtd}tdƒtdƒg}t||ddd}| |¡}tjddgd    d}t ||¡dS)
Nz1999-12-31 00:00:00z2000-12-31 00:00:00rVFÚcategory)rrrWrrrc)rrrÚobjectrrdr rK)r)ZarrZcatsr[r+r,r.r.r/Útest_get_indexer_arraysþ
z%TestGetIndexer.test_get_indexer_arraycCsPtddgddgd}| tddgddgd¡}tjddgdd}t ||¡dS©Nr@rEr2rrcrV©rrdrrr rK©r)r[r+r,r.r.r/Ú+test_get_indexer_same_categories_same_ordersz:TestGetIndexer.test_get_indexer_same_categories_same_ordercCsPtddgddgd}| tddgddgd¡}tjddgdd}t ||¡dSr{r|r}r.r.r/Ú0test_get_indexer_same_categories_different_order"sz?TestGetIndexer.test_get_indexer_same_categories_different_ordercCsŒtddtjdgƒ}dddtjg}| |¡}tjddddgtjd}t ||¡ddddg}| |¡}tjddddgtjd}t ||¡dS)Nrr    r
rCrrVr)rrr#rdrrcr rK)r)r[Zother1Zres1Z    expected1Zother2Zres2Z    expected2r.r.r/Ú)test_get_indexer_nans_in_index_and_target*s
 
z8TestGetIndexer.test_get_indexer_nans_in_index_and_targetN) r;r<r=rfrprtrwrzr~rr€r.r.r.r/r]Ðs   r]c@seZdZdd„Zdd„ZdS)Ú    TestWherecCsž|}ttdƒtdƒdd}dgt|ƒ}|}| ||ƒ¡}t ||¡dgdgt|ƒd}ttjg|dd… ¡|j    d}| ||ƒ¡}t ||¡dS)Nrgr^FrhTrr2)
rr$rbÚwherer r!rr#Útolistr)r)Z listlike_boxÚklassrNZcondr,r+r.r.r/Ú
test_where8s "zTestWhere.test_wherec    Cs~tddddgƒ}t ddddg¡}| |d¡}tddddgtd}t ||¡d    }tj    t
|d
|j   |d¡W5QRXdS) Nr@rErGrBTFr    rVz3Cannot setitem on a Categorical with a new categoryr) rrrr‚rryr r!r%r&r8Ú_dataZ_where)r)r[Úmaskr+r,r-r.r.r/Útest_where_non_categoriesFs  z#TestWhere.test_where_non_categoriesN)r;r<r=r…rˆr.r.r.r/r7src
@sŽeZdZdd„Zdd„Zej dddg¡dd    „ƒZejjd
e     
d d ¡dfd e     
dd¡dfde d ƒdfe      d ¡dfge ddd„ƒZdd„ZdS)Ú TestContainscCsdttdƒtdƒdd}d|ks"t‚d|ks.t‚d|ks:t‚tj|ksHt‚d|ksTt‚d    |ks`t‚dS)
NrgÚcabdefFrhr@ÚzrArr)rr$rIrr#©r)r[r.r.r/Ú test_containsUs    zTestContains.test_containscCs.ttdƒtjgtdƒd}tj|ks*t‚dS)NrgrŠr2)rr$rr#rIrŒr.r.r/Útest_contains_nanaszTestContains.test_contains_nanÚunwrapTFc    Cs\tjddd dtj¡}| d¡}||d}t|ƒ}|}|rD|j}tj|ksRt    ‚d|ks^t    ‚tj|kslt    ‚t 
d¡|ks~t    ‚t  d¡|kst    ‚t|ƒ}|r¢|j}tj|ks°t    ‚d|ks¼t    ‚tj|ksÊt    ‚t 
d¡|ksÜt    ‚t  d¡|ksît    ‚t|ƒ}|r|j}tj|kst    ‚d|ks t    ‚tj|ks0t    ‚t 
d¡|ksDt    ‚t  d¡|ksXt    ‚dS)Nz
2016-01-01éd)ZperiodsrÚDrr1) r3Z
date_rangeÚinsertr1Z    to_periodrr†rr#rIZ
datetime64Z timedelta64)    r)rZdtiÚpiZtdir[ÚobjÚobj2Zobj3r.r.r/Útest_contains_na_dtypees8
   z#TestContains.test_contains_na_dtypezitem, expectedrr)çø?Tgà?r—)r@F)ÚidscCs*tt tdƒ¡ƒ}||k}||ks&t‚dS)Nr
)rrZ from_breaksÚrangerI)r)Úitemr,r[r+r.r.r/Útest_contains_intervalŠsz#TestContains.test_contains_intervalc    Cshtdddgƒ}d|kst‚tjtdddg|kW5QRXtjtddddg|kW5QRXdS)Nrr    r
r@zunhashable typerrE)rrIr%r&r8)r)r*r.r.r/Útest_contains_listœs  zTestContains.test_contains_listN)r;r<r=rrŽr%ÚmarkZ parametrizer–r3ZIntervalrZ    TimedeltaÚstrr›rœr.r.r.r/r‰Ts" 
$
 úö
r‰)Únumpyrr%Z pandas.errorsrZpandasr3rrrrZpandas._testingZ_testingr rr>r]rr‰r.r.r.r/Ú<module>s  wIg