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
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
U
­ý°däã@s>ddlmZddlmZmZddlmZddlZddlZddlZddl    Z
ddl Z ddl m mZddlZddlmZmZmZmZddlmZddlmmZddlmZddl m!Z!m"Z"ddl#m$Z$m%Z%e j&d    dd
gd d gd dd„ƒZ'Gdd„dƒZ(Gdd„dƒZ)Gdd„dƒZ*Gdd„dƒZ+Gdd„dƒZ,dd„Z-dd„Z.dd„Z/Gd d!„d!ƒZ0d"d#„Z1d$d%„Z2d&d'„Z3d(d)„Z4e j5 6d*ed+d,gd-d.gge7d/ƒd0d1fed+d2gd-d2gge7d/ƒd0d3fg¡d4d5„ƒZ8d6d7„Z9e j5 6d8ed9d9gƒged9d9gƒed9d9gƒgg¡d:d;„ƒZ:d<d=„Z;d>d?„Z<d@dA„Z=dBdC„Z>dDdE„Z?dFdG„Z@dS)Hé)Údeque)ÚdatetimeÚtimezone)ÚEnumN)Ú    DataFrameÚIndexÚ
MultiIndexÚSeries)Ú expressions)Ú _MIN_ELEMENTSÚNUMEXPR_INSTALLED)Ú_check_mixed_floatÚ_check_mixed_intTi@BZnumexprÚpython)ZautouseÚparamsÚidsccs tj}|jt_|jV|t_dS©N)Úexprr Úparam)Úrequestr ©rúYd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/frame/test_arithmetic.pyÚswitch_numexpr_min_elements$src@sZeZdZddœdd„Zdd„Zedœdd„Zedœd    d
„Zdd d „Zdd„Z    ddd„Z
dS)Ú DummyElementN©ÚreturncCs||_t |¡|_dSr)ÚvalueÚnpÚdtype)ÚselfrrrrrÚ__init__-szDummyElement.__init__cCstj|j|jdS)N©r)rÚarrayrr©rrrrÚ    __array__1szDummyElement.__array__cCsd|j›d|j›dS)Nz DummyElement(z, ú))rrr#rrrÚ__str__4szDummyElement.__str__cCst|ƒSr)Ústrr#rrrÚ__repr__7szDummyElement.__repr__FcCs
||_|Srr!)rrÚcopyrrrÚastype:szDummyElement.astypecCst|ƒ|j |¡|ƒSr)ÚtyperÚview)rrrrrr,>szDummyElement.viewcCs
t|jƒSr)Úboolr)rÚaxisrrrÚanyAszDummyElement.any)F)N) Ú__name__Ú
__module__Ú __qualname__r r$r'r&r(r*r,r/rrrrr,s
rc @sneZdZdd„Zdd„Zej dej    j
ddde j ddd    d
œej    j
dddej    j
dddd
œgej    j
dddej    j
dddd
œej    j
ddde j ddd    d
œge j ddd    e j ddd    d
œej    j
dddej    j
dddd
œgej    j
ddde j ddd    d
œe j ddd    e j ddd    d
œgg¡d d „ƒZ ej d ddddddg¡dd„ƒZdd„Zdd„Zdd„Zdd„ZdS)ÚTestFrameComparisonscCsbtddddgiƒ}tddddgiƒ}|dk}t ||¡|d d¡|d<|dk}t ||¡dS)NÚAÚfooÚbarÚbazTFÚcategory)rÚtmÚassert_frame_equalr*)rÚdfÚexpÚresrrrÚ&test_comparison_with_categorical_dtypeLs z;TestFrameComparisons.test_comparison_with_categorical_dtypec    CsDttj dd¡tdƒd}d}tjt|d|dkW5QRXdS)NééÚABCD©Úcolumnsz+The truth value of a DataFrame is ambiguous©Úmatchr)rrÚrandomÚrandnÚlistÚpytestÚraisesÚ
ValueError)rr;ÚmsgrrrÚtest_frame_in_list[sz'TestFrameComparisons.test_frame_in_listz    arg, arg2é
©ÚsizeÚ20010101©Úperiods©ÚaÚbc    s t|ƒ‰t|ƒ‰ˆˆk}t‡‡fdd„ˆjDƒˆjˆjd}t ||¡ˆˆk}t‡‡fdd„ˆjDƒˆjˆjd}t ||¡dddg}d |¡}tjt|d    ˆˆkW5QRXtjt|d    ˆˆkW5QRXtjt|d    ˆˆkW5QRXtjt|d    ˆˆkW5QRXdS)
Ncsi|]}|ˆ|ˆ|k“qSrr©Ú.0Úcol©ÚxÚyrrÚ
<dictcomp>˜sz@TestFrameComparisons.test_comparison_invalid.<locals>.<dictcomp>©ÚindexrCcsi|]}|ˆ|ˆ|k“qSrrrWrZrrr] sz=Invalid comparison between dtype=datetime64\[ns\] and ndarrayzinvalid type promotionzbThe DTypes <class 'numpy.dtype\[.*\]'> and <class 'numpy.dtype\[.*\]'> do not have a common DType.ú|rD)    rrCr_r9r:ÚjoinrIrJÚ    TypeError)rÚargZarg2ÚresultÚexpectedZmsgsrLrrZrÚtest_comparison_invalidbs:0ý ý û    
z,TestFrameComparisons.test_comparison_invalidz left, right)ÚgtÚlt)rhrg)ÚgeÚle)rjri)Úeqrk)Únerlc        Csœttjdddtjdddtjjdddtj d¡tt     d¡ƒdœƒ}tj
|j tj  t |ƒ¡dkd    f<tt|ƒ}tt|ƒ}|d
kr°||t d ¡ƒ}|t d ¡|ƒ}t ||¡nXd }tjt|d ||t d ¡ƒW5QRXtjt|d |t d ¡|ƒW5QRX|d
kr@||t d¡ƒ}|t d¡|ƒ}t ||¡nXd}tjt|d ||t d¡ƒW5QRXtjt|d |t d¡|ƒW5QRXdS)NrQrNrRZ20010102iʚ;rO)Zdates1Údates2ZintcolZfloatcolZ    stringcolgà?rm)rkrlZ20010109zL'(<|>)=?' not supported between instances of 'numpy.ndarray' and 'Timestamp'rDZnatzJ'(<|>)=?' not supported between instances of 'numpy.ndarray' and 'NaTType')rÚpdÚ
date_rangerrFÚrandintrGrHr9ZrandsÚNaTÚlocÚrandÚlenÚgetattrÚoperatorÚ    Timestampr:rIrJrb)    rÚleftÚrightr;Zleft_fZright_frerdrLrrrÚtest_timestamp_compare¹s>  
 ûÿ     
 
ÿ
ÿz+TestFrameComparisons.test_timestamp_comparecCs\tddgddggƒ}tddgddggƒ}||k}| ¡ ¡r@t‚||k}| ¡ ¡sXt‚dS)Nz
1989-08-01éérUrVÚcÚd)rr/ÚAssertionErrorÚall)rr;ÚotherrdrrrÚtest_mixed_comparisonñs z*TestFrameComparisons.test_mixed_comparisoncCs^tt d¡ d¡ƒ}tddgddgddggƒ}|dk}t ||¡|ddgk}t ||¡dS)Nr?©ér|FT©r|r|r|)rrÚarangeÚreshaper9r:)rr;rerdrrrÚ test_df_boolean_comparison_errorþs   z5TestFrameComparisons.test_df_boolean_comparison_errorcCs@ttj dd¡tdƒdddgd}| d¡}| ¡ ¡r<t‚dS)Nér„r4ÚBÚCr^)rrrFrGÚrangeÚ__eq__r/r©rr;rdrrrÚtest_df_float_none_comparison s"
z2TestFrameComparisons.test_df_float_none_comparisoncCs¼tdddœdddœgƒ}|jdk}t |||jdd…dd…f¡t || |jdd…dd…f¡|jdk}t |||jdd…dd…f¡t || |jdd…dd…f¡dS)Nr{r5rTr|r6r)rrUr9r:rrrV)rr;Zmask_aZmask_brrrÚtest_df_string_comparisons
"$
"z.TestFrameComparisons.test_df_string_comparisonN)r0r1r2r>rMrIÚmarkÚ parametrizerrFrprnrorfrzr‚rˆrrrrrrr3Isd þþû þ þû  þþû  þ  þûáþ-
*úþ
- r3c    @s¶eZdZej dddddddg¡dd    „ƒZej d
eje    g¡d d „ƒZ
d d„Z dd„Z dd„Z dd„Zej dddddddg¡dd„ƒZej dddddddg¡dd„ƒZdd„ZdS)ÚTestFrameFlexComparisonsÚoprkrlrgrhrirjc     CsHtj dd¡}tj dd¡}t|ƒ}t|ƒ}t |jd¡}| |¡j ¡sPt    ‚| 
|¡j  ¡rdt    ‚t ||ƒ}t t |ƒ}t ||ƒ|||ƒ¡|jdd…dd…f ¡}    ||    ƒ}
|||    j|j|jdƒ} t |
| ¡t ||jƒ|||jƒ¡t |dƒ||dƒ¡d} t |tjƒ||tjƒ¡tjt| d||ƒW5QRXdS)    Nér„)r{r„r{r^rú$Unable to coerce to Series/DataFramerD)rrFrGrÚonesÚshaperkÚvaluesr€rrlr/rurvr9r:rrr)Úreindexr_rCÚnanrIrJrK) rr”ÚdataZ
other_datar;rÚndim_5ÚfÚoZpart_oÚrsZxprLrrrÚtest_bool_flex_frames(
 
 z-TestFrameFlexComparisons.test_bool_flex_frameÚboxcCstj dd¡}t|ƒ}|tj d¡ƒ}|tj d¡ƒ}|j|dd}| |¡}|j|dd}| |¡}    t ||t|ƒk¡t ||     ¡t || ¡t ||j     |¡j    ¡t || t
|ƒ¡¡t ||jt|ƒdd¡t ||jt
|ƒdd¡|j |dd}
|  |¡} |j |dd} |  |¡} t | |t|ƒk¡t | | ¡t |
| ¡t |
|j      |¡j    ¡|j |dd}|  |¡}|j|dd}| |¡}t ||t|ƒk¡t || ¡t || ¡t ||j      |¡j    ¡ttj d¡ƒ}ttj d¡ƒ}dS)Nr•r„r©r.)rrFrGrrkrlr9r:r    ÚTrHrgrjrirh)rr¢rœr;Zidx_serZcol_serZidx_eqZcol_eqZidx_neZcol_neZidx_gtZcol_gtZidx_leZcol_leZidx_geZcol_geZidx_ltZcol_ltrrrÚtest_bool_flex_series=sB
 
 
 
 
 
z.TestFrameFlexComparisons.test_bool_flex_seriescCs²ttj dd¡ƒ}tj|jd<| |¡}|jdr6t‚| |¡}|jdsNt‚|     |¡}|jdrft‚| 
|¡}|jdr~t‚|  |¡}|jdr–t‚|  |¡}|jdr®t‚dS)Nr•r„©rr) rrrFrGr›rrrkrrlrgrhrirj)rr;r rrrÚtest_bool_flex_frame_nahs 
 
 
 
 
 
z0TestFrameFlexComparisons.test_bool_flex_frame_nac        Cspt tjddtjg¡}t dtjddg¡}td|iƒ}td|iƒ}d ddg¡}tjt|d    | |¡W5QRXtjt|d    |d |d¡W5QRXtjt|d    |j    |j    kW5QRX| 
|¡}|j      ¡sÞt ‚t dtjdg¡}td|iƒ}tjt|d    | d¡W5QRXtjt|d    |d d¡W5QRXtjt|d    |j    dkW5QRXdS)
Nr{r?y@érUr`z9'>' not supported between instances of '.*' and 'complex'z unorderable types: .*complex\(\)rD) rr"r›rrarIrJrbrgr™rlr€r)    rÚarrZarr2r;Údf2rLr Zarr3Údf3rrrÚ"test_bool_flex_frame_complex_dtypeys2  þÿ
 z;TestFrameFlexComparisons.test_bool_flex_frame_complex_dtypecCsVtddtjdgiƒ}tddt ¡dgiƒ}| |¡}tddddgiƒ}t ||¡dS)NrYr5r6FT)rrr›rÚnowrlr9r:)rÚdf1rªrdr<rrrÚ!test_bool_flex_frame_object_dtype s
 
z:TestFrameFlexComparisons.test_bool_flex_frame_object_dtypecCs”ttjgƒ}|tjk}|jd ¡dks,t‚| tj¡}|jd ¡dksNt‚|tjk}|jd ¡dksnt‚| tj¡}|jd ¡dkst‚dS)Nr¦FT)rrnrqÚilocÚitemrrkrlrŽrrrÚtest_flex_comparison_nat¨s 
 
 z1TestFrameFlexComparisons.test_flex_comparison_natÚopnamecCsVtdddgdddgdœƒ}d}t||ƒ|ƒj ¡}t |tdgt t    ¡gdd    ¡dS)
Nr{r|r„çð?ç@ç@rZÚcount©r_Úname)
rruÚdtypesÚ value_countsr9Úassert_series_equalr    rrr-)rr³r;ÚconstrdrrrÚ&test_df_flex_cmp_constant_return_typesºsÿz?TestFrameFlexComparisons.test_df_flex_cmp_constant_return_typescCsdtdddgdddgdœƒ}d}|jdd…}t||ƒ|ƒj ¡}t |tdgt     t
¡gd    d
¡dS) Nr{r|r„r´rµr¶rZrr·r¸) rr°rurºr»r9r¼r    rrr-)rr³r;r½ÚemptyrdrrrÚ,test_df_flex_cmp_constant_return_types_emptyÅsÿzETestFrameFlexComparisons.test_df_flex_cmp_constant_return_types_emptycCsŽtj dddg¡}t||dœƒ}tddgƒ}|j|dd}tddgddgdœƒ}t ||¡tddgdd    gd
}|j|dd}t ||¡dS) Nr{r|r„©r4rŠrr£Fr4rŠ©r_)rnZ IntervalIndexZ from_breaksrr    rkr9r:)rÚiir;Úserr=reZser2Úres2rrrÚ-test_df_flex_cmp_ea_dtype_with_ndarray_seriesÑs  zFTestFrameFlexComparisons.test_df_flex_cmp_ea_dtype_with_ndarray_seriesN)r0r1r2rIr‘r’r¡rr"r    r¥r§r¬r¯r²r¾rÀrÆrrrrr“s
 
*'
 
 
r“c@sHeZdZdd„Zejje ddej dddg¡dd    „ƒƒZ    d
d „Z
d d „Z dd„Z ej ddddg¡dd„ƒZ ej deddƒ¡dd„ƒZdd„Zej ddddd g¡d!d"„ƒZd#d$„Zej d%d&d'g¡d(d)„ƒZd*d+„Zd,d-„Zd.d/„Zej ddddd0g¡d1d2„ƒZej d3d4d5g¡d6d7„ƒZd8d9„Zd:d;„Zd<d=„Zd>d?„Zd5S)@ÚTestFrameFlexArithmeticcstt d¡}t|ƒ‰tˆˆdœƒ‰ˆjˆdd}t‡‡fdd„ˆjDƒƒ}t ||¡ˆjˆjdd}t ||¡dS)Nr„rÁrr£csi|]}|ˆ|ˆ“qSrrrW©r;rÄrrr]ísz?TestFrameFlexArithmetic.test_floordiv_axis0.<locals>.<dictcomp>)    rr†r    rÚfloordivrCr9r:r™)rr©rdreÚresult2rrÈrÚtest_floordiv_axis0ås
 z+TestFrameFlexArithmetic.test_floordiv_axis0znumexpr not installed)Úreasonr³rÉÚpowcs¢tt|ƒ‰t td¡ tddd¡d}t|ƒ‰dˆd<ˆd‰tˆ|ƒˆdd}t‡‡‡fdd    „ˆjDƒƒ}t     ||¡tˆ|ƒˆj
dd}t     ||¡dS)
Nédr{éÿÿÿÿr´r‹rr£csi|]}|ˆˆ|ˆƒ“qSrrrW©r;r”rÄrrr]szLTestFrameFlexArithmetic.test_floordiv_axis0_numexpr_path.<locals>.<dictcomp>) rurvrr†r r‡rrCr9r:r™)rr³r©rdrerÊrrÐrÚ test_floordiv_axis0_numexpr_pathôs
" z8TestFrameFlexArithmetic.test_floordiv_axis0_numexpr_pathcCsftjddd}tjddd}t|ƒ}t||dœƒ}|j|dd}t||||dœƒ}t ||¡dS)Nú
2016-01-01rNrRÚ1©rr{rr£)rnroZtimedelta_ranger    rÚaddr9r:)rÚdtiZtdiZtserr;rdrerrrÚtest_df_add_td64_columnwisesz3TestFrameFlexArithmetic.test_df_add_td64_columnwisecCsŠtjddd}tdddgdd}t||d    œƒ}t||d    œƒ}tjd
d  ¡}|j||d }ttd ddgdd|dd    œƒ}t ||¡dS)NrÒr„rRz1 Dayrqz2 Daysútimedelta64[ns]r!rÁr{)Údays©Ú
fill_valuez
2016-01-02z
2016-01-03z
2016-01-05zdatetime64[ns]r|)    rnror    rÚ    TimedeltaZto_timedelta64rÕr9r:)rrÖrÄr;rÚfillrdrerrrÚ$test_df_add_flex_filled_mixed_dtypessÿüÿz<TestFrameFlexArithmetic.test_df_add_flex_filled_mixed_dtypescs||‰‡fdd„}t|ˆƒd|ƒ}||d|ƒ}t ||¡t|ˆƒd|ƒ}||d|ƒ}t ||¡t|ddiddS)Ncs2ˆ d¡r"ttˆ dd¡ƒ||ƒSttˆƒ||ƒS)NZ__rÚ__)Ú
startswithrurvÚreplacerZ©r”rrrž+s
z8TestFrameFlexArithmetic.test_arith_flex_frame.<locals>.fr|r‹r!)rur9r:r )rÚall_arithmetic_operatorsÚ float_frameÚmixed_float_frameržrdrerrârÚtest_arith_flex_frame%s   z-TestFrameFlexArithmetic.test_arith_flex_framer”Ú__add__Ú__sub__Ú__mul__c
Csött|ƒ}t||ƒd|ƒ}||d|ƒ}d}    |dkrBdddœ}    n|dkrRddi}    tjrr|dkrrd|dj|    d<t ||¡t||    d    t||ƒd|ƒ}||d|ƒ}t ||¡t|ddid    t||ƒd|ƒ}||d|ƒ}t ||¡dS)
Nr|)rèZuint64)rŠr‹)rçrér‹rr4r!)    rurvrÚ USE_NUMEXPRrr9r:rr )
rr”Z    int_frameÚmixed_int_framerårržrdrerrrrÚtest_arith_flex_frame_mixed;s&    
    z3TestFrameFlexArithmetic.test_arith_flex_frame_mixedÚdimr„r?c    CsB|}t d|¡}d}tjt|dt||ƒ|ƒW5QRXdS)N)r{r–rD)rr—rIrJrKru)rrãrärír”r©rLrrrÚtest_arith_flex_frame_raiseds
z3TestFrameFlexArithmetic.test_arith_flex_frame_raisec    CsÄ| d¡}t ||d¡| |dd…¡}t ||tj¡|dd… |¡}t ||tj¡tjtdd|j|jdddW5QRXtjtdd|j|jddddW5QRXdS)    Nr{rrÛrDr„rÚr_©r.rÛ)    rÕr9r:rr›rIrJÚNotImplementedErrorr°)rräZ    const_addrdrrrÚtest_arith_flex_frame_corneros
z4TestFrameFlexArithmetic.test_arith_flex_frame_cornerrÕÚsubÚmulÚmodcCsb|}| d¡}|d}t||ƒ}tt|ƒ}t ||ƒ|||ƒ¡t ||dd||j|ƒj¡dS)NrUÚtworr£)Úxsrurvr9r:r¤)rÚ simple_framer”r;ÚrowrYržrrrÚtest_arith_flex_series_ops€s
 
 
z2TestFrameFlexArithmetic.test_arith_flex_series_opscCsh|}| d¡}|d}t |j|dd||¡t | |¡||¡t |j|dd|j|j¡dS)NrUrõr£r)rör9r:rÕÚdivr¤)rr÷r;rørYrrrÚtest_arith_flex_seriesŒs 
z.TestFrameFlexArithmetic.test_arith_flex_seriesrÚint64Úfloat64cCsXtt d¡ d¡|d}ttjtjgddgddggƒ}|j|ddd    }t ||¡dS)
Nr?rƒr!r´çø?gô?rr_r£)    rrr†r‡r›Úinfrúr9r:)rrr;rerdrrrÚ#test_arith_flex_series_broadcasting˜sz;TestFrameFlexArithmetic.test_arith_flex_series_broadcastingc    Cstgtd}tddgd}tddgddggddgd}tjtd    d
|j|d d W5QRXtjtd    d
|j|dddd W5QRXdS)Nr!r4rŠrBr{r|r„r@rÛrDÚErÚrï)r    ÚobjectrrIrJrðrÕrò)rZser_len0Zdf_len0r;rrrÚtest_arith_flex_zero_len_raises s z7TestFrameFlexArithmetic.test_arith_flex_zero_len_raisescCs^tjddtjdddgdd}td|itd    ƒd
}| d¡ d ¡}|jd dd }t ||¡dS) Nrr{r„r@r•Úfloatr!r5r?rÂr|rÚ)    rr"r›rrŒÚfillnarÕr9r:)rZdatr;r<r=rrrÚtest_flex_add_scalar_fill_value­s
z7TestFrameFlexArithmetic.test_flex_add_scalar_fill_valuecCsrtdddddgdddddgd}tdddgdddgd}tdddddgdddddgd}| |¡}t ||¡dS)Nr{r|r„r@r•rÂr)rròr9r:)rr®rªrerdrrrÚ'test_sub_alignment_with_duplicate_index¶s
  
z?TestFrameFlexArithmetic.test_sub_alignment_with_duplicate_indexÚ __truediv__cCsjtt d¡tj d¡dœƒ}t||ƒ|ƒ}ddg|_ddg|_t||ƒ|ƒ}t ||¡t    |ƒ|j
dS)NrNrÁr4) rrr†rFrsrurCr9r:r'rº)rr”r;rerdrrrÚ&test_arithmetic_with_duplicate_columns¾s
 
 z>TestFrameFlexArithmetic.test_arithmetic_with_duplicate_columnsÚlevelrNcCsžtdddgdddgdœƒ}|j d¡|_tdddgdddgdœƒ}|j ddg¡|_|j||d    }tdddgdddgdœƒ}|j ddg¡|_t ||¡dS)
Nrr{r|r„rÁZL1))r4r‹)r4ÚDZL2)r
)rrCZ    set_namesrÕr9r:)rr
r®rªrdrerrrÚtest_broadcast_multiindexÊsz1TestFrameFlexArithmetic.test_broadcast_multiindexcCs¾tdddgdddgdœtjdgdgd    ddggd
d d gd d}tdgtjdgdggd d
gd d}tdddgdddgdœtjdgdgd    ddggd
d d gd d}|j|d    d}t ||¡dS)Nr{r|r„r@r•©iÚiärUrVrÚscenrôÚid©ÚnamesrÂ皙™™™™Ù?çffffffö?ç333333@ç333333 @皙™™™™@gš™™™™™@r£©rrÚ from_productr    rÕr9r:©rr;ÚseriesrerdrrrÚ test_frame_multiindex_operationsÙs(ÿþþÿþz8TestFrameFlexArithmetic.test_frame_multiindex_operationscCsºtdgdgdœtjdgdggddgdd    }td
d d gtjdgdgd ddggdddgdd    }tdddgdddgdœtjdgdgd ddggdddgdd    }|j|d d}t ||¡dS)Nr{r„r rUrVrrôrrÂç$@g4@g>@rr|rg&@ég?@g*@g7@g€@@r£rrrrrÚ<test_frame_multiindex_operations_series_index_to_frame_indexñs( þÿþÿþzTTestFrameFlexArithmetic.test_frame_multiindex_operations_series_index_to_frame_indexc    Cs¶tdddgdddgdœtjdgdgd    ddggd
d d gd d}tdgtjdgdggd d
gd d}ttjtjdœtjdddddtjfgd
d d gd d}|j|d    d}t     ||¡dS)Nr{r|r„r@r•r rUrVrrrôrrrÂrr}©rUrVr©rUrVr{)rUrVr|r£)
rrrr    rr›Ú from_tuplesrÕr9r:rrrrÚ)test_frame_multiindex_operations_no_align    s0ÿþþ 
üùþ zATestFrameFlexArithmetic.test_frame_multiindex_operations_no_aligncCs®tdddgdddgdœtjddd    gd
d d gd d}tdgtjdgdggd d
gd d}tddtjgddtjgdœtjddd    gd
d d gd d}|j|dd}t     ||¡dS)Nr{r|r„r@r•r rr )rUr}r|rrôrrrÂrrVrUrrrrrr£)
rrr!r    rrr›rÕr9r:rrrrÚ+test_frame_multiindex_operations_part_align&s4ýúþ þýúþ zCTestFrameFlexArithmetic.test_frame_multiindex_operations_part_align)r0r1r2rËrIr‘Zskipifr r’rÑr×rÞrærìrŒrîrñrùrûrrrrr    r rrr"r#rrrrrÇäs8  
(
 
 
 
     
 
rÇc@s.eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    e
j   dddg¡dd„ƒZ e
j   dddgde ddg¡eddƒeddgƒg¡dd„ƒZdd„Zdd„Zdd „Ze
j   d!d"d#d$d%d&d'e d(d)¡d*fe d(d)¡d+fg¡e
j j d,ejejejejejejgd-d.„d/d0d1„ƒƒZd2d3„Z d4d5„Z!d6S)7ÚTestFrameArithmeticcCsJtddgdd}tddgddggƒ}||}t||dœƒ}t ||¡dS)    NrqrØr!r{r|r„r@rÔ©r    rr9r:)rrÄr;rdrerrrÚtest_td64_op_nat_castingIs
z,TestFrameArithmetic.test_td64_op_nat_castingcCs¨t d¡ dd¡}t|ddgdddgd    }|d
gdd…f}|jd
|jd
fksTt‚tdd gd dgdd gg|j|j|jd }||}t     
||¡||}t     
||¡dS)Nr?r„r|TFr4rŠr‹©rCr_r{r@r‰©rCr_r© rr†r‡rr˜rrCr_rr9r:)rr©r;ÚrowlikererdrrrÚ'test_df_add_2d_array_rowlike_broadcastsSsú z;TestFrameArithmetic.test_df_add_2d_array_rowlike_broadcastscCs¨t d¡ dd¡}t|ddgdddgd    }|dd…d
gf}|j|jd d
fksTt‚td
dgd dgd dgg|j|j|jd}||}t     
||¡||}t     
||¡dS)Nr?r„r|TFr4rŠr‹r'r{rr•é    rNr(r))rr©r;ÚcollikererdrrrÚ'test_df_add_2d_array_collike_broadcastshsú z;TestFrameArithmetic.test_df_add_2d_array_collike_broadcastsc Csä|}|r|dkrt |¡t d¡ dd¡}t|ddgddd    gd
}|d gdd…f}|jd |jd fksnt‚t|j    d|ƒ| 
¡ƒt|j    d|ƒ| 
¡ƒt|j    d    |ƒ| 
¡ƒg}t||j |j d
}    t||ƒ|ƒ}
t  |
|    ¡dS) N©Ú__rmod__Ú __rfloordiv__r?r„r|TFr4rŠr‹r'r{)ÚtdÚ&mark_array_manager_not_yet_implementedrr†r‡rr˜rrurrÚsqueezerCr_r9r:) rrrãÚusing_array_managerr³r©r;r*ÚexvalsrerdrrrÚ)test_df_arith_2d_array_rowlike_broadcasts}s 
ýz=TestFrameArithmetic.test_df_arith_2d_array_rowlike_broadcastsc Csò|}|r|dkrt |¡t d¡ dd¡}t|ddgddd    gd
}|dd…d gf}|j|jd d fksnt‚t|d|ƒ|     ¡ƒt|d|ƒ|     ¡ƒd œ}d}    |dkrÀtj
dd„|  ¡DƒŽ}    t||j |j |    d}
t||ƒ|ƒ} t | |
¡dS)Nr/r?r„r|TFr4rŠr‹r'r{r)TFcss|] }|jVqdSr)r™©rXr[rrrÚ    <genexpr>±szPTestFrameArithmetic.test_df_arith_2d_array_collike_broadcasts.<locals>.<genexpr>r()r2r3rr†r‡rr˜rrur4Z common_typer™rCr_r9r:) rrrãr5r³r©r;r-r6rrerdrrrÚ)test_df_arith_2d_array_collike_broadcasts˜s  
þz=TestFrameArithmetic.test_df_arith_2d_array_collike_broadcastscCshtddgddggƒ}|d}|j dd„¡}|dk ¡s<t‚d|}|j dd„¡}|dk ¡sdt‚dS)NFTr{cSs|jSr©Úkind©r[rrrÚ<lambda>Àóz:TestFrameArithmetic.test_df_bool_mul_int.<locals>.<lambda>ÚicSs|jSrr;r=rrrr>Är?)rrºÚapplyr€r)rr;rdÚkindsrrrÚtest_df_bool_mul_int¸sz(TestFrameArithmetic.test_df_bool_mul_intcCsLtdddgdddgdœƒ}||}tdd    d
gdd d gdœƒ}t ||¡dS) NrUrVr}r{r|r„rÁZaaZbbÚccr@r?©rr9r:)rrxrdrerrrÚtest_arith_mixedÇsz$TestFrameArithmetic.test_arith_mixedrYr4rŠcCsBtddgddgdœƒ}||dƒ|}|||dƒ}t ||¡dS)Ngš™™™™™ñ?gffffff
@g@g333333ÀrÁr{)rr9r¼)rZall_arithmetic_functionsrYr;rdrerrrÚtest_arith_getitem_commuteÎsz.TestFrameArithmetic.test_arith_getitem_commuter™r{r|©r{r|r„cCsDtddgddgdœƒ}tddgddgdœƒ}||}t ||¡dS)Nr{rÁr|r„rE)rr™r;rerdrrrÚ&test_arith_alignment_non_pandas_objectÕsz:TestFrameArithmetic.test_arith_alignment_non_pandas_objectcCs6ttjdddd dd¡dddgd    d
d gd }| d    ¡j}t|j||j|jd }t     |||¡t|jj
|j
|j|jd }t     |j |dd|¡t |dƒ}t|j||j|jd }t     |||¡t|jj
|j
|j|jd }t     |j |dd|¡tj j|jŽ}t|j||j|jd }t     |  |¡|¡dS)Nr{rNÚf8r!r„ÚonerõÚthreerUrVr}r'r^rr£r_)rrr†r‡rör™r_rCr9r:r¤rÕrHrFrsr˜)rr;Zval1ÚaddedZval2Zval3rrrÚtest_arith_non_pandas_objectßs$ý  z0TestFrameArithmetic.test_arith_non_pandas_objectcsn|‰t tjddd¡}ddg}t|g|d}d‰t|ˆƒˆƒ}t‡‡fdd    „|Dƒg|d}t ||¡dS)
Nçrµ)ÚstartÚendr{r|rBrNcsg|]}t|ˆƒˆƒ‘qSr)ru)rXÚn©Únumr”rrÚ
<listcomp>szVTestFrameArithmetic.test_operations_with_interval_categories_index.<locals>.<listcomp>)rnZCategoricalIndexZinterval_rangerrur9r:)rrãÚindrœr;rdrerrSrÚ.test_operations_with_interval_categories_indexùszBTestFrameArithmetic.test_operations_with_interval_categories_indexcCs†tt d¡t d¡gt d¡t d¡gdœddgd}|dg}||}tt d    ¡t d    ¡gtjtjgdœddgd}t ||¡dS)
NZ2019Z2020Z2018Z2021)r5r6r5r6rBr)rrnrwrÜrr›r9r:)rr;rªrdrerrrÚtest_frame_with_frame_reindexsþû
 þz1TestFrameArithmetic.test_frame_with_frame_reindexz value, dtype)r{Úi8)r´rJ)ìrJ)yð?Ú
complex128)rZr[)Tr-éÚnsú<m8[ns]ú<M8[ns]r”cCs|jSr)r0r=rrrr>.r?zTestFrameArithmetic.<lambda>)rc
Cs(tjdftjdftjdftjdfh}t||ƒ}td|j|jgi|jd}tjdftj    dftjdftjdftjdftjdftjdftj
dftj    dfh    }    ||f|    kr\d}
|dkr¸|tjksÊ|dkrÐ|tjkrÐd} nN|dkrÞd} n@|tj
krd} |dkrt j r|d    krt }
nd
|j›d } tjt| d (t |
¡|||jƒW5QRXW5QRXnÈ||f|krè|tjtjfkr¼t j r”|d    kr”t }
nd}
t |
¡|||jƒW5QRXn*d } tjt| d |||jƒW5QRXn<t d¡ |||jƒj} |||ƒj} W5QRXt | | ¡dS)Nr-r4r!r_r^r[z3ufunc 'remainder' not supported for the input typesz-numpy boolean subtract, the `-` operator, is rzcannot perform __z7__ with this index type: (DatetimeArray|TimedeltaArray)rDz+operator '.*' not implemented for .* dtypes)rvÚtruedivrÍrÕrórrrrrôròrrêÚ UserWarningr0rIrJrbr9Úassert_produces_warningrðrºr¼)rr”rrrrÚskipÚelemr;ÚinvalidÚwarnrLrdrerrrÚtest_binop_othersnü
÷ ÿÿ ÿþý ÿ "  z$TestFrameArithmetic.test_binop_othercCs t tddgƒtddgƒg¡}t tddgddtddgƒg¡}tddgddgg|d}tddgddgg|d}||}tddgddgg|d}t ||¡dS)    Nr{r|r„r@ÚInt8r!rBr©rZ from_arraysr    rr9r:©rÚmidxZmidx2rxryrdrerrrÚ*test_arithmetic_midx_cols_different_dtypesvs"z>TestFrameArithmetic.test_arithmetic_midx_cols_different_dtypescCs t tddgƒtddgƒg¡}t tddgddtddgƒg¡}tddgddgg|d}tddgddgg|d}||}tddgddgg|d}t ||¡dS)    Nr{r|r„r@rhr!rBrÏrirjrrrÚ:test_arithmetic_midx_cols_different_dtypes_different_order€s"zNTestFrameArithmetic.test_arithmetic_midx_cols_different_dtypes_different_orderN)"r0r1r2r&r+r.r7r:rCrFrIr‘r’rGrr"rŒrrIrNrWrXZ timedelta64Z
datetime64rvrÕròrór`rôrÍrgrlrmrrrrr$HsV
 
(ÿ
 øþ úö F
r$c    Cs´ttj d¡ dd¡ddgd}ttjd}||}t|jtj|j    d}t
  ||¡t j tdd    ||kW5QRXt|j d
¡|j    d}t j tdd    ||kW5QRXdS) Nr?r„r|r4rŠrBr!z not alignedrDzM8[ns])rrrFrGr‡r    rýr™r›rCr9r:rIrJrKr,)r;rÄrdrerªrrrÚ,test_frame_with_zero_len_series_corner_cases‹s   rncCsBtddgtjd}tddgddgd}||}|}t ||¡dS)Nr4rŠ©rCrr{r|rÂ)rrrýr    r9r:)r;rÄrdrerrrÚ,test_zero_len_frame_with_series_corner_cases s
rpcCsFdtddtjgƒi}t|ƒ}|jdd}tdddgƒ}t ||¡dS)NZOner4g333333ó?r{r£r)r    rr›rÚsumr9r¼)rœr;rdrerrrÚ+test_frame_single_columns_object_sum_axis_1ªsÿ rrc@sÈeZdZdd„Zdd„Zej dej    ej
ej ej g¡dd„ƒZ ej dd    d
g¡ej d ¡d d „ƒƒZej ddddddg¡dd„ƒZdd„Zdd„Zdd„Zdd„Zdd„Zdd „Zej d!ejejejejejejg¡d"d#„ƒZd$d%„Zd&d'„Zd(d)„Z d*d+„Z!d,d-„Z"ej ddd.dd/d0dd1d2ddd3g ¡d4d5„ƒZ#ej d6d7d8d9gd:e$j%d7d8d9ge$j&d;e'd7d<ƒg¡d=d>„ƒZ(ej d6d7d8gd?e$ %d7d8g¡e'd7d9ƒg¡d@dA„ƒZ)dBdC„Z*dDdE„Z+dFdG„Z,dHdI„Z-dJS)KÚTestFrameArithmeticUnsortedcCsptjddddd}ttj t|ƒ¡|dgd}| d¡}||}|jj    t
j ksRt ‚||}|jj    t
j kslt ‚dS)    Nz1/1/2011rNÚHú
US/Eastern)rSÚfreqÚtzrUr^z Europe/Moscow) rnrorrrFrGrtÚ
tz_convertr_rwrÚutcr)rÚrngr;Z    df_moscowrdrrrÚ*test_frame_add_tz_mismatch_converts_to_utc¼s
zFTestFrameArithmeticUnsorted.test_frame_add_tz_mismatch_converts_to_utccCsštjdddd}ttj t|ƒd¡|d}||ddd…}||}tj|jddd…<t     
||¡|ddd…}||  tj  t|ƒ¡¡}t     
||¡dS)    Nz1/1/2000z1/1/2010r4)rvr„rÂr|r{) rnZ period_rangerrrFrGrtr›r°r9r:ZtakeZ permutation)rrzÚtsrdreZhalfrrrÚtest_align_frameÇs z,TestFrameArithmeticUnsorted.test_align_framer”cCsÖtddddgddddgdœtd}| tj¡}||dƒ}||dƒ t¡}d|t |¡<t     ||¡|||ƒ}|||ƒ t¡}d|t |¡<t     ||¡||| d    ¡ƒ}t     ||¡|| d    ¡|ƒ}tj    ||d
d dS) Nr|ç@é{r{r„r@)Úcol1Zcol2r!r¨F)Z check_dtype)
rrrrr›r*ÚcomZisnar9r:)rr”r;ZfilledrdrerrrÚtest_operators_none_as_naÔs"ÿ 
 
  z5TestFrameArithmeticUnsorted.test_operators_none_as_nazop,res)rF)Ú__ne__Tz ignore:elementwise:FutureWarningcCs*t||ƒdƒ}t| ¡ ¡ƒ|ks&t‚dS)Nr5)rur-r€r)rr”r=rärdrrrÚ%test_logical_typeerror_with_non_validïszATestFrameArithmeticUnsorted.test_logical_typeerror_with_non_validrÕròrórúr`cs(tjtdƒdddgdddggdd    d
gd }tt d ¡ d d¡|dddgd ¡‰tj    ‰t
t |dƒ‰ˆdkrndSt dddgdddgƒ}t
ˆ|ƒ|d
dd}t  ‡‡‡fdd„| ¡Dƒ¡ ¡}t ||¡t ddgddgƒ}t
ˆ|ƒ|d    dd}t  ‡‡‡fdd„| ¡Dƒ¡ ˆ¡ ¡}t ||¡dS)NÚabcrKrõrLr{r|r„ÚfirstÚsecondÚthirdréQéZvalue1Zvalue2Zvalue3r^r´rgY@r)r
r.cs:g|]2\}}ˆˆjˆdd…dd…|fdd…f|ƒ‘qSr©rr©rXr@Úv©r;ÚidxZoparrrUszETestFrameArithmeticUnsorted.test_binary_ops_align.<locals>.<listcomp>cs4g|],\}}ˆˆjˆdd…|fdd…f|ƒ‘qSrr‹rŒrŽrrrUs)rrrHrrr†r‡Z
sort_indexrnZ
IndexSlicerurvr    ÚconcatÚitemsr9r:Z reindex_like)rr”r_r[rdrerrŽrÚtest_binary_ops_align÷s4þý
 ÿ  ÿÿz1TestFrameArithmeticUnsorted.test_binary_ops_aligncCs2t ddgddgg¡}ttjddd|d}td    d
d œƒ}| ¡}d d g|j_| ¡}d |j    _
|j |d    d    d}|j |d    d    d}|j |d    d    d}|j |d    d    d}    |j |d    d d}
|j |d    d d} ttj d    d
d    d
gd    d
d    d
ggdd|d} ||fD]} t  | | ¡qðd d g| j_||    |
| fD]} t  | | ¡qdS)Nr4rŠrUrV)r|r@rür!rBr{r|rTZlvl0Zlvl1)r.r
)rrrrr—r    r)rCrr_r¹rór"r9r:)rrkr;ÚsrªÚs2Zres1rÅZres3Zres4Zres5Zres6r<r=rrrÚ&test_binary_ops_align_series_dataframes,  ÿ  zBTestFrameArithmeticUnsorted.test_binary_ops_align_series_dataframecCsŽtjdddgdd}| d¡dd…}| d¡d    d…}td
d    dgi|d }td
d    d    gi|d }td
tjd tjgi|d }t |||¡dS) Nz
2011-01-01z
2011-01-02z
2011-01-03ÚUTC)rwz
Asia/Tokyor|rur{r4rÂr„)rnZ DatetimeIndexrxrrr›r9r:)rÚbaseZidx1Zidx2r®rªr<rrrÚ test_add_with_dti_mismatched_tzs=sz<TestFrameArithmeticUnsorted.test_add_with_dti_mismatched_tzscCs| |jddd…¡}|d=tj|jd|jd…df<||}|d ¡j}|dd ¡}t |d ¡|j|¡tj|j|j     |¡<t |d|j|dj¡t 
|d |j¡dd…¡  ¡sÎt ‚t 
|d¡  ¡sät ‚||}t  |j|j¡||}    t 
|d¡  ¡st ‚t 
|    d¡  ¡s4t ‚|tƒ}
t 
|
j¡  ¡sTt ‚tƒ|} t 
| j¡  ¡stt ‚tƒtƒ} | jsŒt ‚|j|jddd…d} t | ||d¡||}t|d    d
||}t|d    d
||}t|ddid
||}t|d    d
dS) Nr|r r@r‹r4r•rÏrBrýr!)ršr_rr›rrZdropnar)r9r¼ÚisinÚisnanr€rÚassert_index_equalrr™r¿rCr:r )rrärårëZ
frame_copyrMZindexerr<Z
self_addedZ    added_revZ
plus_emptyZ
empty_plusZ empty_emptyÚreverserrrÚtest_combineFrameGs@&
 
    z-TestFrameArithmeticUnsorted.test_combineFramec
Cs\| |jd¡}||}| ¡D] \}}t |||||¡q | ¡}d|d<t|ƒ}||}    | ¡D] \}}t |    ||||¡qjd|    ks˜t‚t     |    d¡ 
¡s®t‚||}t 
|j |j k¡sÌt‚||  d¡}t|ddid||  d¡}t|ddid|d|  d    ¡}t|d    d
d    d    d œd|d|  d ¡}t|d d
d d    d œddS) Nrr{rÚfloat32r‹r!Úfloat16rÎrürý)r4rŠr‹r Úint32)rör_r‘r9r¼Úto_dictr    rrršr€rºrr*r r)
rrärårërrMÚkeyr“Z larger_seriesZ larger_addedrrrÚtest_combine_series„s8  ÿ ÿz/TestFrameArithmeticUnsorted.test_combine_seriesc Csx|d}|j|dd}| ¡D]`\}}||}tj|||dd||j|ksTt‚|j|jkrp|jdks~t‚q|jdkst‚q|dd…}|j|dd}t |j|j¡|dd…}    |j|    dd}
t ||
¡|j|dd…dd}t    t
j |j|j d} t || ¡|dd…j|dd}t    t
j |j|j d} t || ¡|dd    …j gd
} | j|dd}t|ƒt|ƒkstt‚dS) Nr4r_r£F)Z check_nameséûÿÿÿrr^r{rB)rÕr‘r9r¼r¹rr›r_r:rrr›rCršrórt) rZdatetime_framer|rMr¢rYrdZ smaller_frameZ smaller_addedZ
smaller_tsZsmaller_added2reÚframerrrÚtest_combine_timeseries¬s@    ÿ ÿ z3TestFrameArithmeticUnsorted.test_combine_timeseriescCs’|d}t |j|jd¡|d}| ¡D] \}}t |j||jd¡q,t|ddidtƒd}|j tƒj¡s|t‚t    |j
ƒdksŽt‚dS)Nr|r‹r!r) r9Úassert_numpy_array_equalr™r‘r rr_ÚequalsrrtrC)rrärårdr}r“rrrÚtest_combineFuncÚs
z,TestFrameArithmeticUnsorted.test_combineFuncÚfuncc     Csðt ¡}t ¡}| d¡}t |jd¡}|||ƒ}t |j||j|jƒ¡d}    tj    t
t   |    ¡d|||ƒW5QRX|||ƒ}
t |
j||j|jƒ¡||dƒ} t | j||jdƒ¡d}    tj    t
|    d|||dd…ƒW5QRXdS)NrU)r{r{r{zNUnable to coerce to Series/DataFrame, dimension must be <= 2: (30, 4, 1, 1, 1)rDrzQCan only compare identically-labeled \(both index and columns\) DataFrame objectsr|) r9ZmakeTimeDataFramerörr—r˜r§r™rIrJrKÚreÚescape) rr÷rärªr®rªrørrdrLrÊÚresult3rrrÚtest_comparisonsès*
 
ÿ
 ÿ
ÿz,TestFrameArithmeticUnsorted.test_comparisonsc    CsHtdd„dDƒƒ}tt|ƒ}d}tjt|d||dƒW5QRXdS)NcSsi|]}|ddddœ“qS)r5r6r7)r[r\Úzrr8rrrr]szZTestFrameArithmeticUnsorted.test_strings_to_numbers_comparisons_raises.<locals>.<dictcomp>)rUrVr}z;'[<>]=?' not supported between instances of 'str' and 'int'rDr)rrurvrIrJrb)rZcompare_operators_no_eq_ner;ržrLrrrÚ*test_strings_to_numbers_comparisons_raises s ÿ
zFTestFrameArithmeticUnsorted.test_strings_to_numbers_comparisons_raisesc    Csrt ¡}tj|j|jddf<tjdd|jdk}W5QRXtjdd|dkj}W5QRXt ||¡dS)Nrr4Úignore)reÚraise)    r9Z makeDataFramerr›rrr_Zerrstater™r§)rZ
missing_dfrerdrrrÚ'test_comparison_protected_from_errstateszCTestFrameArithmeticUnsorted.test_comparison_protected_from_errstatec     Csžtt d¡ d¡ƒ}t ddg¡}t ddg¡}|j}dddg}t|ƒ}tddgddgddggƒ}||k}t     ||¡|j
|k}t  ||j
¡d}    d}
d} t j t|    d    ||kW5QRXt j t|    d    ||kW5QRX||k}t     ||¡|j
|k}t  ||j
¡t j t|
d    ||kW5QRXt j t| d    |j
|kW5QRXtddgddgddggƒ}||k}t     ||¡t j t|    d    ||kW5QRXt j t|    d    ||kW5QRX||k}t     ||¡|j
|k}t  ||j
¡t j t|
d    ||kW5QRX|j
j|jks$t‚tt d¡ d¡td
ƒtd ƒd }|j|_|j|_t j t|    d    ||kW5QRXt j t|    d    ||kW5QRXdS) Nr?rƒr|FTz5Unable to coerce to Series, length must be 2: given 3ú,Unable to coerce to DataFrame, shape must bez4operands could not be broadcast together with shapesrDZABr…r')rrr†r‡r"Z
atleast_2dr¤Útupler9r:r™r§rIrJrKr˜rrHr_rC) rr;rVZb_rZb_cÚlstÚtuprerdZmsg1dZmsg2dZmsg2dbrrrÚtest_boolean_comparison sf
 
 
 
ÿz3TestFrameArithmeticUnsorted.test_boolean_comparisonc Csžtdƒ}tt dt|ƒ¡ dt|ƒ¡|tdƒd}d|jdd…dd…f ¡}tdƒ}tdƒ}| ¡}|||j    |d    }|||7<|j    |d    }| ¡}||||j    |d    }    ||||7<|j    |d    }
t
  ||¡t
  ||    ¡t
  ||
¡| ¡}|||j    |d    }|||8<|j    |d    }| ¡}||||j    |d    }    ||||8<|j    |d    }
t
  ||¡t
  ||    ¡t
  ||
¡dS)
NZabcdefgrNrÏr'rÎr{ZbedcfZbcdefrB) rHrrr†rtr‡rŒr°r)ršr9r:) rrCZX_origÚZZblock1ÚsubsÚXZresult1rÊr­Zresult4rrrÚtest_inplace_ops_alignmentns>ý         z6TestFrameArithmeticUnsorted.test_inplace_ops_alignmentc    Cs$tdddgƒ}ttjjdddd dd¡ƒ}| ¡}|}|d7}t ||¡t |d|¡||ksht    ‚|j
|j
ksxt    ‚| ¡}|}|d7}t  ||¡t  |d|¡||ks´t    ‚|j
|j
ksÄt    ‚| ¡}|}|d    7}t ||¡t |d    |¡| ¡}|}|d    7}t  ||¡t  |d    |¡||ks2t    ‚|j
|j
ksDt    ‚tjjdddd}t| ¡d
d œƒ}| ¡}|}|d d7<t| ¡dd
d œƒ}t  ||¡t  ||¡|j
|j
ksÄt    ‚| ¡}|}|d d    7<t| ¡d    d
d œƒ}t  ||¡t  ||¡|j
|j
ks t    ‚dS) Nr{r|r„rr•rNrOrÏrþr5rÁr4) r    rrrFrpr‡r)r9r¼rZ_mgrr:)    rZs_origÚdf_origr“r”r;rªr©rerrrÚtest_inplace_ops_identityžsX          z5TestFrameArithmeticUnsorted.test_inplace_ops_identityÚandrÉrôÚorrÍÚxorcCs¤|dkr dStdddgdddgdœƒ}d}|d    kr@d
d d
g|d <| ¡}d |›d}d|›d}t||ƒ|ƒt||ƒ|ƒ}t ||¡t|ƒ}t|ƒ|ks t‚dS)Nrúr´rµr¶r{r|r„rT)r¿rÀrÁTFrUZ__irß)rr)rur9r:rr)rr”r;ZoperandZdf_copyZioprerrrÚtest_inplace_ops_identity2×s   z6TestFrameArithmeticUnsorted.test_inplace_ops_identity2Úvalr{r|r„)r{r|r„r!r@cCs¨dddg}dddg}ttj dd¡||d}tjjj}t|||d    œ|jd
}t     
|||d ƒd |¡td d d gd d d gdddgd    œ|jd
}t     
|||dƒd |¡dS)Nr4rŠr‹r»ÚYr¹r„r^)r»rÄr¹rÂr_r{r|rC) rrrFrGrnÚcoreÚopsÚalign_method_FRAMEr_r9r:)rrÃr_rCr;ÚalignrerrrÚtest_alignment_non_pandasýs
 
 
 
ÿz5TestFrameArithmeticUnsorted.test_alignment_non_pandasrHc    CsŠdddg}dddg}ttj dd¡||d}tjjj}d    }tj    t
|d
|||d ƒW5QRXtj    t
|d
|||d ƒW5QRXdS) Nr4rŠr‹r»rÄr¹r„r^z5Unable to coerce to Series, length must be 3: given 2rDr_rC) rrrFrGrnrÅrÆrÇrIrJrK)rrÃr_rCr;rÈrLrrrÚ)test_alignment_non_pandas_length_mismatchs
 
 
zETestFrameArithmeticUnsorted.test_alignment_non_pandas_length_mismatchc    Csrdddg}dddg}ttj dd¡||d}tjjj}t d    d
dgd d d gdddgg¡}t     
|||dƒd    t||j |j d¡t     
|||dƒd    t||j |j d¡d}t d    d
dgd d d gg¡}t jt|d|||dƒW5QRXt jt|d|||dƒW5QRXt d¡}t d¡}t jt|d|||dƒW5QRXt jt|d|||dƒW5QRXdS)Nr4rŠr‹r»rÄr¹r„r^r{r|r@r•r?r¨r‰r,r_rCr´rD)r„r„r„zGUnable to coerce to Series/DataFrame, dimension must be <= 2: (3, 3, 3))rrrFrGrnrÅrÆrÇr"r9r:r_rCrIrJrKÚzerosr«r¬)rr_rCr;rÈrÃrLrrrÚ'test_alignment_non_pandas_index_columns$s6
 
 
"þþ
ÿzCTestFrameArithmeticUnsorted.test_alignment_non_pandas_index_columnsc    CsFtddgddgdœƒ}|d}t d¡t||ƒ|ƒW5QRXdS)NrOrÁrŠ)rr9rbru©rrãr;rVrrrÚtest_no_warningFs z+TestFrameArithmeticUnsorted.test_no_warningc    CsLtddgddgdœƒ}|d}tjtddt||ƒ|dƒW5QRXdS)NrOrÁrŠztakes 2 positional argumentsrDr)rrIrJrbrurÍrrrÚtest_dunder_methods_binaryLsz6TestFrameArithmeticUnsorted.test_dunder_methods_binarycCsjtjddd dd¡}tjdtd}t|ƒ}| ¡|d<| t¡}||     ¡}||     ¡}t
  ||¡dS)NrÎrýr!rN)rNr{z0.X) rr†r‡r—Úintrr4r*rZmeanr9r:)rr»rÄr®rªrdrerrrÚtest_align_int_fill_bugSs 
  z3TestFrameArithmeticUnsorted.test_align_int_fill_bugN).r0r1r2r{r}rIr‘r’rvrÕròrór`r‚Úfilterwarningsr„r’r•r˜rr£r¦r©rkrlrhrgrirjr®r°r³r¸r¼r¾rÂrr"rürŒrÉrÊrÌrÎrÏrÑrrrrrs»sv  ÿ
 
 
&
=(.þ
      N09õþ
üþ    
(
"rscCsPtddddgiƒ}tdddgd}||}tdtjdtjgiƒ}t ||¡dS)Nr4rr{r|rÂr´©rrr›r9r:)rxryrdrerrrÚtest_pow_with_realignmentbs
rÔcCsttdtjtjtjgiƒ}tddddgiƒ}tddddgiƒ}||}t ||¡|d|d}t ||d¡dS)Nr4rr´)rrr›r9r:r¼)rxryrerdrrrÚtest_pow_nan_with_zeroms rÕcCsžttj ddd¡dddgd}tdd    d
gdddgd }| d ¡| d ¡ d d
¡}t||jdd}| d¡}||}t     
||¡|| d¡}t     
||¡dS)NrrÎ)rNr„rUrVr}rBr{r|r„rÂrürÏZInt64ro) rrrFrpr    Zto_numpyr‡rCr*r9r:)r;rÄreZdf_eardrrrÚ&test_dataframe_series_extension_dtypeszs
 rÖcstj ddd¡}t|ƒ}| ¡ ddddœ¡}tj|jddddgf<| ¡ d    di¡}tj|jdd    gf<| ¡ dddd
œ¡}tj|jdt d d    ¡f<| ¡ dddd œ¡}tj|jdt d d¡f<||f||f||ffD]6\‰‰ˆˆ}t‡‡fdd„ˆj    Dƒƒ}t
  ||¡qÚdS)Nriè)rÎrNr)r{r„r¨r{r„r¨r•)r|r„r@r|)r@r•r?r@csi|]}|ˆ|ˆ|“qSrr)rXr@©rxryrrr]Ÿsz6test_dataframe_blockwise_slicelike.<locals>.<dictcomp>) rrFrprr)r*r›r°r†rCr9r:)r©r®rªr«Zdf4Zdf5r=rerr×rÚ"test_dataframe_blockwise_slicelike‰srØz df, col_dtyper´rµg@r~ÚabrBrýrVrcCsTtdtjgdtjggtdƒd}| d|i¡}|tdgtdƒd}t ||¡dS)    NrOr¶rÙrBrVgð¿rUrÂ)rrr›rHr*r    r9r:)r;Z    col_dtypererdrrrÚ/test_dataframe_operation_with_non_numeric_types£s     rÚcCs`tdggdgd}tdddggdddgd}||}ttjddggdddgd}t ||¡dS)Nrr‡)rœrCr†rBrÓ)r®rªrdrerrrÚ"test_arith_reindex_with_duplicates²s
rÛÚto_addr{c    Csrtddgddgdœƒ}dt|dƒ›d}tjt|d||W5QRXtjt|d||W5QRXdS)Nr{r|rZzUnable to coerce list of rz to Series/DataFramerD)rr+rIrJrK)rÜr;rLrrrÚ"test_arith_list_of_arraylike_raise»s rÝcCs€tddddgiƒ}| ¡}|d}|j}|d7}|rP|j|k    sBt‚t ||¡n,|j|ks^t‚tddddgiƒ}t ||¡dS)Nr4r{r|r„r@)rr)Z_valuesrr9r:)Zusing_copy_on_writer;r½rÚvalsrerrrÚ%test_inplace_arithmetic_series_updateÇsrßcCsŠtdggdgtjdgdggddgdd}tdggdgtdgddd}tdggdgtjdgdggddgdd}||}t ||¡dS)    zP
    Regression test for: https://github.com/pandas-dev/pandas/issues/33765
    r{rUrrVrr^©r¹N)rrrrr9r:)r®rªrerdrrrÚ!test_arithemetic_multiindex_alignÙsýýrácCsFtdtdƒtdƒƒ}|d}tt d¡tdƒtdƒƒ}t ||¡dS)NTrÙZcdr´r…)rrHrr—r9r:)r;rdrerrrÚtest_bool_frame_mult_floatìsrâcCsVtdddg|d}tdddg|d}tdddg|d}| ¡| ¡}t ||¡dS)Nr{r|r!r„r)r    rZto_framer9r:)Zany_int_ea_dtypeZseries1Zseries2rerdrrrÚtest_frame_sub_nullable_intôs
rãcsŽG‡‡fdd„dtƒ‰G‡fdd„dtƒ‰ˆddddgd    d
d gd œƒ}|d}ˆddd    d gd ddgd œƒ}t ||¡||}t ||¡dS)Ncs,eZdZe‡fdd„ƒZe‡fdd„ƒZdS)zEtest_frame_op_subclass_nonclass_constructor.<locals>.SubclassedSeriescsˆSrrr#©ÚSubclassedSeriesrrÚ _constructorszRtest_frame_op_subclass_nonclass_constructor.<locals>.SubclassedSeries._constructorcsˆSrrr#)ÚSubclassedDataFramerrÚ_constructor_expanddimsz\test_frame_op_subclass_nonclass_constructor.<locals>.SubclassedSeries._constructor_expanddimN)r0r1r2Úpropertyrærèr©rçrårrråsråcsDeZdZdgZddœ‡fdd„ Zedd„ƒZe‡fdd    „ƒZ‡ZS)
zHtest_frame_op_subclass_nonclass_constructor.<locals>.SubclassedDataFrameÚ my_extra_dataNrcs||_tƒj||ŽdSr)rëÚsuperr )rrëÚargsÚkwargs©Ú    __class__rrr  szQtest_frame_op_subclass_nonclass_constructor.<locals>.SubclassedDataFrame.__init__cSst t|ƒ|j¡Sr)Ú    functoolsÚpartialr+rër#rrrræszUtest_frame_op_subclass_nonclass_constructor.<locals>.SubclassedDataFrame._constructorcsˆSrrr#rärrÚ_constructor_slicedsz\test_frame_op_subclass_nonclass_constructor.<locals>.SubclassedDataFrame._constructor_sliced)    r0r1r2Ú    _metadatar réræróÚ __classcell__rrärïrrç    s 
rçZ    some_datar{r|r„r@r•r?rÁr‰rNé r%)ZsdfrdrerrêrÚ+test_frame_op_subclass_nonclass_constructorýs     r÷cCsjtddƒ}t|jdddgiƒ}t|jdddgiƒ}||j||jk}tdddg|jd}t ||¡dS)NÚColsz    col1 col2r{r|r„Trà)rrr€r    r9r¼)røZq1Zq2rdrerrrÚtest_enum_column_equality!s 
rù)AÚ collectionsrrrÚenumrrñrvr«ÚnumpyrrIZpandas.util._test_decoratorsÚutilZ_test_decoratorsr2Zpandasrnrrrr    Zpandas._testingZ_testingr9Zpandas.core.commonrÅÚcommonrZpandas.core.computationr
rZ#pandas.core.computation.expressionsr r Zpandas.tests.frame.commonr rZfixturerrr3r“rÇr$rnrprrrsrÔrÕrÖrØr‘r’rHrÚrÛrÝrßrárârãr÷rùrrrrÚ<module>sr    
UHfE
,  þþ
    .
    $