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
U
¬ý°d}"ã @sdZddlZddlZddlmZddlZddlm    Z
ddl m Z ej ejddgedejddgedejddgedejdd    gedejd
d gedejddgd dejddgd dgddd„ƒZej dddddddddddg
¡dd„ƒZej ddddd d!dddddg
¡d"d#„ƒZd$d%„Zd&d'„Zd(d)„Zd*d+„Zd,d-„Zd.d/„Zd0d1„Zd2d3„Z d4d5„Z!d6d7„Z"d8d9„Z#d:d;„Z$d<d=„Z%d>d?„Z&d@dA„Z'dBdC„Z(ej dDej)ej*ej+g¡dEdF„ƒZ,dGdH„Z-dIdJ„Z.ej dKdeg¡dLdM„ƒZ/dNdO„Z0dPdQ„Z1ej dKej2ej3g¡dRdS„ƒZ4dTdU„Z5dS)VzN
Additional tests for PandasArray that aren't covered by
the interface tests.
éN)Ú PandasDtype)Ú PandasArrayÚaÚb©Údtypeéyð?@TFúdatetime64[ns]ztimedelta64[ns])ÚparamscCs|jS)zk
    Parametrized fixture for NumPy arrays with different dtypes.
 
    This excludes string and bytes.
    )Úparam)Úrequest©r ú\d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/arrays/numpy_/test_numpy.pyÚany_numpy_arraysrzdtype, expected)ÚboolT)ÚintT)ÚuintT)ÚfloatT)ÚcomplexT)ÚstrF)ÚbytesF)r    F)ÚobjectF)ZvoidFcCst|ƒ}|j|kst‚dS©N)rZ _is_numericÚAssertionError©rÚexpectedr r rÚtest_is_numeric'sr)rF)rF)rF)rFcCst|ƒ}|j|kst‚dSr)rZ _is_booleanrrr r rÚtest_is_boolean;srcCs"tt d¡ƒ}t|ƒdkst‚dS)NÚint64zPandasDtype('int64'))rÚnprÚreprrrr r rÚ    test_reprOsr!cCs(t d¡}tt d¡ƒ}||ks$t‚dS)Nr)rZconstruct_from_stringrrr)Úresultrr r rÚtest_constructor_from_stringTs
r#cCs t|ƒ}t|ƒ}||kst‚dSr)rr)Zany_numpy_dtyperr"r r rÚtest_dtype_univalentZsr$c    Cs,tjtddtdddgƒW5QRXdS)Nz NumPy array©Úmatchréé)ÚpytestÚraisesÚ
ValueErrorrr r r rÚtest_constructor_no_coercionesr,cCs4t dddg¡}tjt|ƒdd}|j|k    s0t‚dS)Nrr'r(T©Úcopy)rÚarrayÚpdÚSeriesrÚvaluesr)ÚndarrayÚserr r rÚ!test_series_constructor_with_copyjsr5cCsFt dddg¡}tjt|ƒdd}tjdddgdd}t ||¡dS)    Nrr'r(Úfloat64rçð?g@g@)rr/r0r1rÚtmÚassert_series_equal)r3r"rr r rÚ#test_series_constructor_with_astypeqsr:cCsJtjdddgdd}tj|dd}ttjdddgddƒ}t ||¡dS)Nrr'r(rrÚuint64)rr/rZ_from_sequencer8Úassert_extension_array_equal©Úarrr"rr r rÚtest_from_sequence_dtypexsr?cCs.t ddg¡}t|dd}t ||¡r*t‚dS)NrrTr-)rr/rr8Z shares_memoryr)r>r"r r rÚtest_constructor_copys r@cCs"|}t|ƒ}|jj|jkst‚dSr)rrZ numpy_dtyper©rZnparrr>r r rÚtest_constructor_with_data†srBcCsttt dddg¡ƒ}| ¡}||jks*t‚|jdd}||jk    sDt‚|jdd}tjdddgdd}t ||¡dS)Nrr'r(Tr-Zf8r)rrr/Úto_numpyÚ_ndarrayrr8Úassert_numpy_array_equalr=r r rÚ test_to_numpys  rFcCs:t dddg¡}d|jd<t dddg¡}t ||¡dS)Nrr'r(é
r)r0r1r/r8r9)r4rr r rÚtest_setitem_series¡s
rHcCs<|}t|dd}|d|d<|d|d<t | ¡|¡dS)NTr-rr)rr8rErCrAr r rÚ test_setitem¨s
   rIc    CsHtjdddgdd}t|ƒ}d}tjt|d| |¡W5QRXdS)Nrr'r(rrz)cannot perform not_a_method with type intr%)rr/rr)r*Ú    TypeErrorZ_reduce©r>Úmsgr r rÚtest_bad_reduce_raises¶s
rMc    CsBtt dddg¡ƒ}d}tjt|d|jddW5QRXdS)Nrr'r(z/the 'keepdims' parameter is not supported .*allr%T)Zkeepdims)rrr/r)r*r+ÚallrKr r rÚ$test_validate_reduction_keyword_args¾srOcCs~dddg}t |¡}|j}| ¡|dks.t‚| ¡|dksBt‚tj |¡}||dks^t‚tj |¡}||dkszt‚dS)N)©ÚjÚk©ÚlÚm)rS©ÚoÚp)rVrPr')r0r1r/ÚmaxrrÚmaximumÚreduce)Úvalsr4r>r"r r rÚtest_np_max_nested_tuplesÅsý
  r]cCsZt d¡ dd¡}t|ƒ}tjj|dd}t ||d¡|jdd}t ||d¡dS)Né ér(r)Zaxiséÿÿÿÿ)    rZarangeZreshaperrZr[r8r<rY)Úrawr>ÚresZaltr r rÚtest_np_reduce_2dÚs  rcÚufunccCsftt dddg¡ƒ}||ƒ}t||jƒƒ}t ||¡tt dddg¡ƒ}|||dt ||¡dS)Nçð¿çr7g"À)Úout)rrr/rDr8r<)rdr>r"rrgr r rÚtest_ufunc_unaryés  rhcCsttt dddg¡ƒ}t |t |d¡¡\}}t |jt |jd¡¡\}}t|ƒ}t|ƒ}t ||¡t ||¡dS)Nrerfr7r')rrr/ÚdivmodÚaddrDr8r<)r>Zr1Zr2Úe1Úe2r r rÚ
test_ufuncös rmcCs@tt dddg¡ƒ}||}tt dddg¡ƒ}t ||¡dS)Nrr'r(r_é©rrr/r8r<)Úxr"rr r rÚtest_basic_binopsrqrcCsHttjdddg|dƒ}d|d<ttjdddg|dƒ}t ||¡dS)NrrÚcrÚtrro)rr>rr r rÚtest_setitem_object_typecode
srtc    Csftt dddg¡ƒ}tjtddd|d<W5QRXd|d<t|dttjfƒsbt    t
|dƒƒ‚dS)    Nrr'r(rr%rrç@) rrr/r)r*r+Ú
isinstancerÚintegerrÚtype)r>r r rÚtest_setitem_no_coercions
rycCsŽtt dddg¡ƒ}| ¡}|dd…}t |¡}d|d<|ddksJt‚|ddksZt‚|ddksjt‚d|d<d|d<|ddksŠt‚dS)    Nrr'r(é    rrur`é)rrr/ÚviewZasarrayr)r>Zview1Zview2Zview3r r rÚtest_setitem_preserves_viewss 
r}cCsTttjg|dƒ}t ddg¡}|j|dd}tt tjtjg¡ƒ}t ||¡dS)Nrrfgà?Zlinear)Ú interpolation)    rrr/r0ZIndexZ    _quantileÚnanr8r<)rr>Úidxr"rr r rÚtest_quantile_empty/s
rcCsXtjdddgtjd}t|ƒ}| ¡\}}t |¡\}}t ||¡t |t|ƒ¡dS)Nrr'r(r)    rr/r;rZ    factorizer0r8rEr<)r>ÚobjZ    res_codesZ
res_uniqueZ    exp_codesZ
exp_uniquer r rÚtest_factorize_unsigned:s   rƒ)6Ú__doc__Únumpyrr)Zpandas.core.dtypes.dtypesrZpandasr0Zpandas._testingZ_testingr8Z pandas.arraysrZfixturer/rrrrrrÚmarkZ parametrizerrr!r#r$r,r5r:r?r@rBrFrHrIrMrOr]rcÚabsÚnegativeZpositiverhrmrqrtryr}rr;rrƒr r r rÚ<module>s”   ùÿ
öþ
öþ