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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
U
­ý°dQ~ã@s.ddlZddlZddlZddlmZddlmmZ    ddl
Z ddl
m Z m Z mZmZmZmZmZmZmZmZmZmZmZmZddlmZdd„ZGdd„dƒZGdd    „d    ƒZGd
d „d e j j!j"ƒZ#Gd d „d e j$ƒZ%dd„Z&ej'j(eddej' )dddg¡dd„ƒƒZ*ej' )ddddej+eg¡dd„ƒZ,dS)éN)Úpa_version_under7p0)Ú CategoricalÚCategoricalDtypeÚ    DataFrameÚDatetimeTZDtypeÚIndexÚIntervalÚ IntervalDtypeÚNaTÚSeriesÚ    TimedeltaÚ    TimestampÚconcatÚ
date_rangeÚoption_contextcs"t‡fdd„| ¡Dƒƒst‚dS)z2
    Check if all dtypes of df are equal to v
    c3s|]\}}|jjˆkVqdS©N©ÚdtypeÚname)Ú.0Ú_Ús©Úv©ú]d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/frame/methods/test_astype.pyÚ    <genexpr>!sz_check_cast.<locals>.<genexpr>N)ÚallÚitemsÚAssertionError)ÚdfrrrrÚ _check_castsr!c @sfeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Ze    j
  d e j e jg¡e    j
  de je jg¡dd„ƒƒZdd„Zdd„Ze    j
  deeg¡dd„ƒZdd„Zdd„Ze    j
j d deƒeddeddeed ƒd!eed"ƒdd#eed$ƒdd#ged%d&d'„ƒZe    j
  d(eeeg¡d)d*„ƒZe    j
  d d+d,d-g¡d.d/„ƒZ e    j
  d d+d,d-g¡d0d1„ƒZ!e    j
  d dd+g¡d2d3„ƒZ"e    j
  d d4d5d6œdd4g¡d7d8„ƒZ#e    j
  d9d:d;d<d=d>d?g¡d@dA„ƒZ$e    j
  d9d:d;d<d=d>d?g¡dBdC„ƒZ%e    j
  d dDdEg¡e    j
  d9dFdGdHdId>d?d=g¡dJdK„ƒƒZ&e    j
  dLe je j'g¡e    j
  d dDdEg¡e    j
  d9dFdGdHdId>d?d=g¡dMdN„ƒƒƒZ(e    j
  d9dFdGdHdId>d?d=g¡dOdP„ƒZ)e    j
  d9dFg¡dQdR„ƒZ*e    j
  d9dGdHdId>d?d=g¡dSdT„ƒZ+e    j
  d9dFdGdHdId>d?d=g¡dUdV„ƒZ,dWdX„Z-dYdZ„Z.d[d\„Z/d]d^„Z0d_d`„Z1dadb„Z2e    j
  dcdddedfgdgfe    j3dddedfgdhe4 5di¡djdddedfgdfdke6dldmdngdofdke7dpdqƒgdofg¡e    j
  drdsdtg¡dudv„ƒƒZ8dwdx„Z9e    j
  dydmdzg¡d{d|„ƒZ:d}d~„Z;dd€„Z<dd‚„Z=e    j
  dƒe j>dod„…dod„…fe j>dodq…dod„…fe j>dod„…dodq…fe j>dodod„…dodod„…fe j>dododq…dodod„…fe j>dodod„…dododq…fg¡d…d†„ƒZ?d‡dˆ„Z@doS)‰Ú
TestAstypecCs | t¡}t|j t¡|j|jd}t ||¡| tj    ¡}t|j tj    ¡|j|jd}t ||¡d|d<| t¡}t|j t¡|j|jd}t ||¡dS)N)ÚindexÚcolumnsÚ5Úfoo)
ÚastypeÚintrÚvaluesr#r$ÚtmÚassert_frame_equalÚnpÚint32)ÚselfÚ float_frameÚcastedÚexpectedrrrÚtest_astype_float%s,
 
ý   ý 
 
ýzTestAstype.test_astype_floatcCsD|jddgd d¡}t|dƒ|jddgd d¡}t|dƒdS)NÚAÚB©r$Úfloat32Úfloat16)Úreindexr'r!)r.Úmixed_float_framer0rrrÚtest_astype_mixed_float?s
z"TestAstype.test_astype_mixed_floatcCs¶| ¡ ¡}tjddd|d<tjddd|d<| d¡}t|dƒ| d¡}t|dƒ|jdgd     d¡}t|dƒ| d
¡}t|d
ƒ| d ¡}t|d ƒ| d ¡}t|d ƒdS)Ng€È@r7©rZ little_floatgŽÎƒ!ÜBÚfloat64Z    big_floatÚint64r5r6r-ÚOÚobject)Z_get_numeric_dataÚcopyr,Úarrayr'r!r8)r.Zmixed_type_frameÚmnr0rrrÚtest_astype_mixed_typeGs 
 
 
 
 
 
 
 
 
 
z!TestAstype.test_astype_mixed_typecCs€| ¡}| t¡}d|d<|jtdd}d|d<t ||¡| ¡}| tj¡}d|d<|jtjdd}d|d<t ||¡dS)Nr&ÚstringÚignore©Úerrors)r@r'r(r*r+r,r-)r.r/r r1r0rrrÚtest_astype_with_exclude_string`s
  z*TestAstype.test_astype_with_exclude_stringcCsBt |¡ tj¡}|jtjdd}| tj¡}|jtjdd}dS)NF©r@)r,Úroundr'r-r6r<r=)r.r/Útfr0rrrÚtest_astype_with_view_floatqs z&TestAstype.test_astype_with_view_floatcCs.|jdddgd}| tj¡}| tj¡}dS)Nr3r4ÚCr5)r8r'r,r=r6)r.r9rKr0rrrÚ!test_astype_with_view_mixed_floatzs z,TestAstype.test_astype_with_view_mixed_floatrÚvalc    Cs6d}t|gƒ}tjt|d| |¡W5QRXdS)Nz9Cannot convert non-finite values \(NA or inf\) to integer©Úmatch)rÚpytestÚraisesÚ
ValueErrorr')r.rOrÚmsgr rrrÚtest_astype_cast_nan_inf_int€s
z'TestAstype.test_astype_cast_nan_inf_intc        Csèttdddƒ}ttddddƒ}tdd„tdƒDƒƒ}ttdƒƒ}td    d
d d d gƒ}t|||||dœƒ}| t¡}tttttdd„|jƒƒƒttttt    |jƒƒƒttdd„|jƒƒttt|jƒƒttt|jƒƒdœƒ}t
  ||¡dS)Nú
2010-01-04é©Úperiodsz3/6/2012 00:00ú
US/Eastern©rZÚtzcSsg|]}t|dd‘qS)Úd©Úunit)r )rÚxrrrÚ
<listcomp>sz.TestAstype.test_astype_str.<locals>.<listcomp>ç皙™™™™É?皙™™™™Ù?ç333333ã?皙™™™™é?)ÚaÚbÚcr^ÚecSs
t|ƒjSr)r Z
_date_repr©rarrrÚ<lambda>›óz,TestAstype.test_astype_str.<locals>.<lambda>cSs t|ƒ ¡Sr)r Z
_repr_baserlrrrrmrn) r rÚrangerr'ÚstrÚlistÚmapÚ_valuesr r*r+)    r.rhrirjr^rkr Úresultr1rrrÚtest_astype_strŒs  
ûÿ
zTestAstype.test_astype_strcCsVttjgƒ t¡}tdgƒ}t ||¡tdgƒ t¡}d}t|gƒ}t ||¡dS)NÚnangfotÓ­ùñ?z1.1234567890123457)rr,ÚNaNr'rpr*r+)r.rtr1rOrrrÚtest_astype_str_float¥s
 
z TestAstype.test_astype_str_floatÚ dtype_classc
spttdddƒ}ttdƒƒ}tdddddgƒ}td    d
d d d gƒ}t||||dœƒ‰ˆjdd}|dddœƒ}ˆ |¡}t|tddd
dd gƒ|tdddddgdddœƒ}    t ||    ¡t ˆ|¡|tj    dtj
dœƒ}
ˆ |
¡}t|tdddddgddtdddddgddtdddddgdddœƒ}    t ||    ¡t ˆ|¡|t t t t dœƒ} t ˆ | ¡ˆ t ¡¡t ˆ|¡|t t d œƒ} |d!t iƒ} d"}t j t| d#¡d$ˆ | ¡W5QRXt j t| d!¡d$ˆ | ¡W5QRXt ˆ|¡|‡fd%d&„ˆjDƒƒ}ˆ |¡}t ˆ|¡t ˆ|¡|tkr>|iƒn
|itd}ˆ |¡}t ˆ|¡t ˆ|¡dS)'NrWrXrYrcrdrerfrgz1.0Ú2z3.14Ú4z5.4)rhrirjr^T)Údeeprpr6)rir^Ú0Ú1Ú3çð?ç@g…ëQ¸    @ç@gš™™™™™@r;)rirjr^ç@r<)riérkzcOnly a column name can be used for the key in a dtype mappings argument. '{}' not found in columns.r„rPcsi|]}|ˆ|j“qSrr;)rÚcol©r rrÚ
<dictcomp>ësz4TestAstype.test_astype_dict_like.<locals>.<dictcomp>)r rrorr@r'r*r+r,r6r<rprRrSÚKeyErrorÚformatr$Údictr?)r.ryrhrirjr^ÚoriginalZdt1rtr1Zdt2Zdt3Zdt4Zdt5Z    msg_frameZdt6ÚequivZdt7rr†rÚtest_astype_dict_like±s`  
üÿ  
üÿ    ÿ 
 
 z TestAstype.test_astype_dict_likec
Csôtdddddgdd}tdd    d
d d gd d}tdddddgdd}t|||gdd}| t¡}tdddddgddd}tdddddgtd d}tdddddgddd}t|||gdd}    t ||    ¡| ddi¡}t|||gdd}    t ||    ¡dS)Nér„éérXrh©rgš™™™™™¹?rdrerfrgrir©Zaxisr~rzrr{r%rprz0.1z0.2z0.4z0.6z0.8r})r rr'rpr*r+)
r.Úa1riÚa2r rtZa1_strZb_strZa2_strr1rrrÚtest_astype_duplicate_coløs
 z$TestAstype.test_astype_duplicate_colcCs°tj dd¡}t|ddddgd}|j}t|jd<d|jd    <| |¡}t|dd…df t¡|dd…d
ftj    |dd…d    fdd |dd…dfd œƒ}|j
|_
t   ||¡dS) Nrrr3r4rMr5rZFloat64r„rŽr;)rrŽr„r) r,ÚrandomZrandnrÚdtypesrpÚilocr'ÚpdrAr$r*r+)r.Úvalsr r—rtr1rrrÚ$test_astype_duplicate_col_series_arg    s
 
 
üÿz/TestAstype.test_astype_duplicate_col_series_argÚcategoryT)ÚorderedFZabcdef)Ú
categoriesZedba)ržrZedcb)ÚidscsTtdƒtdƒtdƒdœ}t|ƒ}| ˆ¡}t‡fdd„| ¡Dƒƒ}t ||¡dS)NZabbcZbccdZcdde)r3r4rMcsi|]\}}|t|ˆd“qS)r;)r)rÚkrr;rrr‡/sz6TestAstype.test_astype_categorical.<locals>.<dictcomp>)rqrr'rr*r+)r.rr^r rtr1rr;rÚtest_astype_categoricals
 
z"TestAstype.test_astype_categoricalÚclsc    Csttdddddgiƒ}d|j›}tjt|d| d|i¡W5QRXtjt|d|d |¡W5QRXdS)Nr3rhrirjzExpected an instance of rP)rÚ__name__rRrSÚ    TypeErrorr')r.r¢r ZxprrrrÚ)test_astype_categoricaldtype_class_raises2s  z4TestAstype.test_astype_categoricaldtype_class_raisesÚInt64ZInt32ZInt16cCs$tddgddgddggddgd    }ttjd
d d g|d tjdddg|d dœƒ}t | |¡|¡t | d¡ |¡|¡t | |¡ d¡|¡tddgddgddggddgd    }|d |¡|d<tdddgtjdddg|d dœƒ}t ||¡t | |¡|¡t | d¡ |¡|¡dS)Nr€rrƒr‚g@g@rhrir5rŽrrXr;r„ré©rhrir=r<©rr™rAr*r+r'©r.rr Z    expected1Z    expected2rrrÚtest_astype_extension_dtypes<s""þÿ"ÿ z'TestAstype.test_astype_extension_dtypescCsÒtddddgiƒ}tdtjdddg|diƒ}t | |¡|¡t | d    ¡ |¡|¡tddddgiƒ}|d |¡|d<tdtjdddg|diƒ}t ||¡t | |¡|¡t | d    ¡ |¡|¡dS)
Nrhr€rrƒrŽr„rr;r=r©rªrrrÚtest_astype_extension_dtypes_1dUs z*TestAstype.test_astype_extension_dtypes_1dcCsntdtjdgdd}ttjddgdd}t||gdd}| |¡}t| |¡| |¡gdd}t ||¡dS)    Nrrrhr‘rrXrŽr’)r r,rvrr'r*r+)r.rr“r”r rtr1rrrÚ*test_astype_extension_dtypes_duplicate_colfs 
z5TestAstype.test_astype_extension_dtypes_duplicate_colr<Úuint64)édéÈcCsLtdddgtjdd}tt d¡ dd¡|d    }| |¡}t |j    |¡dS)
Nr¯r°i,r&rérXrr5)
rr,r®rÚarangeÚreshaper'r*Úassert_index_equalr$)r.rr$r rrrÚtest_astype_column_metadataqs
z&TestAstype.test_astype_column_metadatar`ÚYÚMÚWÚDÚhÚmc    CsPdddgdddgg}t|td}tjtdd    | d
|›d ¡W5QRXdS) Nz
2015-01-01z
2015-01-02z
2015-01-03z
2017-01-01z
2017-01-02z
2017-02-03r;z Cannot castrPúM8[ú])rr?rRrSr¤r')r.r`ršr rrrÚ(test_astype_from_object_to_datetime_unit{s þ z3TestAstype.test_astype_from_object_to_datetime_unitc    CsTdddgdddgg}t|td}d}tjt|d    | d
|›d ¡W5QRXdS) Nú1 Dayz2 Daysz3 Daysz4 Daysz5 Daysz6 Daysr;zkCannot convert from timedelta64\[ns\] to timedelta64\[.*\]. Supported resolutions are 's', 'ms', 'us', 'ns'rPúm8[r½)rr?rRrSrTr')r.r`ršr rUrrrÚ)test_astype_from_object_to_timedelta_unit…sþ ÿz4TestAstype.test_astype_from_object_to_timedelta_unitÚM8Zm8ÚnsÚusÚmsrcCsŽ|›d|›d}tjdddgg|d}t|ƒ}| t¡}|jtk ¡sJt‚| d¡rp|j    dt
d|d    ksŠt‚n|j    dt d|d    ksŠt‚dS)
Nú[r½rŽr„rr;r©rrr_) r,rArr'r?r—rrÚ
startswithr˜r r )r.rr`Úarrr rtrrrÚ'test_astype_from_datetimelike_to_object•s
 
z2TestAstype.test_astype_from_datetimelike_to_objectÚ    arr_dtypecCsV|›d|›d}tjdddgg|d}t|ƒ}| |¡}t| |¡ƒ}t ||¡dS)NrÆr½rŽr„rr;©r,rArr'r*r+)r.rËrr`rÉr rtr1rrrÚ test_astype_to_datetimelike_unit¥s 
z+TestAstype.test_astype_to_datetimelike_unitc    CsÊd|›d}tjdddgg|d}t|ƒ}|jdd…df}t|ƒ}|j}|dkr^| |¡}n¨d    |›d
}    tjt    |    d | |¡W5QRXtjt    |    d | |¡W5QRXtjt    |     
d d ¡d | |¡W5QRXtjt    |    d | |¡W5QRXdSt| |¡ƒ}
|
j |k  ¡s(t ‚t ||
¡| |¡} |
jdd…df} | j|ks`t ‚t | | ¡| j} | |¡}t| ƒ}|j|ks”t ‚t ||¡| |¡}| j|ksºt ‚t || ¡dS)Nr¼r½rŽr„rr;r)rÃrÄrÅrz/Cannot cast DatetimeArray to dtype datetime64\[ú\]rPÚArrayr)r,rArr˜rrsr'rRrSr¤Úreplacer—rrr*r+rZassert_series_equalr´Zassert_extension_array_equal)r.r`rrÉr ÚserÚidxÚdtartrUÚexp_dfZres_serZexp_serZexp_dtaZ    res_indexZ    exp_indexZres_dtarrrÚtest_astype_to_datetime_unit³sB    
 
 
z'TestAstype.test_astype_to_datetime_unitcCsRd|›d}tjdddgg|d}t|ƒ}| |¡}t| |¡ƒ}t ||¡dS)NrÀr½rŽr„rr;rÌ)r.r`rrÉr rtr1rrrÚ test_astype_to_timedelta_unit_nsæs  
z+TestAstype.test_astype_to_timedelta_unit_nsc     Cs@d|›d}tjdddgg|d}t|ƒ}|jdd…df}t|ƒ}|j}|dkrp|j|k ¡sdt‚|     |¡}n²|jd    k ¡s‚t‚d
|›d }    t
j t |    d |     |¡W5QRXt
j t |    d |     |¡W5QRXt
j t |    d |     |¡W5QRXt
j t |    d |     |¡W5QRXdS|     |¡}|}
t  ||
¡dS) NrÀr½rŽr„rr;r)rÄrÅrzm8[s]z5Cannot convert from timedelta64\[s\] to timedelta64\[z3\]. Supported resolutions are 's', 'ms', 'us', 'ns'rP)r,rArr˜rrsr—rrr'rRrSrTr*r+) r.r`rrÉr rÑÚtdiZtdartrUr1rrrÚtest_astype_to_timedelta_unitòs0  
ÿ
z(TestAstype.test_astype_to_timedelta_unitc    CsÔd|›d}d|›d}ttjdddgg|dƒ}d d    |›d
d |›d g¡}tjt|d | |¡W5QRXd d|›d
d|›d g¡}ttjdddgg|dƒ}tjt|d | |¡W5QRXdS)Nr¼r½rÀrŽr„rr;ú|z0Cannot cast DatetimeArray to dtype timedelta64\[rÎzIcannot astype a datetimelike from \[datetime64\[ns\]\] to \[timedelta64\[z\]\]rPz0Cannot cast TimedeltaArray to dtype datetime64\[zFcannot astype a timedelta from \[timedelta64\[ns\]\] to \[datetime64\[)rr,rAÚjoinrRrSr¤r')r.r`rÚotherr rUrrrÚ%test_astype_to_incorrect_datetimelikes$  
 
üÿ    
 
üÿ    z0TestAstype.test_astype_to_incorrect_datetimelikec    CsVtdddgƒ}d}tjtt |¡d|jtjddW5QRX|jtj    dddS)    NrŽr„rz[Expected value of kwarg 'errors' to be one of ['raise', 'ignore']. Supplied value is 'True'rPTrFrE)
rrRrSrTÚreÚescaper'r,r<Zint8©r.r rUrrrÚtest_astype_arg_for_errors9s ÿz%TestAstype.test_astype_arg_for_errorsc    CsPtdddgdddgdœƒ}d}tjtt |¡d| dti¡W5QRXdS)    NrŽr„Útextrr¨zWinvalid literal for int() with base 10: 'text': Error while type casting for column 'a'rPrh)rrRrSrTrÝrÞr'r(rßrrrÚtest_astype_invalid_conversionGs
ÿz)TestAstype.test_astype_invalid_conversioncCsbtddddœddddœgƒ}tddddœd    dddœgƒ}d
d
d dœ}|j|d d }t ||¡dS)Nr~z16.5%Útest)rhrirjz2.2z15.3Z another_testr€gš™™™™™@r<r?rE)rrG)rr'r*r+)r.r r1Z    type_dictrtrrrÚ#test_astype_arg_for_errors_dictlistSs
 
þÿ
 
þÿ z.TestAstype.test_astype_arg_for_errors_dictlistc    Csªtjtdƒtdƒtdƒgtdddttdddgtdd    dttd
d    dggtd j}t||j|jtd }|     t¡}t
  ||¡d }t j t|d|     d¡W5QRXdS)Nz2013-01-01 00:00:00z2013-01-02 00:00:00z2013-01-03 00:00:00z2013-01-01 00:00:00-0500r[©r]z2013-01-03 00:00:00-0500z2013-01-01 00:00:00+0100ZCETz2013-01-03 00:00:00+0100r;)r#r$rzDCannot use .astype to convert from timezone-aware dtype to timezone-rPzdatetime64[ns])r,rAr r
r?ÚTrr#r$r'r*r+rRrSr¤)r.Útimezone_framer1rtrUrrrÚtest_astype_dt64tzgs6ý
 
ý
 
ýõîü
 zTestAstype.test_astype_dt64tzc    Cs‚| t¡}tdddgdddgdddgg|jd    }t ||¡td
d ƒ2t|ƒ}d |ks\t‚d |ksht‚d|kstt‚W5QRXdS)Nz
2013-01-01z2013-01-01 00:00:00-05:00z2013-01-01 00:00:00+01:00z
2013-01-02r
z
2013-01-03z2013-01-03 00:00:00-05:00z2013-01-03 00:00:00+01:00r5zdisplay.max_columnséz@0 2013-01-01 2013-01-01 00:00:00-05:00 2013-01-01 00:00:00+01:00z@1 2013-01-02                       NaT                       NaTz@2 2013-01-03 2013-01-03 00:00:00-05:00 2013-01-03 00:00:00+01:00)r'rprr$r*r+rr)r.rçrtr1rrrÚtest_astype_dt64tz_to_str‹s4
ýýù ò  þþþz$TestAstype.test_astype_dt64tz_to_strcCs,tƒ}| i¡}t ||¡||k    s(t‚dSr)rr'r*r+r)r.r rtrrrÚtest_astype_empty_dtype_dict¬s
 z'TestAstype.test_astype_empty_dtype_dictz data, dtyperaÚyÚzzstring[python]zstring[pyarrow]Zpyarrow)Zmarksrz
2020-01-01ÚUTCråNrrŽrGÚraiserEc    Csltt||dƒ}|dkr8|}|jt|d}t ||¡n0d}tjtt    f|d|jt|dW5QRXdS)Nr;rErFz!(Cannot cast)|(could not convert)rP)
rr r'Úfloatr*r+rRrSrTr¤)r.ÚdatarrGr r1rtrUrrrÚ/test_astype_ignores_errors_for_extension_dtypes´sz:TestAstype.test_astype_ignores_errors_for_extension_dtypescCsRdtdddddi}t|ƒ}| ddi¡}|}|dj d¡|d<t ||¡dS)    Nr]ú
2020-08-30r^r„ú Europe/London©ÚfreqrZr]zdatetime64[ns, Europe/Berlin]ú Europe/Berlin)rrr'ÚdtZ
tz_convertr*r+)r.rOr rtr1rrrÚtest_astype_tz_conversionÏs z$TestAstype.test_astype_tz_conversionr]r÷cCs^dtdddddi}t|ƒ}| dd|›di¡}| dd    i¡}| dd
i¡}t ||¡dS) Nr]rór^r„rôrõzdatetime64[ns, r½r?zdatetime64[ns, Europe/London])rrr'r*r+)r.r]rOr1rtrrrÚ test_astype_tz_object_conversionÙs z+TestAstype.test_astype_tz_object_conversionc Csª|}tdd|d}|j}t|d<||ƒ}| d¡}|| d¡ƒ}t ||¡|jd}    |tkrh|    jd}    |    tj    ksvt
‚| t ¡}
t   |
jdd…|jdd…k¡s¦t
‚dS)Nz
2016-01-01rr\rrDrŽ)rÚ_datar
r'r*Ú assert_equalr˜rr™ZNArrpr,r) r.Úframe_or_seriesZtz_naive_fixturer]ZdtirÓÚobjrtr1ÚitemZaltrrrÚtest_astype_dt64_to_stringçs
 
 
 
z%TestAstype.test_astype_dt64_to_stringcCsBtjddd}||ƒ}|dddgdd}| d¡}t ||¡dS)    Nr¿rrYz1 daysz2 daysz3 daysrDr;)r™Ztimedelta_ranger'r*rü)r.rýr×rþr1rtrrrÚtest_astype_td64_to_stringÿs
 
z%TestAstype.test_astype_td64_to_stringcCs0tdddgƒ t¡}|jdt d¡ks,t‚dS)Nr&ÚbarZbazrZS3)rr'Úbytesr—r,rr)r.rtrrrÚtest_astype_bytesszTestAstype.test_astype_bytesÚ index_slicer„cCsHt d¡ dd¡}t|ƒ}|j| d¡}|j|}tj||dddS)NérÚint16F)Z check_dtype)r,r²r³rr˜r'r*r+)r.rrñr rtr1rrrÚtest_astype_noncontiguous s
 
z$TestAstype.test_astype_noncontiguouscCsJtdddgdddgdœƒ}d|jd    <| d
|i¡j}|j}t ||¡dS) NrrŽr„rrrXr¨ZMichiganZLocationrh)rÚattrsr'r*Zassert_dict_equal)r.Zany_numpy_dtyper rtr1rrrÚtest_astype_retain_attrs!s
 
z#TestAstype.test_astype_retain_attrs)Ar£Ú
__module__Ú __qualname__r2r:rCrHrLrNrRÚmarkÚ parametrizer,r-r=rvÚinfrVrurxrŠr rr•r›rrqÚreprr¡rr    r¥r«r¬r­rµr¾rÁrÊr<rÍrÕrÖrØrÜràrârärèrêrëÚparamÚtdZ
skip_if_nor rròrùrúrrrZs_rr
rrrrr"$sÆ    
 
F ù    õ
 
    
 
 
 
ÿ
 
    
 
2
 
%
  $! ý ÷þ 
 
    úþ
    r"c@s,eZdZdd„Zdd„Zdd„Zdd„Zd    S)
ÚTestAstypeCategoricalcCsvtddddddgddddddgdœƒ}tddddddgƒ}t|ddddddgdœƒ}|d d    ¡|d<t ||¡dS)
NrŽr„rrrXr§©Úcatsršrrœ©rrr'r*r+©r.r rrÔrrrÚtest_astype_from_categorical3-s
&z3TestAstypeCategorical.test_astype_from_categorical3cCsvtddddddgdddddd    gd
œƒ}tddddddgƒ}t|dddddd    gd
œƒ}|d  d ¡|d <t ||¡dS) Nrhrir^rŽr„rrrXr§rrrœrrrrrÚtest_astype_from_categorical44s ÿz3TestAstypeCategorical.test_astype_from_categorical4cCsbtdt dddg¡id}|j d¡|_|j |¡|_tdtjddd    g|d
iƒ}t ||¡dS) NÚcol1rr€rƒ)rñrœr„rŽrr;)rr™rArr'r*r+)r.Z any_int_dtyper r1rrrÚtest_categorical_astype_to_int=s
z4TestAstypeCategorical.test_categorical_astype_to_intcCs>tddtjgƒ}| t¡}| d¡}| t¡}t ||¡dS)Nrhrirœ)rr,rvr'rpr*r+)r.r r1ÚcatrtrrrÚ)test_astype_categorical_to_string_missingFs
 
 
 
z?TestAstypeCategorical.test_astype_categorical_to_string_missingN)r£r r rrrrrrrrr,s        rc@seZdZdd„ZdS)ÚIntegerArrayNoCopycCs dst‚dS)NF)r)r.rrrr@RszIntegerArrayNoCopy.copyN)r£r r r@rrrrrOsrc@seZdZedd„ƒZdS)ÚInt16DtypeNoCopycCstSr)r)r¢rrrÚconstruct_array_typeYsz%Int16DtypeNoCopy.construct_array_typeN)r£r r Ú classmethodr rrrrrVsrcCsftddddgddddgdœtd    }|jd
tƒid d }|jjt ¡ksJt‚t     
|j j |j j ¡sbt‚dS) NrŽrrXr§ééé    r¨r;rhFrI) rr?r'rrhrr™Ú
Int16Dtyperr,Z shares_memoryrir))r rtrrrÚtest_frame_astype_no_copy^s"r&z!pyarrow is required for this test)Úreasonrr=r¦cCsTtddddgi|d}|jddd}d    |jd
<tddddgidd}t ||¡dS) NrhrŽr„rr;zint64[pyarrow]TrIr¯rÇ)rr'r˜r*r+)rr rtr1rrrÚtest_astype_copiesgs
 
r(rOrŽgø?c    CsNtddd|giƒ}| ¡}td|ƒ|jdddW5QRXt ||¡dS)Nrhrizmode.string_storagerDFrI)rr@rr'r*r+)Zstring_storagerOr r1rrrÚ)test_astype_to_string_not_modifying_inputrs
 r))-rÝÚnumpyr,rRZ pandas.compatrZpandas.util._test_decoratorsÚutilZ_test_decoratorsrZpandasr™rrrrrrr    r
r r r rrrZpandas._testingZ_testingr*r!r"rÚcoreZarraysZ IntegerArrayrr%rr&r Zskipifrr(rvr)rrrrÚ<module>s0 @ #