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
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
U
­ý°dÂã2@sLdZddlZddlmZddlmZmZmZmZddlmZddl    m
Z
ddl m Z ddl Z ddlmZddlZddlZdd    lmZmZmZddlZddlZddlZdd
lmZmZmZddl m!m"Z#dd l$m%Z%dd l&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4ddl5Z6dd l5m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBddlCmDZEddlFmGZGmHZHmIZIejJddgeKddd„ƒZLGdd„dƒZMdgddfgddfddddiddfiddfddhddfeNƒddfeOddhƒdd feOƒdd!fePdd"gƒdd#fePgƒdd$fd%d&„d'Dƒdd(fd)d&„d*Dƒdd+fe?dgƒdd,fe?geQd-dd.fe?dgƒjKdd/fe?gd0d-jKdd1fe;dgƒdd2fe;gƒdd3fe8dggƒdd4fe8ƒdd5fe Rd6¡dd7fe Sg¡dd8fe Rd9¡dd:fe Sgg¡dd;fe Rd<¡dd=fe Sggg¡dd>fe Rd?¡dd@fe Sgggg¡ddAfe Sd"¡ddBfeMe Rd6¡ƒddCfeMe Sg¡ƒddDfeMe Rd9¡ƒddEfeMe Sgg¡ƒddFfeMe Rd<¡ƒddGfeMe Sggg¡ƒddHfeMe Rd?¡ƒddIfeMe Sgggg¡ƒddJfeMe Sd"¡ƒddKfdLdMdNdOdPeKddQfeQƒddRfejTddSfdTg1ZUeVeUŽ\ZWZXZYejJeVeWeXƒeYddUdV„ƒZZdWdX„Z[dYdZ„Z\d[d\„Z]d]d^„Z^d_d`„Z_dadb„Z`dcdd„Zaejb cdegdgdfd'ddiddhe?dgƒe?geQd-e?dgƒjKdgd&„eddhƒDƒg
¡ejb cdieee?ejSefg¡djdk„ƒƒZgejb cdldmgdgdfdgddhdd"dnge?dgƒe8dodgiƒdpd&„eddhƒDƒg ¡dqdr„ƒZhejb cdsidodie?dgƒe i¡g¡dtdu„ƒZjejb cdsdvddd"gd'edd"ƒe;dgƒekejie?g    ¡dwdx„ƒZlejb cdyddg¡ejb cdzddg¡ejb cd{ddg¡d|d}„ƒƒƒZmd~d„Zne d€ddd‚g¡Zoejb cdseodd"dnƒg¡dƒd„„ƒZpejb cdsd…de?d†d‡iƒg¡dˆd‰„ƒZqdŠd‹„Zrejb cdse sdŒ¡g¡ddŽ„ƒZtejb cdsdd"dneQƒg¡dd‘„ƒZuejb cdsddd’e sd“¡d”e sd•¡g¡d–d—„ƒZvejb cdsdgeQƒg¡d˜d™„ƒZwGdšd›„d›ƒZxGdœd„dƒZyGdždŸ„dŸƒZzGd d¡„d¡ƒZ{ejb cd¢d£d¤d¥g¡d¦d§„ƒZ|d¨d©„Z}e#j~ejb dª¡d«d¬„ƒƒZ€d­d®„ZdS)¯z†
These the test the public routines exposed in types/common.py
related to inference and not otherwise tested in types/test_common.py
 
éN)Ú
namedtuple)ÚdateÚdatetimeÚtimeÚ    timedelta)ÚDecimal)ÚFraction)ÚStringIO)ÚNumber)ÚGenericÚIteratorÚTypeVar)ÚlibÚmissingÚops)Ú    inference)Ú ensure_int32Úis_boolÚ
is_complexÚis_datetime64_any_dtypeÚis_datetime64_dtypeÚis_datetime64_ns_dtypeÚis_datetime64tz_dtypeÚis_floatÚ
is_integerÚ    is_numberÚ    is_scalarÚis_scipy_sparseÚis_timedelta64_dtypeÚis_timedelta64_ns_dtype) Ú CategoricalÚ    DataFrameÚ
DateOffsetÚ DatetimeIndexÚIndexÚIntervalÚPeriodÚ PeriodIndexÚSeriesÚ    TimedeltaÚTimedeltaIndexÚ    Timestamp)Ú BooleanArrayÚ FloatingArrayÚ IntegerArrayTF)ÚparamsÚidscCs|jS©N©Úparam©Úrequest©r6úYd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/dtypes/test_inference.pyÚcoerceOsr8c@steZdZdZddœdd„Zedœdd„Zedœdd    „Zdd
d „Z    e
d d „ƒZ e
dd„ƒZ e
dd„ƒZ e
dd„ƒZdS)ÚMockNumpyLikeArraya·
    A class which is numpy-like (e.g. Pint's Quantity) but not actually numpy
 
    The key is that it is not actually a numpy array so
    ``util.is_array(mock_numpy_like_array_instance)`` returns ``False``. Other
    important properties are that the class defines a :meth:`__iter__` method
    (so that ``isinstance(abc.Iterable)`` returns ``True``) and has a
    :meth:`ndim` property, as pandas special-cases 0-dimensional arrays in some
    cases.
 
    We expect pandas to behave with respect to such duck arrays exactly as
    with real numpy arrays. In particular, a 0-dimensional duck array is *NOT*
    a scalar (`is_scalar(np.array(1)) == False`), but it is not list-like either.
    N©ÚreturncCs
||_dSr1)Ú_values)ÚselfÚvaluesr6r6r7Ú__init__dszMockNumpyLikeArray.__init__cst|jƒ‰‡fdd„}|ƒS)Nc3sˆEdHdSr1r6r6©Z iter_valuesr6r7Úit_outerjsz-MockNumpyLikeArray.__iter__.<locals>.it_outer)Úiterr<)r=rAr6r@r7Ú__iter__gs
 zMockNumpyLikeArray.__iter__cCs
t|jƒSr1)Úlenr<©r=r6r6r7Ú__len__oszMockNumpyLikeArray.__len__cCstj|j|dS©N©Údtype)ÚnpÚasarrayr<)r=Útr6r6r7Ú    __array__rszMockNumpyLikeArray.__array__cCs|jjSr1)r<ÚndimrEr6r6r7rNuszMockNumpyLikeArray.ndimcCs|jjSr1)r<rIrEr6r6r7rIyszMockNumpyLikeArray.dtypecCs|jjSr1)r<ÚsizerEr6r6r7rO}szMockNumpyLikeArray.sizecCs|jjSr1)r<ÚshaperEr6r6r7rPszMockNumpyLikeArray.shape)N)Ú__name__Ú
__module__Ú __qualname__Ú__doc__r?r rCÚintrFrMÚpropertyrNrIrOrPr6r6r6r7r9Ts
 
 
 
r9éÚlistz
list-empty)©rWTÚtuple)r6Tz tuple-emptyÚaÚdictz
dict-emptyÚsetz    set-emptyÚ    frozensetzfrozenset-emptyéÚiteratorziterator-emptyccs|]
}|VqdSr1r6©Ú.0Úxr6r6r7Ú    <genexpr>•srd©rWr_Ú    generatorccs|]
}|VqdSr1r6©rbÚ_r6r6r7rd–sr6zgenerator-emptyr(rHz Series-emptyZ StringMethodsÚOzStringMethods-emptyr$z Index-emptyr!zDataFrame-empty)r_z
ndarray-1dzndarray-1d-empty)r_r_z
ndarray-2dzndarray-2d-empty)r_r_r_z
ndarray-3dzndarray-3d-empty)r_r_r_r_z
ndarray-4dzndarray-4d-emptyz
ndarray-0dzduck-ndarray-1dzduck-ndarray-1d-emptyzduck-ndarray-2dzduck-ndarray-2d-emptyzduck-ndarray-3dzduck-ndarray-3d-emptyzduck-ndarray-4dzduck-ndarray-4d-emptyzduck-ndarray-0d)rWFrU)s123FÚbytes)óFz bytes-empty)Z123FÚstring)ÚFz string-emptyz string-typeÚobjectÚNaN)NFÚNonecCs|jSr1r2r4r6r6r7Úmaybe_list_like¾srqcCs.|\}}|dkrdn|}t |¡|ks*t‚dS)Nr]T©rÚ is_list_likeÚAssertionError©rqÚobjÚexpectedr6r6r7Útest_is_list_likeÃsrxcCs2|\}}|dkrdn|}tj|dd|ks.t‚dS)Nr]F)Z
allow_setsrrrur6r6r7Útest_is_list_like_disallow_setsÉsryc    sP‡fdd„‰t ¡}z*t d¡t t¡ ˆƒW5QRXW5t |¡XdS)Ncst g¡ˆƒdSr1)rrsr6©Ú    list_liker6r7r{Òs
z.test_is_list_like_recursion.<locals>.list_likeéd)ÚsysÚgetrecursionlimitÚsetrecursionlimitÚtmZexternal_error_raisedÚRecursionError)Z    rec_limitr6rzr7Útest_is_list_like_recursionÏs 
 r‚cCs"Gdd„dƒ}t |ƒ¡rt‚dS)Nc@seZdZdd„ZdZdS)z3test_is_list_like_iter_is_none.<locals>.NotListLikecSs|Sr1r6©r=Úitemr6r6r7Ú __getitem__äsz?test_is_list_like_iter_is_none.<locals>.NotListLike.__getitem__N)rQrRrSr…rCr6r6r6r7Ú NotListLikeãsr†rr)r†r6r6r7Útest_is_list_like_iter_is_noneàsr‡cCsjtdƒ}Gdd„dtt|ƒ}|t}|tddddgiƒ}t |¡rJt‚t|tƒsXt‚t |¡sft‚dS)NÚTc@s eZdZdS)z.test_is_list_like_generic.<locals>.MyDataFrameN©rQrRrSr6r6r6r7Ú MyDataFrameñsrŠrcrWr_é)r r!r rUrrsrtÚ
isinstance)rˆrŠZtstcZtstr6r6r7Útest_is_list_like_genericìsrcCs\tj}|dƒst‚|ddgƒs"t‚|dƒr.t‚|tjƒr<t‚Gdd„dƒ}||ƒƒrXt‚dS)NrerWr_Zabcdc@seZdZdd„ZdS)ztest_is_sequence.<locals>.AcSsdS)NrWr6rƒr6r6r7r…sz'test_is_sequence.<locals>.A.__getitem__N)rQrRrSr…r6r6r6r7ÚAsrŽ)rZ is_sequencertrJÚint64)Zis_seqrŽr6r6r7Útest_is_sequenceüs  rcCsît tgtd¡st‚t tddgƒ¡s,t‚t t ddg¡¡sDt‚t tdgƒ¡sXt‚t t ddg¡¡spt‚t tt ddg¡ƒ¡sŒt‚Gdd    „d    t    ƒ}t |ƒ¡s¬t‚t dddg¡rÀt‚t d
¡rÎt‚t d ¡rÜt‚t d ¡rêt‚dS) NrHrWr_r[Úbú
2016-01-01r‹c@seZdZdZdS)z%test_is_array_like.<locals>.DtypeListÚspecialN)rQrRrSrIr6r6r6r7Ú    DtypeListsr”r6Úfooé{)
rZ is_array_liker(rnrtrJÚarrayr$r9rX)r”r6r6r7Útest_is_array_like
sr˜ÚinnerrYccs|]
}|VqdSr1r6rar6r6r7rd)séÚoutercs,|‡fdd„tdƒDƒƒ}t |¡s(t‚dS)Ncsg|]}ˆ‘qSr6r6rg©r™r6r7Ú
<listcomp>.sz3test_is_nested_list_like_passes.<locals>.<listcomp>rš)Úrangerrsrt)r™r›Úresultr6rœr7Útest_is_nested_list_like_passessr rvÚabcr‹rŽccs|]}ddgVqdS)rWr_Nr6rgr6r6r7rd?scCst |¡rt‚dSr1)rZis_nested_list_likert)rvr6r6r7Útest_is_nested_list_like_fails2sr¢ÚllcCst |¡st‚dSr1©rZ is_dict_likert©r£r6r6r7Útest_is_dict_like_passesFsr¦Ú1cCst |¡rt‚dSr1r¤r¥r6r6r7Útest_is_dict_like_failsKsr¨Úhas_keysÚ has_getitemÚ has_containscsHG‡‡‡fdd„dƒ}|ddiƒ}t |¡}ˆo6ˆo6ˆ}||ksDt‚dS)NcsDeZdZddœdd„Z”r"dd„Z”r.dd„Z”r@edœd    d
„ZdS) z-test_is_dict_like_duck_type.<locals>.DictLikeNr:cSs
||_dSr1)Úd)r=r¬r6r6r7r?bsz6test_is_dict_like_duck_type.<locals>.DictLike.__init__cSs
|j ¡Sr1)r¬ÚkeysrEr6r6r7r­gsz2test_is_dict_like_duck_type.<locals>.DictLike.keyscSs |j |¡Sr1)r¬r…©r=Úkeyr6r6r7r…lsz9test_is_dict_like_duck_type.<locals>.DictLike.__getitem__cSs |j |¡Sr1)r¬Ú __contains__r®r6r6r7r°qsz:test_is_dict_like_duck_type.<locals>.DictLike.__contains__)rQrRrSr?r­r…Úboolr°r6©r«rªr©r6r7ÚDictLikeasr³rWr_r¤)r©rªr«r³r¬rŸrwr6r²r7Útest_is_dict_like_duck_type]s
 
 r´cCs¬Gdd„dƒ}tj}tdƒ}||ƒs(t‚|ƒ}||ƒr:t‚dd„|_|ƒ}||ƒrVt‚dd„|_|ƒ}||ƒsrt‚|`dd„|_|ƒ}||ƒs’t‚dd    d
g}||ƒr¨t‚dS) Nc@s eZdZdS)z#test_is_file_like.<locals>.MockFileNr‰r6r6r6r7ÚMockFile|srµÚdatacSsdS©Nrr6rEr6r6r7Ú<lambda>‰rkz#test_is_file_like.<locals>.<lambda>cSs|Sr1r6rEr6r6r7r¸‘rkcSsdSr·r6rEr6r6r7r¸˜rkrWr_r‹)rZ is_file_liker    rtÚwriterCÚread)rµÚis_filer¶Úmr6r6r7Útest_is_file_like{s$  
 
 
 
r½Ú
test_tupler‘ÚccCst |¡st‚dSr1©rZis_named_tuplertr¥r6r6r7Útest_is_names_tuple_passes¦srÁ)rWr_r‹Úpiç…ëQ¸    @cCst |¡rt‚dSr1rÀr¥r6r6r7Útest_is_names_tuple_fails«srÄcCsºGdd„dƒ}Gdd„dƒ}Gdd„dƒ}ddt d¡d    d
d |ƒf}g|ƒf}gf|ƒf}|D]}t |¡s^t‚q^|D]}t |¡rvt‚qv|D]}t |¡rŽt‚qŽt t g¡¡r¶t‚dS) Nc@s eZdZdS)z'test_is_hashable.<locals>.HashableClassNr‰r6r6r6r7Ú HashableClass²srÅc@seZdZdZdS)z*test_is_hashable.<locals>.UnhashableClass1N©rQrRrSÚ__hash__r6r6r6r7ÚUnhashableClass1µsrÈc@seZdZdd„ZdS)z*test_is_hashable.<locals>.UnhashableClass2cSs tdƒ‚dS)Nz Not hashable)Ú    TypeErrorrEr6r6r7rǹsz3test_is_hashable.<locals>.UnhashableClass2.__hash__NrÆr6r6r6r7ÚUnhashableClass2¸srÊrWrÃr[r6rY)rJÚfloat64rZ is_hashablertr—)rÅrÈrÊZhashableZ not_hashableZ abc_hashable_not_really_hashableÚir6r6r7Útest_is_hashable°s
 rÍÚadcCst |¡st‚dSr1©rZis_rertr¥r6r6r7Útest_is_re_passesÍsrÐrccCst |¡rt‚dSr1rÏr¥r6r6r7Útest_is_re_failsÒsrÑZasdfZadsfz    \u2233\s*rmcCst |¡st‚dSr1©rZis_re_compilablertr¥r6r6r7Útest_is_recompilable_passes×srÓcCst |¡rt‚dSr1rÒr¥r6r6r7Útest_is_recompilable_failsÞsrÔc@sÈeZdZej dejedƒddejedƒdd     e
¡dej dgg¡dd„ƒZ ej d    e d
ƒd fejd fej d fd dg¡dd„ƒZej d    e dƒd fej d fejd fd dg¡dd„ƒZej dd eejd d gdde d d g¡ƒfd ejd ej gddfg¡dd„ƒZej dd d g¡ej dd d g¡ej dd
ddddd d!d"g¡ej d#d$d%d&g¡d'd(„ƒƒƒƒZej dd d g¡d)d*„ƒZej dd d g¡d+d,„ƒZd-d.„Zd/d0„Zd1d2„Zd3d4„Zej dejd5ej ge
dejed5ƒej ge
dejej d5ge
dejej ed5ƒge
dg¡d6d7„ƒZej dd d g¡d8d9„ƒZej d:ejd5d;ge
dejed5ƒd;ge
dejed5ƒed;ƒge
dejd;d5ge
dejd;ed5ƒge
dejed;ƒed5ƒge
dg¡ej dd d g¡d<d=„ƒƒZej dd d g¡d>d?„ƒZej d@dAdBg¡dCdD„ƒZej dEdFej e dGƒg¡ej dHdIdJg¡dKdL„ƒƒZ ej dMd5gej!fe !d5¡gej!fdNd;gej"fd5d;ge
fe #dO¡gej#fe $dO¡gej$fe %dO¡gej%fe !dO¡gej!fe #dN¡e $dO¡gej$fe %dN¡e $dO¡gej%fe %dN¡d;ge
fe %dN¡dOgej!fe %dN¡e &dO¡ge
fg ¡dPdQ„ƒZ'dRdS„Z(dTdU„Z)dVdW„Z*ej dHdXdYg¡dZd[„ƒZ+d\d]„Z,d^d_„Z-ej d`e.ejdNdagdbde d d g¡ƒe.ejdNdagdcde d d g¡ƒg¡ddde„ƒZ/ej dfdgdhe 0ej"¡j1dOfg¡didj„ƒZ2ej dd e.ejdNdagdbde d d g¡ƒfd ejdNej gdkdfg¡dldm„ƒZ3ej dd e4ejdndogdkde d d g¡ƒfd ejdnej gdkdfg¡dpdq„ƒZ5drds„Z6dtdu„Z7ej dEdFej g¡dvdw„ƒZ8ej dxd dOdydze 9dO¡e :dO¡e &dO¡e "dO¡e ;dO¡e <dO¡e =dO¡e >dO¡e ?dO¡g ¡ej d{d dOdydze 9dO¡e :dO¡e &dO¡e "dO¡e ;dO¡e <dO¡e =dO¡e >dO¡e ?dO¡g ¡d|d}„ƒƒZ@d~d„ZAej d€eBjCjDeEdƒd‚dƒeBjFd„d…d†d‡g¡dˆd‰„ƒZGdFS)ŠÚ TestInferenceÚarrr¡ZS1rHóaóccCstj|dd}|dkst‚dS)NT©Úskipnarj©rÚ infer_dtypert©r=rÖrŸr6r6r7Útest_infer_dtype_bytesäs    z$TestInference.test_infer_dtype_byteszvalue, expectedÚinfTF)rWF)r[FcCst |¡}||kst‚dSr1)Ú
libmissingZisposinf_scalarrt©r=ÚvaluerwrŸr6r6r7Útest_isposinf_scalarðs
z"TestInference.test_isposinf_scalarú-infcCst |¡}||kst‚dSr1)ràZisneginf_scalarrtrár6r6r7Útest_isneginf_scalarÿs
z"TestInference.test_isneginf_scalarzconvert_to_masked_nullable, expr±rncCsTtjdtjgtd}tj|tƒ|d}|r<t t    |Ž|¡n|d}t 
||¡dS)NTrH©Úconvert_to_masked_nullabler) rJr—rornÚlibopsZmaybe_convert_boolr]r€Úassert_extension_array_equalr,Úassert_numpy_array_equal©r=rçÚexprÖrŸr6r6r7Ú#test_maybe_convert_nullable_boolean sÿz1TestInference.test_maybe_convert_nullable_booleanrçÚcoerce_numericÚinfinityZinFZiNfZInfZiNFZInFZINfZINFÚprefixrmú-ú+cCsZtjtj||gtddddh||d\}}t |dkr>tjntj g¡}t ||¡dS)NrHrmÚNULLÚnan©Ú    na_valuesrîrç)rmrò)rÚmaybe_convert_numericrJr—rnrßr€rê)r=rîrïrðrçrŸrhrwr6r6r7Ú%test_maybe_convert_numeric_infinities%s
ü
z3TestInference.test_maybe_convert_numeric_infinitiesc    CsFd}tjt|d*tjtjdgtddddhd|d    W5QRXdS)
NzUnable to parse string©ÚmatchZfoo_infrHrmrórôFrõ)ÚpytestÚraisesÚ
ValueErrorrr÷rJr—rn)r=rçÚmsgr6r6r7Ú,test_maybe_convert_numeric_infinities_raises8süz:TestInference.test_maybe_convert_numeric_infinities_raisescCs„tjdddgtd}tjdtjdgtjd}ddh}tj||||d    }|rlt|t |¡ƒ}t     
|t|ޡn|d
}t      ||¡dS) Nz1.200z-999.000z4.500rHg333333ó?g@iüÿÿg8Àrær) rJr—rnrôrËrr÷r-Úisnanr€rérê)r=r8rçr¶rwZ
nan_valuesÚoutr6r6r7Ú,test_maybe_convert_numeric_post_floatify_nanCsüz:TestInference.test_maybe_convert_numeric_post_floatify_nancCsttjdddgdd}t |tƒd¡\}}|jtjks8t‚tjdddgdd}t |tƒd¡\}}|jtjkspt‚dS)NrßrirHFrä)rJr—rr÷r]rIrËrt©r=rÖrŸrhr6r6r7Útest_convert_infsYs zTestInference.test_convert_infscCsDtjddddgdd}t |tƒdd¡\}}t t |¡¡s@t‚dS)    NZ42EZ2EZ99eZ6erirHFT)rJr—rr÷r]Úallrrtrr6r6r7Útest_scientific_no_exponentbsz)TestInference.test_scientific_no_exponentcCsNtjddgddgtd}t |tƒdd¡\}}t |t tjdtjg¡¡dS)Ng$@r_çð?ZapplerHFT)    rJr—rnrr÷r]r€rêrôrr6r6r7Útest_convert_non_hashablehsz'TestInference.test_convert_non_hashablecCsÂtjdgtd}tjdgtjd}t t |tƒ¡d|¡tjt    dƒgtd}tjdgtjd}t t |tƒ¡d|¡tjt d¡gtd}tjdgtjd}t t |tƒ¡d|¡dS)NìrHr)
rJr—rnÚuint64r€rêrr÷r]Ústr)r=rÖrìr6r6r7Útest_convert_numeric_uint64osz)TestInference.test_convert_numeric_uint64r    cCs<|r| t¡n| ¡}tj|tƒ|d\}}t ||¡dS)N)rî©ÚastypeÚfloatÚcopyrr÷r]r€Úassert_almost_equal)r=r8rÖrwrŸrhr6r6r7Útest_convert_numeric_uint64_nan|s
z-TestInference.test_convert_numeric_uint64_nancCsštjddgtd}dh}|r0tjtjdgtdn| ¡}tj||||d}|r‚|r‚ttjddgddtjddgd    dƒ}t|Ž}n|d}t     
||¡dS)
Nr    lrH©rîrçrÚu8TFr±) rJr—rnrôrrrr÷r.r€r)r=r8rçrÖrörwrŸr6r6r7Ú&test_convert_numeric_uint64_nan_valuesŠs$ÿüþ
z4TestInference.test_convert_numeric_uint64_nan_valuesÚcaseéÿÿÿÿcCs>|r| t¡n| ¡}tj|tƒ||d\}}t ||¡dS)Nrr )r=rr8rçrwrŸrhr6r6r7Ú!test_convert_numeric_int64_uint64¤sü
z/TestInference.test_convert_numeric_int64_uint64cCsHtjtjdgtdtƒd|d}|r.t|Ž}n|d}t |¡sDt‚dS)Nr
rHTrr)    rr÷rJr—rnr]r-rrt)r=rçrŸr6r6r7Ú"test_convert_numeric_string_uint64½sü
z0TestInference.test_convert_numeric_string_uint64râlûÿÿÿlcCs*tj|gtd}t |¡}t ||¡dSrG)rJr—rnrÚmaybe_convert_objectsr€rê)r=rârÖrŸr6r6r7Útest_convert_int_overflowÌs
z'TestInference.test_convert_int_overflowÚvalNrôrIzM8[ns]úm8[ns]cCst |¡}tjtj|gtd}tj|dd|d}|j|ks>t‚t     |¡ 
¡sPt‚tj|ddd…dd|d}|j|kszt‚t     |¡ 
¡sŒt‚dS)NrHT©Úconvert_datetimeÚconvert_timedeltaZdtype_if_all_natr) rJrIr—ÚpdÚNaTrnrrrtZisnatr)r=rrIÚvalsrŸr6r6r7Ú(test_maybe_convert_objects_nat_inferenceÓs$
ü üz6TestInference.test_maybe_convert_objects_nat_inferencezvalue, expected_dtyper_rWcCs2tj|td}tj||d}t t |¡|¡dSrG)rJr—rnr€rêrr)r=râZexpected_dtyperÖrìr6r6r7Útest_maybe_convert_objects_uintêsz-TestInference.test_maybe_convert_objects_uintcCsætjt d¡t dd¡gtd}| ¡}tj|ddd}t     ||¡tjt
j t dd¡gtd}tjt d¡t dd¡gdd}tj|ddd}t     ||¡tjt dd¡tj gtd}|ddd    …}tj|ddd}t     ||¡dS)
Nz
2000-01-01rWÚsrHT©rr r"rr) rJr—Ú
datetime64Ú timedelta64rnrrrr€rêr!r"rô©r=rÖrìrr6r6r7Ú#test_maybe_convert_objects_datetimes6ÿÿ  ÿ ÿz1TestInference.test_maybe_convert_objects_datetimecCs¢tjtjtjgtd}tj|ddd}t ||¡tj|ddt     d¡d}tjddgdd}t ||¡tj|ddt     d¡d}tjddgdd}t ||¡dS)NrHTr'útimedelta64[ns]rr"údatetime64[ns])
rJr—r!r"rnrrr€rêrI)r=rÖrrìr6r6r7Ú+test_maybe_convert_objects_dtype_if_all_nat s.ÿ ü üz9TestInference.test_maybe_convert_objects_dtype_if_all_natc    CsLtjtjtjgtd}tjtddtj    |ddt 
d¡dW5QRXdS)NrHrrùTr) rJr—r!r"rnrûrürýrrrI©r=rÖr6r6r7Ú3test_maybe_convert_objects_dtype_if_all_nat_invalid:süzATestInference.test_maybe_convert_objects_dtype_if_all_nat_invalidr-r,cCsTtdddƒ}|dkr$|tdddƒ}tj|gtd}tj|ddd    }t ||¡dS)
Ni;    é
ér,i²rWrHTr')rrJr—rnrrr€rê)r=rIZstamprÖrr6r6r7Ú1test_maybe_convert_objects_datetime_overflow_safeFs ÿz?TestInference.test_maybe_convert_objects_datetime_overflow_safecCsptdƒ}|| ¡| ¡tjtjdg}t |¡D]<}tj    t
|ƒt d}t |ƒj j}tj|dd}t ||¡q.dS)NÚnowrHT©r)r+Z to_pydatetimeZ to_datetime64r!r"rJrôÚ    itertoolsÚ permutationsr—rXrnr#Ú_dataZ_ndarrayrrr€rê)r=Útsr#r¶rwrŸr6r6r7Ú*test_maybe_convert_objects_mixed_datetimesSs z8TestInference.test_maybe_convert_objects_mixed_datetimescCsZt dd¡}tj|gtd}|d|ks,t‚tj|dd}tj|gdd}t ||¡dS)Nr"ÚnsrHrT)r r)    rJr)r—rnrtrrr€rê)r=rvrÖrŸrwr6r6r7Ú*test_maybe_convert_objects_timedelta64_nat]s  z8TestInference.test_maybe_convert_objects_timedelta64_natrìrÚi8rcCs2tjdtjgtd}tj|dd}t ||¡dS)Nr_rHT©Zconvert_to_nullable_dtype)rJr—rornrrr€ré)r=rìrÖrŸr6r6r7Ú+test_maybe_convert_objects_nullable_integergs    z9TestInference.test_maybe_convert_objects_nullable_integerz
dtype, val)rrWr
cCsXtj|ddgdd}tj|dd}ttj|ddg|dt dddg¡ƒ}t ||¡dS)Nr‹rnrHTr>rF)rJr—rrr.r€ré)r=rIrrÖrŸrwr6r6r7Ú(test_maybe_convert_objects_nullable_noneusÿz6TestInference.test_maybe_convert_objects_nullable_nonerËcCsXtjdtjgtd}tj|tƒ|d}|r@t|Ž}t     ||¡n|d}t 
||¡dS)Nr_rHrær) rJr—rornrr÷r]r.r€rérêrër6r6r7Ú+test_maybe_convert_numeric_nullable_integers ÿz9TestInference.test_maybe_convert_numeric_nullable_integerç@çcCsTtjdtjgtd}tj|tƒ|d}|r<t t    |Ž|¡n|d}t 
||¡dS)NrBrHrær) rJr—rôrnrr÷r]r€rér-rêrër6r6r7Ú)test_maybe_convert_numeric_floating_array—sÿz7TestInference.test_maybe_convert_numeric_floating_arraycCsJtddtjgtd}tjddtjgtd}tj|jdd}t     ||¡dS)NTFrHrW)Úsafe)
r$rJrôrnr—rrr>r€rê)r=Úindrìrr6r6r7Ú#test_maybe_convert_objects_bool_nan±sz1TestInference.test_maybe_convert_objects_bool_nancCs„tjddgtd}t ddg¡}tj|dd}t ||¡tjddtjgtd}tjddtjgtd}tj|dd}t ||¡dS©NTFrHr>)    rJr—rnrrr€rêr!r"r*r6r6r7Ú+test_maybe_convert_objects_nullable_boolean¸s z9TestInference.test_maybe_convert_objects_nullable_booleancCsTtjdd|gtd}tt dddg¡t dddg¡ƒ}tj|dd}t ||¡dSrH)rJr—rnr,rrr€ré)r=rrÖrìrr6r6r7Ú.test_maybe_convert_objects_nullable_boolean_naÄsÿz<TestInference.test_maybe_convert_objects_nullable_boolean_naÚdata0rùð?ð?Údata1c Cs||g}tj|dd}tjt|ƒt|ƒggdj}t|dƒs@dn|jj}t|dƒsVdn|jj}|dkr†|dkr†|}t|jj|jjƒ}    nPt    |ƒs–t    |ƒr´t    |ƒrªt    |ƒrªdnd}d}    n"t
|ƒsÄt
|ƒrÎ|}d}    n|}d    }    tj||›|    ›d}
t   |¡} t  | |
¡dS)
NrnrH)Z scalar_typesrIÚpythonr±rméé)rJr—Zfind_common_typeÚtypeÚkindÚhasattrrIÚmaxÚitemsizerrrrr€rê) r=rKrMr¶rÖZ common_kindZkind0Zkind1rRrUrwrŸr6r6r7Ú#test_maybe_convert_objects_itemsizeÎs,&ÿ
z1TestInference.test_maybe_convert_objects_itemsizecCs>tjtdddtjddgtd}tj|dd}t     ||¡dS)NißrW)ÚtzinforHTr5)
rJr—rÚpytzÚutcrnrrr€rêrÝr6r6r7Ú%test_mixed_dtypes_remain_object_array s z3TestInference.test_mixed_dtypes_remain_object_arrayÚidxršÚboth©Úclosedr’r‹ÚD)ÚperiodsÚfreqcCs,tjtj|tdddd}t ||j¡dS)NrHT)Zconvert_periodZconvert_interval)rrrJr—rnr€rér8)r=r[rŸr6r6r7Útest_maybe_convert_objects_eas  ýz+TestInference.test_maybe_convert_objects_ea)HrQrRrSrûÚmarkÚ parametrizerJr—rXrrnrôrÞrrßrãrår,rírørÿrrrrr r rrrrrr$r
rZuint8Zuint16Zuint32Úint32r%r+r.r0r3r:r<r.r?ZiinforTr@rAr-rDrGrIrJZint8Úint16Úfloat16Úfloat32rËÚ    complex64Ú
complex128rVrZr!Ú IntervalIndexÚ from_breaksržZ period_rangerbr6r6r6r7rÕãsz
ýþ
 
 
ûþ
 
 
 
ûþ
 
 ÿþùþ
ÿ 
 
 
     üþ    
 
úþ  
 
 
 
îþ
 
 
 
  þþ
ÿ
    $þþ
 ÿþùþ
 
    óþóþ þþrÕc@seZdZGdd„dƒZdd„Zej dddg¡dd    „ƒZd
d „Z    ej d e
j d de
j e
j dgdddfe
j d de
j e
j dgdddfe
j d dde
  d¡e
 d¡e
j gdddfe
j d dde
  d¡e
 d¡e
j gdddfg¡dd„ƒZdd„Zdd„Zdd„Zdd„Zej dddg¡dd„ƒZd d!„Zd"d#„Zej d$ee
j dd%fee
j dd%fee
j dd%fee
j dd&fed'dd(fed'dd&fg¡ej d)ee
j g¡d*d+„ƒƒZd,d-„Zd.d/„Zej d0eje
j g¡d1d2„ƒZej d3e
j e
  d4¡e
 !d5¡gede
j e
 !d5¡e
  d4¡gede
  e
 !d6¡e"d5ƒg¡e
  e"d5ƒe
 !d6¡g¡e
  e
j e"d5ƒd7g¡e
j e
j d6e"d5ƒgede
j e
 !d4¡e
  d d8¡gede
j e
  d d8¡e
 !d4¡gedg¡d9d:„ƒZ#d;d<„Z$ej d3e
  e"d6ƒe"d5ƒg¡e
  e%d=d d ƒe%d>dd ƒg¡e
  e%d=d d ƒe"d5ƒg¡g¡d?d@„ƒZ&ej d0eje
j g¡ej dAe"d6ƒe%d=d d ƒg¡dBdC„ƒƒZ'ej d3e
  e(dDƒe(dEƒg¡e
j e
  d d8¡e
  dd8¡gede
  e)d ƒe)dƒg¡g¡dFdG„ƒZ*ej d0eje
j g¡ej dHe(dDƒe
  d d8¡e)d ƒg¡dIdJ„ƒƒZ+dKdL„Z,ej dMej ee-g¡ej dddg¡dNdO„ƒƒZ.dPdQ„Z/ej d0eje
j g¡dRdS„ƒZ0dTdU„Z1dVdW„Z2ej dXdYdZd[d\d]d^d_g¡d`da„ƒZ3dbdc„Z4ej dde5ded d ƒe"dfƒge"dfƒe5ded d ƒge5ded d ƒejgeje5ded d ƒgg¡ej dddg¡dgdh„ƒƒZ6didj„Z7dkdl„Z8dmdn„Z9dodp„Z:dqdr„Z;dsdt„Z<dudv„Z=ej dwddg¡dxdy„ƒZ>ej dze"d{ƒe(d{ƒd{d|g¡d}d~„ƒZ?dd€„Z@ej dMej eg¡ej dddg¡ej dd‚dƒd„gd‚dƒejAgg¡d…d†„ƒƒƒZBej dMej eg¡ej dddg¡ej ddddgddejAgg¡d‡dˆ„ƒƒƒZCd'S)‰ÚTestTypeInferencec@s eZdZdS)zTestTypeInference.DummyNr‰r6r6r6r7ÚDummy%srncCs"|\}}|tj|ddkst‚dS)NTrÙrÛ)r=Zany_skipna_inferred_dtypeZinferred_dtyper>r6r6r7Útest_inferred_dtype_fixture(sz-TestTypeInference.test_inferred_dtype_fixturerÚTFcCs~tjtjgdd|d}|dks$t‚tjg|d}|dks>t‚t tjgtdtjgtdg¡}tj||d}|dkszt‚dS)NÚi4rHrÙÚintegerÚempty)rrÜrJr—rtrn)r=rÚrŸrÖr6r6r7Útest_length_zero/s  "z"TestTypeInference.test_length_zerocCs´tjdddt d¡t d¡gdd}tj|dd    }|d
ks>t‚tjdddt d¡t d¡d gdd}tj|dd    }|d ks~t‚tjdddddgd d}tj|dd    }|d
ks°t‚dS)NrWr_r‹r2ršrirHTrÙrqr•ú mixed-integerrp)rJr—rrerrÜrtrÝr6r6r7Ú test_integers<s$ & zTestTypeInference.test_integersz arr, skipnarWr_r‹rirHr2ršcCs*tj||d}|rdnd}||ks&t‚dS)NrÙrqz
integer-narÛ)r=rÖrÚrŸrwr6r6r7Útest_integer_naIs  z!TestTypeInference.test_integer_nacCs2tjdddtjgtd}t |¡}|dks.t‚dS)NrWr_r‹rHrq)rJr—rôrnrrÜrtrÝr6r6r7Útest_infer_dtype_skipna_defaultXs
z1TestTypeInference.test_infer_dtype_skipna_defaultcCstjdddddgdd}tj|dd}|dks2t‚tjt d¡t d¡gdd}tj|dd}|dksjt‚tjddddgdd}tj|dd}|dksšt‚tjdddgtd}tj|dd}|dksÈt‚tjdtjdgdd}tj|dd}|dksøt‚tj|dd}|dkst‚dS)    NTFrirHrÙÚbooleanr•Úmixed)rJr—rrÜrtÚbool_r±rôrÝr6r6r7Ú
test_bools`s"     zTestTypeInference.test_boolscCsætjdddt d¡t d¡gdd}tj|dd    }|d
ks>t‚tjd d d t d¡t d¡dgdd}tj|dd    }|dks~t‚tjd d d ddgdd}tj|dd    }|d
ks°t‚tjd d d ddgdd}tj|dd    }|d
ksât‚dS)NrrBg@r2ršrirHTrÙÚfloatingrWr_r‹r•rtZf4Zf8)rJr—rËrhrrÜrtrÝr6r6r7Ú test_floatsxs$ &  zTestTypeInference.test_floatscCsút tdƒtdƒtdƒg¡}tj|dd}|dks6t‚t ddtdƒg¡}tj|dd}|d    ksdt‚tj|ddd
…dd}|d    ksˆt‚t tdƒtd ƒtdƒg¡}tj|dd}|dks¾t‚tjtdƒtjtdƒgd d }tj|dd}|dksöt‚dS)NrWr_r‹TrÙÚdecimalrrBryrrorirH)rJr—rrrÜrtrôrÝr6r6r7Ú test_decimals‰s    zTestTypeInference.test_decimalscCsBt dddg¡}tj||d}|dks*t‚tjdddgdd}tj||d}|dksXt‚tj|ddd    …|d}|dks|t‚t d
tjdg¡}tj||d}|dks¨t‚tjdtjdgdd}tj||d}|dksØt‚tjdtjd gdd}tj||d}|dks
t‚tjdtjd gtjd}tj||d}|dks>t‚dS) NrrBrLrÙÚcomplexrirHryrrWy@@)rJr—rrÜrtrôri)r=rÚrÖrŸr6r6r7Ú test_complexŸs(     zTestTypeInference.test_complexcCsdSr1r6rEr6r6r7Ú test_stringÀszTestTypeInference.test_stringcCs¾dtjdg}tj|dd}|dks&t‚dtjdg}tj|dd}|dksLt‚dtjdg}tj|dd}|dksrt‚dtjdg}tj|dd}|dks˜t‚ddg}tj|dd}|dksºt‚dS)Nr[r¿FrÙryTrl)rJrôrrÜrtr!ÚNAr"rÝr6r6r7Ú test_unicodeÃs        zTestTypeInference.test_unicodez dtype, missing, skipna, expectedr|rrNryÚboxcCs.|||g|d}tj||d}||ks*t‚dS)NrHrÙrÛ)r=r…rrIrÚrwrÖrŸr6r6r7Útest_object_emptyÜsz#TestTypeInference.test_object_emptycCs.dd„tddƒDƒ}t|ƒ}|jdks*t‚dS)NcSsg|]}tdd|ƒ‘qS©éÜrW)rrar6r6r7rðsz3TestTypeInference.test_datetime.<locals>.<listcomp>rWér()ržr$Ú inferred_typert)r=ÚdatesÚindexr6r6r7Ú test_datetimeïszTestTypeInference.test_datetimecCs8tjt d¡t d¡gtd}tj|dddks4t‚dS)Nú
2011-01-01rHTrÙr()rJr—r(rnrrÜrtr/r6r6r7Útest_infer_dtype_datetime64ôs
ÿz-TestTypeInference.test_infer_dtype_datetime64Úna_valuecCsZt |t d¡g¡}tj|dddks*t‚t |t d¡|g¡}tj|dddksVt‚dS)Nú
2011-01-02TrÙr()rJr—r(rrÜrt©r=rrÖr6r6r7Ú#test_infer_dtype_datetime64_with_naúsz5TestTypeInference.test_infer_dtype_datetime64_with_narÖÚnatr‘rŽ皙™™™™ñ?r_cCstj|dddkst‚dS)NFrÙryrÛr/r6r6r7Ú#test_infer_datetimelike_dtype_mixedsz5TestTypeInference.test_infer_datetimelike_dtype_mixedcCs0t tjtdƒdg¡}tj|dddks,t‚dS)Nr‘rWTrÙrt)rJr—rôr+rrÜrtr/r6r6r7Útest_infer_dtype_mixed_integersz0TestTypeInference.test_infer_dtype_mixed_integeréÛrˆcCstj|dddkst‚dS©NTrÙrrÛr/r6r6r7Útest_infer_dtype_datetimes    z+TestTypeInference.test_infer_dtype_datetimeÚ
time_stampcCsNt ||g¡}tj|dddks$t‚t |||g¡}tj|dddksJt‚dSr™©rJr—rrÜrt)r=rr›rÖr6r6r7Ú!test_infer_dtype_datetime_with_na&sz3TestTypeInference.test_infer_dtype_datetime_with_naú1 daysz2 dayscCstj|dddkst‚dS©NTrÙrrÛr/r6r6r7Útest_infer_dtype_timedelta2s    z,TestTypeInference.test_infer_dtype_timedeltaÚdeltacCsNt ||g¡}tj|dddks$t‚t |||g¡}tj|dddksJt‚dSrŸrœ)r=rr¡rÖr6r6r7Ú"test_infer_dtype_timedelta_with_na=sz4TestTypeInference.test_infer_dtype_timedelta_with_nacCslt tdddtdddg¡}tj|dddks4t‚t tdddtdddg¡}tj|ddd    ksht‚dS)
Nú2011-01r_©raz2011-02TrÙÚperiodÚMry©rJr—r&rrÜrtr/r6r6r7Útest_infer_dtype_periodIsz)TestTypeInference.test_infer_dtype_periodÚklasscCs‚|tdddtdddtjgƒ}tj||ddks6t‚|tdddtdddtjgƒ}|tjkrddnd    }tj||d|ks~t‚dS)
NrŽr_r¤r‘rÙr¥r¦z unknown-arrayry)r&r!r"rrÜrtr—)r=r©rÚr>rìr6r6r7Útest_infer_dtype_period_arrayRs
 
ýÿ
 
ýÿz/TestTypeInference.test_infer_dtype_period_arraycCsptjtdddt d¡gtd}tj|dddks6t‚tjt d¡tdddgtd}tj|dddkslt‚dS)    Nr£r¦r¤r”rHFrÙry)rJr—r&r(rnrrÜrtr/r6r6r7Útest_infer_dtype_period_mixedksÿÿz/TestTypeInference.test_infer_dtype_period_mixedcCs^t |tdddg¡}tj|dddks,t‚t |tddd|g¡}tj|dddksZt‚dS)Nr£r_r¤TrÙr¥r§r’r6r6r7Útest_infer_dtype_period_with_navsz1TestTypeInference.test_infer_dtype_period_with_nacCs.t tjtjg¡}tj|dddks(t‚t tjtjdg¡}tj|dddksRt‚tj|dddksht‚t dtjtjg¡}tj|dddks’t‚tj|dddks¨t‚t tjg¡}tj|dddksÌt‚t tjtjg¡}tj|dddksôt‚t tjtjg¡}tj|dddkst‚t tjtjtjg¡}tj|dddksLt‚t dtjdg¡}tj|dddksvt‚t t d¡g¡}tj|ddd    ks t‚tjtjdfD]f}t |t d¡|g¡}tj|ddd    ksàt‚t tj|t d¡|g¡}tj|ddd    ks®t‚q®tjt     d¡gt
d
}tj|ddd ksDt‚tjtjdfD]f}t |t     d¡|g¡}tj|ddd ks„t‚t tj|t     d¡|g¡}tj|ddd ksRt‚qRt tjt d¡t     d¡tjg¡}tj|dddksôt‚tjt     d¡t d¡gt
d
}tj|dddks*t‚dS) NTrÙr|rrFryrr”r(rHr) rJr—rôrrÜrtr!r"r(r)rn)r=rÖÚnr6r6r7Ú!test_infer_dtype_all_nan_nat_likesH"z3TestTypeInference.test_infer_dtype_all_nan_nat_likecCsºt tjtjt d¡g¡}t |¡s(t‚t     |¡s6t‚t 
|¡rDt‚t tjtjt  d¡g¡}t |¡rlt‚t     |¡rzt‚t 
|¡sˆt‚t tjtjt d¡t  d¡g¡}t |¡r¸t‚t     |¡rÆt‚t 
|¡rÔt‚t tjtjg¡}t |¡sôt‚t     |¡st‚t 
|¡st‚tjtjtjgt d}t |¡r:t‚t     |¡rJt‚t 
|¡rZt‚t  tjtdddtdddgt d¡sˆt‚t  tjtdddtdddgt d¡r¶t‚dS)Nr”rHÚ20130101ú
US/Eastern©ÚtzZ20130102ZCET)rJr—rôr!r"r(rÚis_datetime_arrayrtÚis_datetime64_arrayÚ!is_timedelta_or_timedelta64_arrayr)rnZis_datetime_with_singletz_arrayr+r/r6r6r7Ú+test_is_datetimelike_array_all_nan_nat_like¸sH"
 
þûÿ
    
 
þûÿz=TestTypeInference.test_is_datetimelike_array_all_nan_nat_likeÚfuncr³r´Z is_bool_arrayrµZ is_date_arrayZ is_time_arrayZis_interval_arraycCsjtt|ƒ}t ddg¡}||ƒr$t‚|| dd¡ƒr8t‚t ddg¡}||ƒrRt‚|| dd¡ƒrft‚dS)Nr•Úbarr_rW)ÚgetattrrrJr—rtZreshape)r=r·rÖr6r6r7Útest_other_dtypes_for_arrayås
  z-TestTypeInference.test_other_dtypes_for_arraycCs~dd„tddƒDƒ}t|ƒ}|jdks*t‚dd„tddƒDƒtjg}tj|dd}|d    ks`t‚tj|d
d}|dkszt‚dS) NcSsg|]}tdd|ƒ‘qSr‡©r©rbÚdayr6r6r7rüsz/TestTypeInference.test_date.<locals>.<listcomp>rWr‰rcSsg|]}tdd|ƒ‘qSr‡r»r¼r6r6r7rsFrÙryT)ržr$rŠrtrJrôrrÜ)r=r‹rŒrŸr6r6r7Ú    test_dateûs zTestTypeInference.test_dater>iäz
2020-01-01cCstj||d}|dkst‚dS)NrÙrrÛ)r=r>rÚrŸr6r6r7Ú%test_infer_dtype_date_order_invariants z7TestTypeInference.test_infer_dtype_date_order_invariantcCs€t t ddg¡¡st‚t t ddtjg¡¡s4t‚t t ddg¡¡rLt‚t t ddg¡¡sdt‚t t ddg¡¡r|t‚dS)NrWrBr_)rZis_float_arrayrJr—rtrôZis_integer_arrayrEr6r6r7Útest_is_numeric_arrays
z'TestTypeInference.test_is_numeric_arraycCs‚t t ddg¡¡st‚tjtjddtjgtdddr<t‚tjtjddtjgtddds`t‚tjtjdddgtddds‚t‚tjtjddtjgtddds¦t‚tjtjddtj    gtdddrÊt‚tjtjddt 
d¡gtdddròt‚tjtjddt dƒgtdddrt‚tjtjdddgtdddr>t‚tjtjddtjgtdddrdt‚t t d    d
g¡¡r~t‚dS) Nr•r¸rHFrÙTr"rorWr_) rZis_string_arrayrJr—rtr!rƒrnrôr"r(rrEr6r6r7Útest_is_string_arraysLÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ ÿ ÿ z&TestTypeInference.test_is_string_arraycCs<d}|g}t |¡tddƒ}|ddƒ}|g}t |¡dS)N)ršéÚrecordzx yršrÂ)rZto_object_array_tuplesr)r=Úrr>rÃr6r6r7Útest_to_object_array_tuplesCs
 
 
z-TestTypeInference.test_to_object_array_tuplescCsHtjdgdd}tj|dd}|dks*t‚tj|dd}|dksDt‚dS)NrirHFrÙryTrrrœrÝr6r6r7Ú test_objectNs
 zTestTypeInference.test_objectcCs¤dddgdddgg}tj|td}t |¡}t ||¡tj|td}tj|dd}t ||¡tjdddddgdddddggtd}tj|dd}t ||¡dS)    NrWr_r‹r2ršrÂrH)Z    min_width)rJr—rnrZto_object_arrayr€rê)r=Úrowsrwrr6r6r7Útest_to_object_array_widthWs
  ÿz,TestTypeInference.test_to_object_array_widthcCsbt tddd¡st‚t tdgdd¡r.t‚t tdƒ¡r@t‚t d¡rNt‚t tj¡r^t‚dS)Nr£r¦r¤rW)rZ    is_periodr&rtr'r+rJrôrEr6r6r7Útest_is_periodis
z TestTypeInference.test_is_periodcCs”ttdƒƒ}tj|dd}|dks&t‚tjt|ƒdd}|dksDt‚ttdƒdgdd}tj|dd}|dksrt‚tjt|ƒdd}|dkst‚dS)Nr¡TrÙZ categoricalZcegfab)Ú
categoriesZordered)r rXrrÜrtr(rÝr6r6r7Útest_categoricalps    z"TestTypeInference.test_categoricalÚasobjectcCs€tjjtdƒdd}|r"| t¡}tj|dd}|dks<t‚tj|j    dd}|dksXt‚tjt
||j ddd}|dks|t‚dS)Nršr\r]FrÙÚintervalrH) r!rkrlržrrnrrÜrtr8r(rI)r=rÌr[Úinferredr6r6r7Ú test_interval€s
  zTestTypeInference.test_intervalrârrCcCspt||dd}t||dd}tj||gtd}tj|dddksDt‚tj||gtd}tj|dddkslt‚dS)    NÚleftr]ÚrightrHFrÙrÍry)r%rJr—rnrrÜrt)r=râÚfirstÚsecondrÖZarr2r6r6r7Útest_interval_mismatched_closeds z1TestTypeInference.test_interval_mismatched_closedcCsàtdddd}ttdƒtdƒdd}ttdƒtdƒdd}t ||g¡}tj|dddks^t‚t ||g¡}tj|dddks‚t‚t ||g¡}tj|dddks¦t‚tdd    dd}tj||gtd
}tj|ddd ksÜt‚dS) NrrWrÐr]FrÙrygø?g@rHrÍ)    r%r+r)rJr—rrÜrtrn)r=rÒrÓÚthirdrÖZ flt_intervalr6r6r7Ú test_interval_mismatched_subtypeœsz2TestTypeInference.test_interval_mismatched_subtyper¶r[r‘r¿cCs*|||d}tj||d}|dks&t‚dS)NrHrÙrlrÛ)r=r¶rÚr©Znullable_string_dtyperrÎr6r6r7Útest_string_dtype¯s z#TestTypeInference.test_string_dtypecCs*||dd}tj||d}|dks&t‚dS)NrxrHrÙrÛ)r=r¶rÚr©rrÎr6r6r7Útest_boolean_dtype¸s z$TestTypeInference.test_boolean_dtype)DrQrRrSrnrorûrcrdrsrurJr—rôrrervrwr{r}rrr‚r„rrnr(r†rrr!r"r“r)r(r+r–r—rršrr)rr r¢r¨r$rªr«r¬r®r¶rºr¾rr¿rÀrÁrÅrÆrÈrÉrËrÏrÔrÖrƒr×rØr6r6r6r7rm#s
 **üþ    
 
     
 
úþ  
ÿÿôþ
ýþ
ÿ  ýþ
ÿ       
9-ùþ
 
 üþ     %     
 
rmc@sVeZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zej     
d d d g¡dd„ƒZ dd„Z dS)ÚTestNumberScalarcCs$tdƒs t‚tdƒst‚tdƒs$t‚tdƒs0t‚tt d¡ƒsBt‚tt d¡ƒsTt‚tt d¡ƒsft‚ttjƒstt‚tdƒr€t‚tdƒrŒt‚ttdddƒƒr t‚tt d¡ƒr²t‚tt    dƒƒrÂt‚tt    ddd    ƒrÖt‚tt
d
ƒƒræt‚tt d ƒƒröt‚tt  d ¡ƒr
t‚tt  dd ¡ƒs t‚dS)NTrWr•ùð?@rcr˜rŽr°r±éèržFr_)rrtrJrrËrjrôrr(r+rr)rzr)rEr6r6r7Útest_is_numberÃs$      zTestNumberScalar.test_is_numbercCs2tdƒs t‚tdƒst‚tt d¡ƒs*t‚tdƒr6t‚tdƒrBt‚tdƒrNt‚tt d¡ƒr`t‚tt d¡ƒrrt‚tt d¡ƒr„t‚ttjƒr’t‚tdƒržt‚tdƒrªt‚ttdddƒƒr¾t‚tt     d¡ƒrÐt‚tt
dƒƒràt‚tt
dd    d
ƒrôt‚tt d ƒƒrt‚tt  dd ¡ƒrt‚tt d ƒƒr.t‚dS)NTFrWr•rÚrcr˜rŽr°r±rÛr_rž)rrtrJrzrrËrjrôrr(r+rr)r)rEr6r6r7Ú test_is_boolÚs&       zTestNumberScalar.test_is_boolcCs2tdƒs t‚tt d¡ƒst‚tdƒr*t‚tdƒr6t‚tdƒrBt‚tdƒrNt‚tt d¡ƒr`t‚tt d¡ƒrrt‚tt d¡ƒr„t‚ttjƒr’t‚tdƒržt‚tdƒrªt‚ttdddƒƒr¾t‚tt     d¡ƒrÐt‚tt
dƒƒràt‚tt
dd    d
ƒrôt‚tt d ƒƒrt‚tt d ƒƒrt‚tt  dd ¡ƒr.t‚dS)NrWTr•rÚFrcr˜rŽr°r±rÛržr_)rrtrJrrzrËrjrôrr(r+rr)r)rEr6r6r7Útest_is_integerðs&       z TestNumberScalar.test_is_integercCs2tdƒs t‚tt d¡ƒst‚ttjƒs,t‚tdƒr8t‚tdƒrDt‚tdƒrPt‚tdƒr\t‚tt d¡ƒrnt‚tt d¡ƒr€t‚tt d¡ƒr’t‚tdƒržt‚tdƒrªt‚ttdddƒƒr¾t‚tt     d¡ƒrÐt‚tt
dƒƒràt‚tt
dd    d
ƒrôt‚tt d ƒƒrt‚tt  dd ¡ƒrt‚tt d ƒƒr.t‚dS)Nr•TrWrÚFrcr˜rŽr°r±rÛr_rž)rrtrJrËrôrzrrjrr(r+rr)r)rEr6r6r7Ú test_is_floats&       zTestNumberScalar.test_is_floatcCsâtjddd}tjdddd}tdƒs*t‚tdƒs6t‚t|ƒsBt‚t|ƒrNt‚tdƒrZt‚tdƒsft‚t|ƒsrt‚t|ƒs~t‚tdƒsŠt‚tdƒs–t‚t|ƒs¢t‚t|ƒs®t‚tdƒrºt‚tdƒrÆt‚t|ƒrÒt‚t|ƒsÞt‚dS)Nr¯r‹)r`r°)r`r²r(r-)r!Z
date_rangerrtrrr)r=r9Ztsar6r6r7Útest_is_datetime_dtypess$               z(TestNumberScalar.test_is_datetime_dtypesr²r°ÚUTCcCs@d|›d}t|ƒrt‚t|ƒs$t‚t|ƒs0t‚t|ƒs<t‚dS)Nzdatetime64[ns, ú])rrtrrr)r=r²rIr6r6r7Útest_is_datetime_dtypes_with_tz4s
    z0TestNumberScalar.test_is_datetime_dtypes_with_tzcCsštdƒs t‚tdƒst‚tdƒr$t‚tdƒs0t‚tddgdd}t|ƒsLt‚t|ƒsXt‚t| d¡ƒsjt‚ttgtjdƒr€t‚ttgtjdƒr–t‚dS)Nr)r,gļÖBgļæBrH)    rrtrr*rr$rJrËr)r=Ztdir6r6r7Útest_is_timedelta<s      z"TestNumberScalar.test_is_timedeltaN) rQrRrSrÜrÝrÞrßràrûrcrdrãrär6r6r6r7rÙÂs
rÙc @s¶eZdZdd„Zdd„Zdd„Zej de     
d¡e     
d    ¡e     
e      d
¡¡e     
e      dd ¡¡e     
e      d ¡¡g¡d d„ƒZ ej de     
g¡e     
gg¡g¡dd„ƒZdd„Zdd„Zdd„ZdS)Ú TestIsScalarcCsütdƒs t‚tdƒst‚tdƒs$t‚ttƒƒs2t‚tdƒs>t‚tdƒsJt‚ttdƒƒsZt‚ttdƒƒsjt‚ttjƒsxt‚tdƒs„t‚tdƒst‚ttd    ddƒƒs¤t‚ttd    ddƒƒs¸t‚tt    d
d ƒƒsÊt‚tt
dd ƒsÜt‚tt j ƒsêt‚tt j ƒsøt‚dS) NTFrCrWr_roÚfoobarófoobariÞé r©Úhours)rrtrr€rrJrôrrrrr!r"rƒrEr6r6r7Útest_is_scalar_builtin_scalarsLs"       z+TestIsScalar.test_is_scalar_builtin_scalarscCs^tiƒr t‚tgƒrt‚tdgƒr&t‚tdƒr2t‚tdƒr>t‚ttdƒƒrNt‚ttƒrZt‚dS)NrWr6rY)rrtÚsliceÚEllipsisrEr6r6r7Ú!test_is_scalar_builtin_nonscalars_s    z.TestIsScalar.test_is_scalar_builtin_nonscalarscCsºtt d¡ƒst‚tt d¡ƒs$t‚tt d¡ƒs6t‚tt d¡ƒsHt‚tt d¡ƒsZt‚tt d¡ƒslt‚tt     d¡ƒs~t‚tt 
d¡ƒst‚tt  d¡ƒs¢t‚tt  dd¡ƒs¶t‚dS)NrWrr_rærçú
2014-01-01Úh) rrJrrtrËreriZobject_Zstr_Zunicode_Úbytes_r(r)rEr6r6r7Ú"test_is_scalar_numpy_array_scalarshsz/TestIsScalar.test_is_scalar_numpy_array_scalarsÚzerodimrWrærïrðr"cCs"t|ƒr t‚tt |¡ƒst‚dSr1)rrtrZitem_from_zerodim)r=rór6r6r7Ú#test_is_scalar_numpy_zerodim_arraysts z0TestIsScalar.test_is_scalar_numpy_zerodim_arraysrÖcCs t|ƒr t‚tt|ƒƒrt‚dSr1)rrtr9r/r6r6r7Útest_is_scalar_numpy_arrays‚s z(TestIsScalar.test_is_scalar_numpy_arrayscCspttdƒƒst‚ttddƒs"t‚ttdƒƒs2t‚ttdddƒsFt‚ttddƒsXt‚ttj     d¡ƒslt‚dS)NrïrWrér)rÐrÑ)Údaysr‹)
rr+rtr)r&r%r"r!ÚoffsetsZMinuterEr6r6r7Útest_is_scalar_pandas_scalars‡s z*TestIsScalar.test_is_scalar_pandas_scalarscCsÐtttdƒrt‚ttdgƒƒr$t‚ttƒƒr2t‚ttdggƒƒrFt‚ttgƒƒrVt‚ttdgƒƒrht‚ttgƒƒrxt‚ttgƒjƒrŠt‚tt    gƒjƒrœt‚ttgƒj 
d¡ƒr´t‚tt   dddg¡ƒrÌt‚dS)NrHrWr_r_r‹) rr(rnrtr!r$r r#r8r*Z    to_periodr!r—rEr6r6r7Ú test_is_scalar_pandas_containerssz-TestIsScalar.test_is_scalar_pandas_containerscCs(Gdd„dtƒ}|dƒ}t|ƒs$t‚dS)Nc@s(eZdZddœdd„Zedœdd„ZdS)z3TestIsScalar.test_is_scalar_number.<locals>.NumericNr:cSs
||_dSr1©râ)r=râr6r6r7r?¢sz<TestIsScalar.test_is_scalar_number.<locals>.Numeric.__init__cSs|jSr1rúrEr6r6r7Ú__int__¥sz;TestIsScalar.test_is_scalar_number.<locals>.Numeric.__int__)rQrRrSr?rUrûr6r6r6r7ÚNumeric¡srürW)r
rrt)r=rüÚnumr6r6r7Útest_is_scalar_numberœsz"TestIsScalar.test_is_scalar_numberN)rQrRrSrërîròrûrcrdrJr—r(r)rôrõrørùrþr6r6r6r7råKs$     ûþ
 
 
 råÚunitÚmsÚusr;cCs.ttjgd|›ddƒ}t|ƒdks*t‚dS)Nz datetime64[rârHr)r#rJr—rDrt)rÿr[r6r6r7Ú.test_datetimeindex_from_empty_datetime64_array¬srcCs€ttjtdƒddtdƒdœƒ}tj|jdd…dd…f<|jd}|tj    ksPt
‚|d      ¡}tj|d
d …<|d
tj    ks|t
‚dS) Nr1rËrHZ20010101)rŽÚBr‹rÂ)r2rrrPé    ) r!rJrKržr+rôZilocÚlocr!r"rtr)ZdfrŸr&r6r6r7Útest_nan_to_nat_conversions²sÿ
 rz!ignore::PendingDeprecationWarningcCs.t|ddggƒƒst‚tt dg¡ƒr*t‚dS)NrrW)rrtrJr—)Zspmatrixr6r6r7Útest_is_scipy_sparse¿srcCsTtjdtjd}t|ƒ}|jtjks(t‚tjdtjd}t|ƒ}|jtjksPt‚dS)Nr1rH)rJZarangererrIrtr)r>rŸr6r6r7Útest_ensure_int32Æs r)‚rTÚ collectionsrrrrrr~rZ    fractionsrÚior    r6Znumbersr
Úrer}Útypingr r r ÚnumpyrJrûrXZ pandas._libsrrràrrèZpandas.util._test_decoratorsÚutilZ_test_decoratorsÚtdZpandas.core.dtypesrZpandas.core.dtypes.commonrrrrrrrrrrrrrrZpandasr!r r!r"r#r$r%r&r'r(r)r*r+Zpandas._testingZ_testingr€Zpandas.core.arraysr,r-r.Zfixturer r8r9r]r^rBrnZndarrayr—rôZ    ll_paramsÚzipÚobjsrwr0rqrxryr‚r‡rrr˜rcrdržrXrZr r¢Ú defaultdictr¦r\r¨r´r½r¾rÁrÄrÍÚcompilerÐrÑrÓrÔrÕrmrÙrårrZskip_if_no_scipyÚfilterwarningsrrr6r6r6r7Ú<module>s`      @8 
5
 
 
 
 
 
Ï3
 
 
öþ  õþ
"
÷þ
(
 
 
 
ÿ
 
D$
a