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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
U
¬ý°dá7ã/@sv
ddlZddlZddlZddlZddlZddlmZddl    Z
ddl m Z ddlmZddlmZmZmZmZmZmZmZddlmZmZddlmZmZmZej  ddd    gde !dd    g¡fdd    ge"eej#dd    ge"d
ƒfdd    ge $d ¡eej#d d ge $d ¡d
ƒfej#dd    gdd
de !dd    g¡fej#d d gdd
de !d d g¡fdd    gd eej#dd    gd d
ƒfdd    gdeej#dd    gej%d
ƒfej#dd    gej&d
deej#dd    gej&d
ƒfeej#dd    gej'd
ƒdeej#dd    gej'd
ƒfe
 (dd¡e
 (dd¡gdeddgddfe
 (dd¡ge
 )d¡edgddfdd    ge $d¡e !ej#dd    gdd
¡fej#dd    gdd
de !ej#dd    gdd
¡fe
 *ddg¡e $d¡e !ddg¡fe
 *ddg¡de !ddg¡fddge $d¡e !ddg¡fddge
j+ddej!ddge
j+ddd
fddge $d¡e !ddg¡fe
 ,ddg¡e $d¡e !ddg¡fe
 ,ddg¡de !ddg¡fej-ej.dej%d
 /d¡e $d¡d
dej-ej.dej%d
 /d¡e $d¡d
fej-ej.dej%d
 /d¡e $d¡d
e $d¡ej-ej.dej%d
 /d¡e $d¡d
fddgde
 0ddg¡fddge
j1dd d!e
j0ddgd d!fe
 2dd    ¡e
 2d"d#¡gd$e 3d%d&g¡fddgd'eddgdd
fddgd(e
j#ddgd(d
fe
 4dd    g¡deej#dd    gej%d
ƒfddgd)e
 5¡ 6¡ !ddg¡fddge
 5¡e
 5¡ 6¡ !ddg¡fd dgd*e !d dg¡fd dge
 7¡e !d dg¡fe
 8dd    g¡deej#dd    gej%d
ƒfe
 4e
j0ddgddd+gd,¡de
j0ddgddd+gd,fe 9d¡e 9d¡gd-eddgƒfeddgddde
 0e
 (dd¡e
 (dd¡g¡fg$¡d.d/„ƒZ:d0d1„Z;e <d¡Z=ej  d2e
 (dd¡e
 (dd¡geddgddfe
 2dd¡e
 2dd    ¡ge >ddd    g¡fe
 ?d¡e
 ?d¡ge !ddg¡fe d3dd¡e d4dd¡ge !ddg¡fej#dd    gd5d
eej#dd    gd5d
ƒfej#dd    gd6d
ej-ej#dd    gd6d
e $d6¡d
fe
j?ddde
j?dddgej!ddge
j+ddd
fejd3dde=d7ejd4dde=d7gej!ddge
j+e=dd
fe
 @d¡e
 @d¡ge !ddg¡fej#dd    gd8d
eej#dd    gd8d
ƒfej#dd    gd9d
eej#dd    gd9d
ƒfdd    ge !dd    g¡fddge !ddg¡fde
jAge !de
jAg¡fdejBge !dejBg¡fd:d;ge !d:d;g¡fd:dge !d:e
jAg¡fd:ejBge !d:e
jAg¡fd:e
jAge !d:e
jAg¡fd d ge !d d g¡fd dge !d e
jAg¡fd ejBge !d e
jAg¡fd e
jAge !d e
jAg¡fdd ge !d d g¡fdejBd ge !d dd g¡fddge
 5¡ 6¡ !ddg¡fddge
 5¡ 6¡ !ddg¡fd d<ge !d d<g¡fd dge !d dg¡fg¡d=d>„ƒZCej  d?e
 (dd¡e
 (dd@¡ge
j2dddAdBe
j2dd    dCdBge
j?ddde
j?ddDdge
j?ddde
 ?d¡ge #e
 ?d¡e
j?dddg¡g¡dEdF„ƒZDej  d?e #d¡g¡dGdH„ƒZEdIdJ„ZFdKdL„ZGdMdN„ZHeGdOdP„dPeƒƒZIGdQdR„dReƒZJdSdT„ZKejLdUdV„ƒZMdWdX„ZNdYdZ„ZOdS)[éN)Ú    _registry)Úregister_extension_dtype)Ú BooleanArrayÚ DatetimeArrayÚ FloatingArrayÚ IntegerArrayÚ IntervalArrayÚ SparseArrayÚTimedeltaArray)Ú PandasArrayÚ period_array)Ú DecimalArrayÚ DecimalDtypeÚ
to_decimalzdata, dtype, expectedéé©ÚdtypeÚfloat32gð?g@Úint64Úfloat64Ú2000ÚDZ2001z    Period[D])Úfreqzdatetime64[ns]ZCET)ÚtzZ1HZ2Hztimedelta64[ns]ézm8[s]ÚaÚbÚcategoryT)ZorderedééÚinterval)rr)rr z Sparse[int64]ZInt16ÚstringÚbooleanÚc)Ú
categoriesÚdecimalcCstj||d}t ||¡dS©Nr©ÚpdÚarrayÚtmÚ assert_equal)ÚdatarÚexpectedÚresult©r0úUd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/arrays/test_array.pyÚ
test_array!s&r2cCsvt ddg¡}tj||jd}t ||¡r.t‚tj||jdd}t ||¡rPt‚tj||jdd}t ||¡srt‚dS)NrrrT©rÚcopyF)Únpr*r)rr+Z shares_memoryÚAssertionError)rrr0r0r1Útest_array_copyÊsr7zdata, expectediÐiÑzM8[ns]zM8[us])Útzinfozm8[ns]zm8[us]gš™™™™™¹?gš™™™™™É?FcCst |¡}t ||¡dS)Nr()r-r.r/r0r0r1Útest_array_inferenceÜs[
r9r-ÚAÚleft)ÚclosedÚrightÚUTCcCs,t |¡}ttj|tdƒ}t ||¡dSr')r)r*r r5Úobjectr+Zassert_extension_array_equal)r-r/r.r0r0r1Útest_array_inference_fails;s
r@c    Cs,tjtddtj|ddW5QRXdS)Nz!PandasArray must be 1-dimensional©Úmatchrr©ÚpytestÚraisesÚ
ValueErrorr)r*)r-r0r0r1Útest_nd_raisesOsrGc    Cs(tjtddt d¡W5QRXdS)NzCannot pass scalar '1'rArrCr0r0r0r1Útest_scalar_raisesUsrHc    CsJtjddgddggddgd}d}tjt|d    t |¡W5QRXdS)
Nrrrr r:ÚB)Úcolumnsz'Cannot pass DataFrame to 'pandas.array'rA)r)Z    DataFramerDrEÚ    TypeErrorr*)ZdfÚmsgr0r0r1Útest_dataframe_raisesZsrMc    Cs2tjtddtjdddgddW5QRXdS)Nz6cannot safely cast non-equivalent int(32|64) to uint16rAéÿÿÿÿrrZUInt16r)rDrErKr)r*r0r0r0r1Útest_bounds_checkbs
ÿrOc@seZdZdZedd„ƒZdS)Ú DecimalDtype2Údecimal2cCstS)zq
        Return the array type associated with this dtype.
 
        Returns
        -------
        type
        )Ú DecimalArray2)Úclsr0r0r1Úconstruct_array_typess    z"DecimalDtype2.construct_array_typeN)Ú__name__Ú
__module__Ú __qualname__ÚnameÚ classmethodrTr0r0r0r1rPosrPcs"eZdZed‡fdd„    ƒZ‡ZS)rRNFcs,t|tjtjfƒrtdƒ‚tƒj|||dS)Nú3scalars should not be of type pd.Series or pd.Indexr3)Ú
isinstancer)ÚSeriesÚIndexrKÚsuperÚ_from_sequence)rSZscalarsrr4©Ú    __class__r0r1r_€szDecimalArray2._from_sequence)NF)rUrVrWrYr_Ú __classcell__r0r0r`r1rRsrRc    Csj|}|t d¡t d¡gƒ}tjtddt |¡W5QRXtj|dd}t |j    ¡}t
  ||¡dS)NÚ1Ú2rZrArQr) r&ÚDecimalrDrErKrRr_r)r*Úvaluesr+r,)Zindex_or_seriesZboxr-r/r.r0r0r1Útest_array_unboxesˆsÿ rgccs.tj t¡}tj |¡dVtj t¡dS)z8Fixture yielding 'registry' with no DecimalDtype entriesN)ÚregistryZdtypesÚindexrÚpopÚappend)Úidxr0r0r1Úregistry_without_decimal—s  rmcCsNt d¡dkst‚t d¡t d¡g}tj|td}t     |¡}t
  ||¡dS)Nr&rcrdr) rhÚfindr6r&rer)r*rr r_r+r,)rmr-r/r.r0r0r1Útest_array_not_registered s
 
rocCs@tjtjdgdd}|jdtd}t ddg¡}t ||¡dS)Nrr"rT)Zna_valuer)r)r*ÚNAZto_numpyÚboolr5r+Zassert_numpy_array_equal)Zarrr/r.r0r0r1Útest_array_to_numpy_naªsrr)PÚdatetimer&Únumpyr5rDZpytzZpandas.core.dtypes.baserrhZpandasr)Zpandas._testingZ_testingr+Zpandas.api.extensionsrZ pandas.arraysrrrrrr    r
Zpandas.core.arraysr r Zpandas.tests.extension.decimalr rrÚmarkZ parametrizer_r?r*rrÚfloat16Úint32ZPeriodZ PeriodDtypeZ DatetimeIndexZDatetimeTZDtypeZTimedeltaIndexZ _simple_newZarangeÚviewZ CategoricalZCategoricalDtypeZIntervalÚ from_tuplesr\Z StringDtyperTZ BooleanDtyper]rer2r7ÚtimezoneZcetZ from_breaksÚ    TimestampZ    TimedeltarpÚnanr9r@rGrHrMrOrPrRrgZfixturermrorrr0r0r0r1Ú<module>sÐ   $    ý  ý ýýý  ýýý  ý  ý ý
 
ÿý     ý  ý  ýÿÿú ÿÿú  ý ý&ýý&ý ý€åþ%
 
þ& þ þþÿþ
ÿþþ
ÿû  þþþþþ«þZ
÷þ