zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
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
U
¬ý°d}-ã@s–ddlmZddlZddlZddlZddlmZddlmZ    ddl
m m Z ejeje d¡ejfeje d¡ejfejdejfejdejfejdejfejd    ejfejd
ejfejdejfejdejfejdejfejd    ejfejd
ejfejdejfejdejfejdejfejd    ejfejd
ejfejdejfejdejfejdejfejd    ejfejd
ejfgd d d „ƒZGdd„dƒZGdd„dƒZdS)é)ÚdatetimeN)ÚiNaTéé€ég@y@@TÚ)ÚparamscCs|jS)N)Úparam)Úrequest©r úMd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/test_take.pyÚdtype_fill_out_dtype sr c@sveZdZe d¡Zdd„Zdd„Zdd„Zdd    „Z    d
d „Z
d d „Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„ZdS)ÚTestTakez Incompatible type for fill_valuecCsÌ|\}}}tj ddd¡ |¡}ddddg}tj|||d}|dddg|dddgk ¡s`t‚|d|kspt‚|j|ks~t‚ddddg}tj|||d}|ddddg||k ¡sºt‚|j|ksÈt‚dS)Nrééréÿÿÿÿ)Ú
fill_valueé©    ÚnpÚrandomÚrandintÚastypeÚalgosÚtake_ndÚallÚAssertionErrorÚdtype©Úselfr rrZ    out_dtypeÚdataÚindexerÚresultr r r Útest_1d_fill_nonna/s
 $  zTestTake.test_1d_fill_nonnacCsÆ|\}}}tj ddd¡ |¡}ddddg}tj||d|d}|dddgdd…f|dddgdd…fk ¡srt‚|ddd…f|k ¡sŽt‚|j|ksœt‚tj||d|d}|dd…dddgf|dd…dddgfk ¡sât‚|dd…df|k ¡sþt‚|j|kst‚ddddg}tj||d|d}|ddddgdd…f||dd…fk ¡s^t‚|j|ksnt‚tj||d|d}|dd…ddddgf|dd…|fk ¡s²t‚|j|ksÂt‚dS)Nrr©érrr©Úaxisrrrrr r r Útest_2d_fill_nonna?s$
 44 22zTestTake.test_2d_fill_nonnacCsî|\}}}tj ddd¡ |¡}ddddg}tj||d|d}|dddgdd…dd…f|dddgdd…dd…fk ¡s~t‚|ddd…dd…f|k ¡s t‚|j|ks®t‚tj||d|d}|dd…dddgdd…f|dd…dddgdd…fk ¡st‚|dd…ddd…f|k ¡s&t‚|j|ks6t‚tj||d|d}|dd…dd…dddgf|dd…dd…dddgfk ¡sŠt‚|dd…dd…df|k ¡s®t‚|j|ks¾t‚ddddg}tj||d|d}|ddddgdd…dd…f||dd…dd…fk ¡st‚|j|ks*t‚tj||d|d}|dd…ddddgdd…f|dd…|dd…fk ¡szt‚|j|ksŠt‚tj||d|d}|dd…dd…ddddgf|dd…dd…|fk ¡sÚt‚|j|ksêt‚dS)Nrr)r%rrrrr&rrrr r r Útest_3d_fill_nonnaWs2
 @"B$B$ >>>zTestTake.test_3d_fill_nonnacCsPtj d¡ tj¡}ddddg}t ||¡}| |¡}tj|d<t     
||¡dS)Né
rrrr© rrZrandnrÚfloat32rrÚtakeÚnanÚtmÚassert_almost_equal©rÚarrr!r"Úexpectedr r r Útest_1d_other_dtypesys   
 
zTestTake.test_1d_other_dtypescCs–tj dd¡ tj¡}ddddg}tj||dd}|j|dd}tj|d<t     
||¡tj||dd}|j|dd}tj|dd…df<t     
||¡dS)    Nr*r%rrrrr©r'r+r1r r r Útest_2d_other_dtypes‚s 
 zTestTake.test_2d_other_dtypescCsltjdddgtd}t |ddddg¡}| ddddg¡}t ||¡t |dddg¡}|jtj    ksht
‚dS)Nrr©rrr© rÚarrayÚboolrrr-r/Úassert_numpy_array_equalrÚobject_r©rr2r"r3r r r Ú test_1d_bool“s  zTestTake.test_1d_boolcCs¼tjdddgdddgdddggtd}t |ddddg¡}|jddddgdd}t ||¡tj|ddddgdd}|jddddgdd}t ||¡t |dddg¡}|jtj    ks¸t
‚dS)Nrrr7rr5rr8r=r r r Ú test_2d_bools&  zTestTake.test_2d_boolcCs¨tj dd¡ tj¡}dddddg}tj||dd}|j|dd}tj|ddgdd…f<t     
||¡tj||dd}|j|dd}tj|dd…ddgf<t     
||¡dS)Nrrrrrrr5r+r1r r r Útest_2d_float32«s zTestTake.test_2d_float32cCs^tj ddd¡d}|jdd}ddd    d
d    g}tj||dd }|j|dd }t| tj¡dd gdd…f<t     
||¡tj||dt d d
d
ƒd}|j|dd }t d d
d
ƒ|dd gdd…f<t     
||¡tj||d
d }|j|d
d }t| tj¡dd…dd gf<t     
||¡tj||d
t d d
d
ƒd}|j|d
d }t d d
d
ƒ|dd…dd gf<t     
||¡dS)NiЍiàY­r$lhí]zdatetime64[ns]r7rrrrr5ri×r&) rrrÚviewrrr-rÚint64r/r0rr1r r r Útest_2d_datetime64¼s&    zTestTake.test_2d_datetime64cCsˆt d¡ dd¡}t |ddg¡}t dddgdd    d
gg¡}t ||¡tj|ddgd dd }t dddgdddgg¡}t ||¡dS) Né rrrrrré    r*é T©Ú
allow_fillr)rÚarangeÚreshaperr-r9r/r;r=r r r Útest_take_axis_0Øs zTestTake.test_take_axis_0c    CsÐt d¡ dd¡}tj|ddgdd}t ddgdd    gd
d gd d gg¡}t ||¡tj|ddgdddd}t ddgddgd
dgd dgg¡}t ||¡tj    t
ddtj|ddgddddW5QRXdS)NrDrrrrrr5rr%éérErFT)r'rHrúindices are out-of-bounds©Úmatch) rrIrJrr-r9r/r;ÚpytestÚraisesÚ
IndexErrorr=r r r Útest_take_axis_1ãs" " zTestTake.test_take_axis_1c    Cs˜t dddg¡}t ddg¡}tjtddtj||ddgdW5QRXtjdddgtd    }tj||ddgd}tjddggtd    }t     ||¡dS)
Nrrrrzfill_value must be a scalarrOTrGr7)
rr9rQrRÚ
ValueErrorrr-Úobjectr/r;r1r r r Ú!test_take_non_hashable_fill_valueòsz*TestTake.test_take_non_hashable_fill_valueN)Ú__name__Ú
__module__Ú __qualname__ÚreÚcompileZ
fill_errorr#r(r)r4r6r>r?r@rCrKrTrWr r r r r+s
"    
 rc@sFeZdZdd„Zdd„Zej dddg¡dd    „ƒZd
d „Z    d d „Z
dS)ÚTestExtensionTakec    Csvt ddg¡}d}tjt|dtj|ddgddW5QRXd}tjt|dtj|ddgd    dW5QRXdS)
NrrrNrOrT©rHz2index 2 is out of bounds for( axis 0 with)? size 2F)rr9rQrRrSrr-)rr2Úmsgr r r Útest_bounds_check_largesz)TestExtensionTake.test_bounds_check_largec    Cs€tjdddgtjd}dddg}d}tjt|d    tj||d
d W5QRXt ||¡}tjdddgtjd}t     ||¡dS) Nrrrr7rréþÿÿÿz7'indices' contains values less than allowed \(-2 < -1\)rOTr^)
rr9rBrQrRrUrr-r/r;)rr2r!r_r"r3r r r Útest_bounds_check_small s
 z)TestExtensionTake.test_bounds_check_smallrHTFc    Csjtjgtjd}tj|g|d}t ||¡d ddg¡}tj    t
|dtj|dg|dW5QRXdS)Nr7r^ú|z.cannot do a non-empty take from an empty axes.rNrOr) rr9rBrr-r/r;ÚjoinrQrRrS)rrHr2r"r_r r r Útest_take_emptys þÿz!TestExtensionTake.test_take_emptycCs:tjt g¡ddgddd}t ddg¡}t ||¡dS)NrTgrG©rr-rr9r/r;)rr"r3r r r Útest_take_na_empty)sz$TestExtensionTake.test_take_na_emptycCs8dddg}t |ddg¡}t ddg¡}t ||¡dS)Nrrrrrfr=r r r Útest_take_coerces_list.s
z(TestExtensionTake.test_take_coerces_listN) rXrYrZr`rbrQÚmarkZ parametrizerergrhr r r r r]ÿs   
r])rr[ÚnumpyrrQZ pandas._libsrZpandas._testingZ_testingr/Zpandas.core.algorithmsÚcoreZ
algorithmsrZfixtureZint8Úint16Úint32Úfloat64Z
complex128r<Zbool_r rr]r r r r Ú<module>sF                       êÿ
U