zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
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
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
U
­ý°dºfã@sà
ddlmZddlmZddlZddlZddlmZddlm    Z    m
Z
ddl Z ddl m Z mZmZmZmZmZmZmZmZmZmZddlmZddlmZddlmmZ ddl!m"Z"d    d
„Z#d d „Z$ej% &d ddddg¡dd„ƒZ'dd„Z(dd„Z)dd„Z*ej% &dddg¡dd„ƒZ+dd „Z,d!d"„Z-ej% &d ddddd#d$g¡d%d&„ƒZ.d'd(„Z/d)d*„Z0d+d,„Z1d-d.„Z2d/d0„Z3d1d2„Z4d3d4„Z5d5d6„Z6d7d8„Z7ej% &d9d:d;„d<d;„g¡d=d>„ƒZ8d?d@„Z9dAdB„Z:dCdD„Z;dEdF„Z<dGdH„Z=dIdJ„Z>dKdL„Z?dMdN„Z@dOdP„ZAdQdR„ZBdSdT„ZCdUdV„ZDej% &dWdXdYg¡dZd[„ƒZEej% &dWd\d]d^d_d`dadbg¡ej% &dcddg¡ddde„ƒƒZFdfdg„ZGdhdi„ZHdjdk„ZIdldm„ZJdndo„ZKdpdq„ZLdrds„ZMdtdu„ZNdvdw„ZOdxdy„ZPdzd{„ZQd|d}„ZRd~d„ZSd€d„ZTd‚dƒ„ZUd„d…„ZVd†d‡„ZWdˆd‰„ZXdŠd‹„ZYdŒd„ZZdŽd„Z[dd‘„Z\d’d“„Z]d”d•„Z^d–d—„Z_d˜d™„Z`dšd›„Zadœd„ZbdždŸ„Zcd d¡„Zdd¢d£„Zed¤d¥„Zfd¦d§„Zgd¨d©„Zhdªd«„Zid¬d­„Zjd®d¯„Zkd°d±„Zlej% &d²d³d³d´gg¡dµd¶„ƒZmd·d¸„Znd¹dº„Zod»d¼„Zpd½d¾„Zqd¿dÀ„ZrdÁd„ZsdÃdĄZtdÅdƄZuej% &dÇdÈdÉdÊdÈdÉgdÈdÊgg¡ej% &dËdÌdÍdÌdÍgg¡dÎdτƒƒZvdÐdфZwej% &dÒdÓdÓgg¡ej% &dÔd³gd³d´gg¡ej%j&dÕdgdgdÖgd×ge dgƒedƒgeddØdØdÙdڍe jxdÛdÜdÝdލe jydgdßdàe jydgdádàe jydgdâdàg dãdädådædçdèdédêdßdádâg dëej% &dìdídîdïg¡ej% &d9dðdñdYdXd\d^dòg¡dódô„ƒƒƒƒƒZzdõdö„Z{d÷dø„Z|dùdú„Z}dûdü„Z~dýdþ„Zdÿd„Z€dd„Zdd„Z‚ej% &dddgg¡dd„ƒZƒej% &d    d
d dded ƒed ƒddgifdd ed ƒed ƒedƒedƒedƒedƒgifdd ed ƒed ƒed ƒed ƒedƒedƒgifg¡dd„ƒZ„dd„Z…dd„Z†dd„Z‡ej% &ded×d×gddejˆdddgdg¡d d!„ƒZ‰d"d#„ZАd$d%„Z‹ej% &d&d'd(d)g¡d*d+„ƒZŒd,d-„Zej% &d.ed/d×feddfed0dfed1dfed2dfed3dfed/d×feddfed0dfed1dfed2dfed3dfg ¡d4d5„ƒZސd6d7„Zej% &d8d\d9d
g¡d:d;„ƒZd<d=„Z‘d>d?„Z’ej%j“e d@dAej% &dBd\dCdDgfd]dEdFgfg¡dGdH„ƒƒZ”ej%j“e d@dAdIdJ„ƒZ•dKdL„Z–dMdN„Z—dOdP„Z˜dQdR„Z™ej% &dcddg¡dSdT„ƒZšdUdV„Z›dWdX„ZœdYdZ„Zd[d\„Zžd]d^„ZŸd_d`„Z dadb„Z¡dcdd„Z¢dedf„Z£dgdh„Z¤ej% &d8d\didjd^g¡dkdl„ƒZ¥ej% &dmdndog¡dpdq„ƒZ¦ej% &drdsdtg¡dudv„ƒZ§ej% &dwdxde j¨fg¡dydz„ƒZ©ej% &d{d|d}d~dd€gddddd‚gd~dd€d~gfd|d}d~dd€dƒgddddd‚d‚gd~dd„d~gfg¡d…d†„ƒZªej% &d‡dؐdˆd‰dАd‹g¡dŒd„ƒZ«ej% ¬dŽ¡ej% &dìddd‘d’d“g¡d”d•„ƒƒZ­d–d—„Z®d˜d™„Z¯dS(šé)Údatetime)ÚDecimalN)ÚIS64)ÚPerformanceWarningÚSpecificationError) Ú CategoricalÚ    DataFrameÚGrouperÚIndexÚ
MultiIndexÚ
RangeIndexÚSeriesÚ    TimedeltaÚ    TimestampÚ
date_rangeÚ to_datetime)Ú BooleanArray)Úget_groupby_method_argscCs$ttdddƒ}d}||ks t‚dS)NÚAÚB)ÚkeyÚlevelz<Grouper(key='A', level='B', axis=0, sort=False, dropna=True))Úreprr    ÚAssertionError)ÚresultÚexpected©rúXd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/groupby/test_groupby.pyÚ    test_repr!src    CsÔtjddd}t|ƒ}|ddd…d9<| d¡}|tdƒ|d<|tdd    d
|d <tj|jd <| tt    dƒƒd ¡}| 
¡}t dƒ}t dƒ}t|d||||gt   d¡d}t|||dœƒ}t ||¡dS)Nz1 Dayé'©ÚperiodséérrrÚUTC©ÚtzÚCéÿÿÿÿiÐz2887 days 11:21:02.326710176z2886 days 00:42:34.664668096©Úindex©rrr')ÚpdZtimedelta_ranger Úto_framerÚNaTÚilocÚgroupbyÚlistÚrangeÚstdrÚnpÚarangerÚtmÚassert_frame_equal)    ZtdiÚserÚdfÚgbrZtd1Ztd4Zexp_serrrrrÚtest_groupby_std_datetimelike(s
  r;ÚdtypeÚint64Úint32Úfloat64Úfloat32c     sÄtt d¡dt d¡|d}t d¡}tj |¡| |¡}|jdd„dd}|D]\}}t|ƒdksTt‚qT|     tj
¡}|ddksŠt‚t   ||  tj
¡¡t   || 
¡¡t   |  tj¡| ¡¡| d    d„¡}| d
d„¡}|d d ksòt‚t   ||¡| |¡}    t j |         tj
¡|dd |     tj
tjg¡}d}
tjt|
d|     tj
tjdœ¡W5QRXddddœ‰|  ‡fdd„¡}|ddks”t‚d}
tjt|
d|     dd„¡W5QRXdS)Né    é©r*r<cSs|dS©NrBr©ÚxrrrÚ<lambda>Kóztest_basic.<locals>.<lambda>F©Ú
group_keysécSs || ¡S©N©ÚsumrErrrrGWrHcSs || ¡SrLrMrErrrrGXrHéé ©Zcheck_index_typeúnested renamer is not supported©Úmatch)ÚoneÚtwoé
éé)rrKr#csˆ|j| ¡SrL)ÚnameÚmeanrE©Zgroup_constantsrrrGirHézMust produce aggregated valuecSs|dS©Nr#rrErrrrGprH)r r4r5ÚrandomÚshuffleÚreindexr0ÚlenrÚ    aggregater[r6Úassert_series_equalÚaggrNÚapplyÚ    transformr3ÚpytestÚraisesrÚ    Exception) r<Údatar*ÚgroupedÚkÚvÚaggedrÚ transformedZ value_groupedÚmsgrr\rÚ
test_basicCs@
 
 
 
ÿ rrc    Cs²|jjd}| |¡}| ¡}| | d¡¡ ¡}|jjtjksDt‚|jjtj    ksVt‚t
j ||dd|  ¡}t t|ƒƒ|d<dd„}| d¡ |¡}|j}|j}t
 ||¡dS)    NrÚOFrQÚvaluecSs|j|d ¡S)Nrt)ÚlocÚidxmax©ÚgrouprrrÚ    max_valuesz/test_groupby_nonobject_dtype.<locals>.max_valuer)r*Úcodesr0rNÚastyper<r4Úint8rr=r6r7Úcopyr2rbrfÚdtypesrd)    ÚmframeZdf_mixed_floatsrrlrrr9ryZappliedrrrÚtest_groupby_nonobject_dtypess 
r€c    Csˆtdddddddgtt d¡ddtdddd    œƒ}d
d „}| d ¡ ¡d g}| d ¡ |¡d g}t     ||¡dd„}| d ¡ |¡d g}| 
¡}tj |j d<t     ||¡dd„}| d ¡ |¡d g}| 
¡}tj |j d<t     ||¡dd„}| d ¡ |¡dg}| d ¡ ¡dg}t j|j d<t     ||¡dd„}| d ¡ |¡}| d ¡ ¡d 
¡}tj |j d<d|_t ||¡dS)NÚTigerZLambÚPonyrOr=©r<Z20130101r r+cSs
|jdS©Nr)r/©ÚgrprrrÚf_0•sz*test_inconsistent_return_type.<locals>.f_0rrcSs|jdkrdS|jdS)Nrr©rZr/r…rrrÚf_1œs
z*test_inconsistent_return_type.<locals>.f_1cSs|jdkrdS|jdS©Nr‚rrˆr…rrrÚf_2¦s
z*test_inconsistent_return_type.<locals>.f_2cSs|jdkrdS|jdSrŠrˆr…rrrÚf_3±s
z*test_inconsistent_return_type.<locals>.f_3r'cSs|jdkrdS|jdjdS)Nr‚rr')rZr/rur…rrrÚf_4¼s
z*test_inconsistent_return_type.<locals>.f_4)rr r4r5rr0Úfirstrfr6r7r}Únanrur,r.rZrd)    r9r‡rrr‰Úer‹rŒrrrrÚtest_inconsistent_return_typeŠs>
ýÿ        r‘cCs¬ddd„}dd„}| dd„¡}|jtjddd}|jtjddd}|jtjddd}| d    ¡}| |¡}    t ||¡t ||¡t ||    ¡|j|dd
}|j|dd
}|j|dd
}t ||¡t ||¡t ||    ¡d D]Æ}
|jd d„|
d } | jtjddd}|  t    jd    ¡}|  d    ¡} tj
|| ddt 
|| ¡|  t    jdd    g¡}|  dd    g¡} tj
|| dd| j|dd
}| jt    jd    d
}t 
|| ¡tj
|| ddqàdS)NrcSstj|||dS)N©Úaxis©r4Ú
percentile)rFÚqr“rrrÚfÉsz test_pass_args_kwargs.<locals>.fcSstj|dddS)NéPrr’r”rErrrrGÌrHz'test_pass_args_kwargs.<locals>.<lambda>cSs|jSrL©ÚmonthrErrrrGÏrHr˜r’çš™™™™™é?)r–)TFcSs|jSrLr™rErrrrGärH©Úas_indexF©Z check_namesgš™™™™™Ù?)Nr) r0rer4r•rfrgÚquantiler6rdrr7)ÚtsÚtsframer—ÚgZ
ts_groupedZ
agg_resultZ apply_resultZ trans_resultZ agg_expectedZtrans_expectedrÚ
df_groupedrZ expected_seqrrrÚtest_pass_args_kwargsÈs>
 
 
 
  r¤rTFcCsœddddg|_|jdd„|d}|jtjddd    }||jjd
k d ¡||jjd k d ¡d œ}t|ƒj    }|j 
tj ¡|_|sŒt t d ƒƒ|_t ||¡dS)Nrrr'cSs|jSrLr™rErrrrGùrHz9test_pass_args_kwargs_duplicate_columns.<locals>.<lambda>rœr˜rr’rKr›r#©rKr#)Úcolumnsr0rer4r•r*ršrŸrÚTr{r>r
r2r6r7)r¡rr:ÚresZex_datarrrrÚ'test_pass_args_kwargs_duplicate_columnsõsþ
r©cCsØt ¡}| dd„dd„dd„g¡}t|ƒt|ƒks8t‚| dd„dd„g¡}tdd„|jDƒƒ}t|ƒ|ksrt‚ttjgd    d
d d    gd œƒ}t| d ¡ƒdks¤t‚t| d¡ƒd    ksºt‚t| d dg¡ƒd    ksÔt‚dS)NcSs|jSrL©ÚyearrErrrrG rHztest_len.<locals>.<lambda>cSs|jSrLr™rErrrrG rHcSs|jSrL©ÚdayrErrrrG rHcSs|jSrLrªrErrrrGrHcSs|jSrLr™rErrrrGrHcSsh|]}|j|jf’qSr)r«rš©Ú.0rFrrrÚ    <setcomp>sztest_len.<locals>.<setcomp>rBrKr#©ÚaÚbr²rr³)    r6ÚmakeTimeDataFramer0rbrr*rr4r)r9rlrrrrÚtest_len
srµcCsNtdd„ttddƒƒdDƒƒ}tj d¡d}t|ƒ}| |¡}| ¡dS)NcSsg|] }d|‘qS)çð?rr®rrrÚ
<listcomp>sz)test_basic_regression.<locals>.<listcomp>rKrWiLg$@)r r1r2r4r_r0r[)rrkÚ    groupingsrlrrrÚtest_basic_regressions
 
r¹Úint16r|c Cs¸tt d¡ƒ}tt d¡||d}ttjdddtjtjddtjdg
|d}| |¡}| t¡}tddgddgd}t    j
||dd    d
d „}| |¡}td d gddgd}t     
||¡dS)NrWrƒÚfooÚbarr)ér#F)Z check_dtypecSs tt|ƒƒSrL)ÚfloatrbrErrrr—:sztest_with_na_groups.<locals>.fç@ç@) r
r4r5r Úonesrr0rerbr6rd)r<r*ÚvaluesÚlabelsrlrorr—rrrÚtest_with_na_groups%sþ
 
 
rÄc    Cs8dd„}dd„}dd„}tddddgtd    ƒtd
d ƒd œƒ}td dddgtd    ƒtd
d ƒd œƒ}| d¡ |¡}| d¡ |¡}t ||¡d}tjt|d| d¡ |¡W5QRXtjt|d| d¡ |¡W5QRXtjt|d| d¡ |¡W5QRXtjt|d| d¡ |¡W5QRXdS)NcSsb||jddkd}|jrLtggdggdddgd}tdg|d}|S| ddg¡}|SdS)Nr#rKr³Úc©ÚlevelsrzÚnamesr²©r¦r*)r³Úemptyr rÚ    set_index©rFÚyZ
multiindexr¨rrrÚf1Fsz,test_indices_concatenation_order.<locals>.f1cSs8||jddkd}|jr"tƒS| ddg¡}|SdS)Nr#rKr³rÅ)r³rÊrrË)rFrÍrrrÚf2Ps
z,test_indices_concatenation_order.<locals>.f2cSsV||jddkd}|jrNtggdggdddgd}tddg|d}|S|SdS)    Nr#rKr»r¼rÆr²r³rÉ)r³rÊr rrÌrrrÚf3Xsÿz,test_indices_concatenation_order.<locals>.f3rKr#r½r"rA©r²r³rÅrBr²z@Cannot concat indices that do not have the same number of levelsrS)    rr2r0rfr6r7rhrir)rÎrÏrÐr9Údf2Úresult1Úresult2rqrrrÚ test_indices_concatenation_orderCs"
 "" rÕc    Cs¨| dd„¡}| ¡}| dd„¡}t ||¡| ¡}dd„|Dƒ}t|ƒj}t ||¡|j    }| dd„¡}t ||¡d}t
j t |dt |d    ƒW5QRXdS)
NcSs| ¡SrL©ÚweekdayrErrrrG{rHz#test_attr_wrapper.<locals>.<lambda>cSstj|ddS)NrK)Zddof)r4r3rErrrrG~rHcSsi|]\}}|| ¡“qSr)Údescribe)r¯rZZgprrrÚ
<dictcomp>ƒsz%test_attr_wrapper.<locals>.<dictcomp>cSs|jSrLrƒrErrrrG‰rHz-'SeriesGroupBy' object has no attribute 'foo'rSr»)r0r3rer6rdrØrr§r7r<rhriÚAttributeErrorÚgetattr)r rlrrrqrrrÚtest_attr_wrapperzs 
  rÜcCsr| dd„¡}| tj¡}t|ƒdks*t‚t|jƒdks<t‚| ¡}dd„|jDƒ|d<| d¡ tj¡}t    j
||dd    |  d
¡ d d„¡}|  d d„¡}t|ƒd
ks¬t‚t|jƒdks¾t‚|  d d„¡}|D]2\}}| ¡}|jD]}    t    j | |    ¡|dd    qæqÐ|D]"\}
}|jd ¡|
kst‚q|j} |j} |  ¡D],\} }|j | | ¡}||k ¡s@t‚q@dS)NcSs| ¡SrLrÖrErrrrG“rHz$test_frame_groupby.<locals>.<lambda>r"r½cSsg|] }| ¡‘qSrrÖr®rrrr·œsz&test_frame_groupby.<locals>.<listcomp>r×FržrYcSs| ¡SrLrÖrErrrrG¡rHcSs || ¡SrL©r[rErrrrG¢rHcSs| ¡SrLrÝrErrrrG§rHr)r0rcr4r[rbrr¦r}r*r6r7ÚheadrgrdÚxsr×ÚgroupsÚindicesÚitemsÚtakeÚall)r¡rlÚ
aggregatedZtscopyZstraggedrprZrxr[Úidxr×ràrármrnZ    samethingrrrÚtest_frame_groupby’s0  
 rçcCs¤dddddœ}|j|dd}| tj¡}t|ƒt|ƒks<t‚t|jƒdksNt‚dd„}|jj|dd}t     | 
|¡j| 
|¡¡|D]\}}t|jƒdks„t‚q„dS)NrrK©rrr'ÚDr’r#cSs || ¡SrLrÝrErrrrGÄrHz,test_frame_groupby_columns.<locals>.<lambda>) r0rcr4r[rbrr¦r§r6r7rg)r¡ÚmappingrlråÚtfZgroupedTrmrnrrrÚtest_frame_groupby_columnsºs  rìc    Cs0| d¡}|jdd}|jjdks&t‚|jdddjdd}|jjdksLt‚|ddg tj¡}|jjdkspt‚| tjtjdœ¡}|jjdks”t‚|d ¡}|jjdks°t‚|d tj¡}|jjdksÐt‚|d tjtjg¡}|jjdksöt‚d    }tj    t
|d
|d tjtjd œ¡W5QRXdS) NrT©Ú numeric_onlyFrœr'ré©r'rérRrS©r»r¼) r0r[r*rZrrer4r3rhrir)r9rlrrqrrrÚtest_frame_set_name_singleÍs$
  rñc Csè|d}|d}| |j|jg¡}|jdd}| ddg¡ ¡}tj|jdd…ddgf|jdd…ddgfddttj     d    ¡tj     d    ¡t 
d
d
d
d d d g¡t 
d d d d d d g¡dœddddddgd}| ddg¡}|  tj ¡dS)NrrTrír'réFržér³r²Ú1Ú2)Úv1Úv2Úk1Úk2rUrVÚthreeZfourZfiveÚsixr)r÷rø) r0Úgetr[r6r7rurr4r_ÚrandnÚarrayrerN)r9Zcol1Zcol2rlrorrrrÚtest_multi_funcès( ÿ
 
üù
rþcCsR| ddg¡d}| tjtjg¡}t| tj¡| tj¡dœƒ}t ||¡dS)Nrrr')r[r3)r0rer4r[r3rr6r7)r9rlrorrrrÚ!test_multi_key_multiple_functionssrÿc Csætdddddddddddg dddddddddddg tj d¡tj d¡tj d¡dœƒ}| ddg¡}tjtjg}| |¡}tj    |d     |¡|d
 |¡|d  |¡gd    d
d gd d }t
|j t ƒsÆt ‚t
|j t ƒsÖt ‚t ||¡dS)Nr»r¼rUrVé )rrréÚEÚFrrrérrrK)Úkeysr“)rr4r_rür0r[r3rer,ÚconcatÚ
isinstancer*r rr6r7)rkrlÚfuncsrorrrrÚ"test_frame_multi_key_function_list sRõõ
 
 
ãÿ" 
&ýrcCs²tdddddddddddg dddddddddddg dddddddddddg tj d¡tj d¡tj d¡dœƒ}| d    d
g¡}tjtjg}tjt    d d | 
|¡W5QRXdS) Nr»r¼rUrVZdullZshinyr)rrr'rérrrrz+Could not convert dullshinyshiny to numericrS) rr4r_rür0r[r3rhriÚ    TypeErrorre)rkrlrrrrÚ2test_frame_multi_key_function_list_partial_failure<s\õõõ
 
 
Öÿ/ r    ÚopcCs| ¡SrLrMrErrrrGrrHrGcCs| ¡SrLrÝrErrrrGrrHc    Cs"|}| ddg¡}||ƒ}g}g}| d¡D]J\}}| d¡D]6\}    }
| ||    f¡| ||
jdd…ddgfƒ¡q>q,tj|ddgd} tj|ddj} | | _dD]8} ||| ƒ}|| }| | }t     
||¡t     
||¡q¤|d |d|dg¡  ¡}| ddg¡  ¡d} t     
|| ¡dS)    Nrrr'ré©rÈrKr’rï) r0Úappendrur Ú from_tuplesr,rr§r*r6rdr[)r9r
rkrlrÓrrÂZn1Zgp1Zn2Zgp2ÚmirÚcolZ
result_colZpivotedÚexprrrrÚtest_groupby_multiple_columnsrs*$  rcCs¤tddgddgddggddgd}|jdd    d
d d¡}tddgdd }t ||¡|jdd    d d d dd„¡}tdddgdt dddg¡d}t ||¡dS)NrKr#r½r"ròrr©r¦Frœ©rZT)rrJcSs| ¡SrL)ÚcumsumrErrrrG›rHz-test_as_index_select_column.<locals>.<lambda>)rr)rrKr¥©rZr*)    rr0Ú    get_groupr r6rdrfr r ©r9rrrrrÚtest_as_index_select_column“s" ÿÿrcCsfttdddgddd}|jddddjdd    }t|jdd
…td ƒd }dg|j_t ||¡dS) Nrrr'ÚalpharrF)Úbyrrír#rrÉ)    rr
r0rNr¦r2rÈr6r7)r9ÚleftrrrrÚ0test_groupby_as_index_select_column_sum_empty_df£s
 
rc    Cs"|jddd}|ddg tj¡}|jdd}t ||¡| tjtjdœ¡}|jdd}| ¡d|d<t ||¡|jddd}d    }tjt    |d
|d d tji¡W5QRX|jdd gdd}| tj¡}| ¡}t ||¡| tjtjdœ¡}| ¡}| ¡d|d<t ||¡|d ¡}t
|ƒj dd id }|d d tji¡}t ||¡t
tj   ddd¡dddgd }ttj   ddd¡dd}    | |    ¡}
|
 d¡t |
 t¡| |    ¡ t¡¡dD]P} |j|    dd}
t|
| ƒƒ} |j|    jdd}
t|
| ƒƒjdd} t | | ¡qÌdS)NrFrœr'réTrírïrRrSÚQrrréd)é2rBZjimZjoeZjolier"rWrr)r[ÚmaxÚcountrvrrä©Údrop)r0rer4r[r6r7rNrhrirrÚrenamer_Úrandintr ÚnthrfrÛrÂÚ reset_index)r9rlrrrÔÚ    expected2rqZ    expected3Zresult3r ZgrÚattrrÚrightrrrÚtest_groupby_as_index_agg®sF         
 
 r+cCsø|dkrt d|›¡ttjjddddddgd    }t| d¡|ƒƒ}|d
krZ| d
¡}|     ¡}|d
kr‚|d 
|dj ¡|d<|jdd d }t||ƒƒ}t   ||¡| |¡}t   ||¡t|d|ƒƒ}t   ||¡|d |¡}t   ||¡dS) N)Zcorrwithr&Úngroupz!GH 5755: Test not applicable for rr")rr#)Úsizer²r³rr-Frœ)rhÚskiprr4r_r%rÛr0r$r'r{r<r6r7re)Zreduction_funcr9rr¢rrrrÚtest_ops_not_as_indexæs$
 
  r/cCs:|jddd}|jddgdd}|d tj¡}| tj¡jdd…ddgf}t|tƒs\t‚t     ||¡|d tj¡}| tj¡jdd…dddgf}t|tƒs¦t‚t     ||¡|d ¡}| ¡jdd…ddgf}t|tƒsæt‚t     ||¡|d ¡}| ¡jdd…dddgf}t|tƒs*t‚t     ||¡dS)NrFrœrr')
r0rer4rNrurrrr6r7)r9rlZgrouped2rrrÔr(rrrÚ!test_as_index_series_return_frames$      r0c    Cs>|jddd}d}tjt|d|d d¡W5QRXdS)NrFrœzColumn\(s\) C already selectedrSr'ré)r0rhriÚ
IndexErrorÚ __getitem__©r9rlrqrrrÚ(test_as_index_series_column_slice_raisessr4cCsÚ|}|jddd}|jdd}| dg¡jdd}| dd|j¡tt|ƒƒ|_t ||¡|jddgdd}| ¡}| ddg¡ ¡}tt    |jj
Žƒ}| dd|d¡| dd|d¡tt|ƒƒ|_t ||¡dS)    NrFrœTrírrrK) r0r[Úinsertr*r rbr6r7r1ÚziprÂ)r9rkrlrrZarraysrrrÚtest_groupby_as_index_cython(s  r7cCsN|jddgdd}|d t¡}| t¡jdd…dddgf}t ||¡dS)NrrFrœr')r0rerbrur6r7©r9rlrrrrrÚ#test_groupby_as_index_series_scalar?sr9c    Csfd}tjt|d|jdd„ddW5QRXd}tjt|d|jdd„dd    d
W5QRXdS) Nz(as_index=False only valid with DataFramerScSs| ¡SrLrÖrErrrrGLrHz.test_groupby_as_index_corner.<locals>.<lambda>Frœz$as_index=False only valid for axis=0cSs| ¡SrL)ÚlowerrErrrrGPrHrK)rr“)rhrirr0Ú
ValueError)r9r rqrrrÚtest_groupby_as_index_cornerIs r<cCs²t ¡}| dd„dd„dd„g¡}| ¡}t |j|j¡|jjdd„dd„dd„gdd    }| d
d„¡}t |j    |j
¡t |jj|j¡| d d„¡}t |jj|j¡dS) NcSs|jSrLrªrErrrrGUrHz+test_groupby_multiple_key.<locals>.<lambda>cSs|jSrLr™rErrrrGUrHcSs|jSrLr¬rErrrrGUrHcSs|jSrLrªrErrrrGZrHcSs|jSrLr™rErrrrGZrHcSs|jSrLr¬rErrrrGZrHrKr’cSs| ¡SrLrMrErrrrG]rHcSs| ¡SrLrMrErrrrGarH) r6r´r0rNZassert_almost_equalrÂr§reÚassert_index_equalr*r¦)r9rlrorrrÚtest_groupby_multiple_keySsÿr>cCsP| ¡}tj|d<| ddg¡ ¡}| ddg¡ ¡}tj|d<t ||¡dS)NÚbadrr)r}r4rr0r[r6r7)r9rorrrrÚtest_groupby_multi_corneres 
 
r@c    Cs| d¡}tjtdd| tj¡W5QRXtjtdd| ¡W5QRX|jdd…dddgf}t     ¡|d<| d¡}d}tjt|d| tj
¡W5QRXtjt|d| 
¡W5QRX|jddd    d    d
œd    d }d }tjt|d| d d„¡W5QRXdS)NrúCould not convertrSr'rérz/datetime64 type does not support sum operationsrrK)rr'rérr’z does not support reduction 'sum'cSs|jdddS)NrFrírMrErrrrG…rHz)test_raises_on_nuisance.<locals>.<lambda>) r0rhrirrer4r[rurÚnowrNr3rrrÚtest_raises_on_nuisanceqs"
 
rCÚ agg_functionr ÚmincCsv| d¡}t||ƒƒ}| ¡}t|j|ddkdf|ƒƒ|jd<t|j|ddkdf|ƒƒ|jd<t ||¡dS)Nrr¼r)r¼rr»)r»r)r0rÛr}rur6r7)r9rDrlrrrrrÚtest_keep_nuisance_aggˆs 
 $$rFrNr[Úprodr3ÚvarÚsemÚmedianrîc
    CsÌ| d¡}d}||krd|sd|dkr&tnt}d ddg¡}tj||dt||ƒ|dW5QRXndt||ƒ|d}|sŽ|d    krŽdd
d d g}n
dd d g}t|jdd…|f d¡|ƒ|d}    t     ||    ¡dS) Nr)rHr3rIr[rGrJ)r3rIú|z[C|c]ould not convertzcan't multiply sequencerSrírNrr'ré)
r0r;rÚjoinrhrirÛrur6r7)
r9rDrîrlZno_drop_nuisanceÚklassrqrr¦rrrrÚtest_omit_nuisance_agg–s
 
ÿrNc    Cs0| d¡}tjtdd| ¡W5QRXdS)Nrzcould not convertrS)r0rhrirÚskew)r9rlrrrÚ$test_raise_on_nuisance_python_single´s
rPc    CsZ| ddg¡}tjtdd| tj¡W5QRXtjtdd| ¡W5QRXdS)NrrrArS)r0rhrirrer4r[)Z three_grouprlrrrÚ&test_raise_on_nuisance_python_multiple»s
rQc
Csàtt ddddddg¡t ddddddg¡ddgdtj d¡tj d¡d    œƒ}| d
d g¡}|d d g tj¡}|jdd}t     ||¡|dd…jdd}| 
dd„¡}|d 
tj¡}t  |d|¡|j j dksÜt‚dS)Nr³r²rórôr»r¼rBrò)r÷røZk3rõrör÷rørõröTrír"r©rcSs| ¡SrLrÝrErrrrGÕrHz*test_empty_groups_corner.<locals>.<lambda>rrŽ)rr4rýr_rür0rer[r6r7rfrdr*rZr)rr9rlrrroZagged_ArrrÚtest_empty_groups_cornerÃs"
 
 
ûÿ
  rSc    Cs:tdgƒ}d}tjt|d| dd„¡W5QRXdS)Nrz5unsupported operand type\(s\) for \+: 'int' and 'str'rScSs|dS)Nr»rrErrrrGßrHz$test_nonsense_func.<locals>.<lambda>)rrhrirr0)r9rqrrrÚtest_nonsense_funcÛs
rTc    Csº|j}d|d<t dddg¡t dddg¡g}tjtdd| |¡ tj¡W5QRX|j    dd |¡ tj¡}t
|j t ƒs„t ‚dd    „}tjtd
d| |¡ |¡W5QRXdS) NZpeekaboo)ÚbazrVrrKrArSrcSs|jdkrtdƒ‚| ¡S)N)r»rUúTest error message)rZrrN)r8rrrÚaggfunìs
z5test_wrap_aggregated_output_multindex.<locals>.aggfunrV)r§r4rýrhrirr0rer[r#rr¦r rrc)rr9rrorWrrrÚ%test_wrap_aggregated_output_multindexâs rXcCsh|jdd ¡}|jjdks t‚|jdd ¡}|jjdks@t‚|djdd ¡}|jjdksdt‚dS)NrrRrŽrKÚsecondr)r0r!r*rZr)rrrrrÚtest_groupby_level_applyõs rZcsÒ| ¡}dddddœ‰ddddœ‰|jˆdd ¡}|jˆdd ¡}tj‡fdd„|dDƒtjd    }tj‡fd
d„|d Dƒtjd    }| |¡ ¡}| |¡ ¡}d \|j_|j_t     ||¡t     ||¡dS) NrrK)r»r¼rUÚqux)rUrVrùrRcsg|]}ˆ |¡‘qSr©rûr®)Úmapper0rrr·    sz-test_groupby_level_mapper.<locals>.<listcomp>rŽrƒcsg|]}ˆ |¡‘qSrr\r®)Úmapper1rrr· srY)rŽrY)
r'r0rNr4rýr=r*rZr6r7)rZ    deleveledZresult0rÓZ mapped_level0Z mapped_level1Z    expected0Z    expected1r)r]r^rÚtest_groupby_level_mapperÿs$ ÿÿ r_c CsÌtddddddddgtddddddddgd    d
ƒ}td d ddddgttdd ƒd    d
ƒ}|jdd ¡}t ||¡|jdgd ¡}t ||¡|jdd ¡}t ||¡|jdgd ¡}t ||¡d}tjt    |d|jddW5QRXtjt    |d|jddW5QRXd}tjt    |d|jgdW5QRXd}tjt    |d|jddgdW5QRXtjt    |d|jddgdW5QRXd}tjt    |d|jdgdW5QRXdS)NrKr#rBrWr½r"rXròr»rrérOrrRr(z2level > 0 or level < -1 only valid with MultiIndexrSéþÿÿÿzNo group keys passed!z*multiple levels only valid with MultiIndex)
r r
r2r0rNr6rdrhrir;)ÚsrrrqrrrÚtest_groupby_level_nonmultis42$    rccCsFtt d¡dddddgd}tdƒ}|jdd ¡}t ||¡dS)Nr½ùð?@rrK©rkr*)rdy@$@rR)r r4r5r0rNr6rd)r²rrrrrÚtest_groupby_complex6srfcCs¬tdddœdddœdddœgƒ}ttjdddgtjdtdddgdd    td
gd dd }|jdd d ¡}t ||¡tdddgdd    |_    |jddd ¡}t ||¡dS)NrKyð?ð?r±rdr½rƒyð?r³rr²Úobject©r*r¦F©ÚsortT)
rr4rýr=r
r0r!r6r7r*©r9rrrrrÚtest_groupby_complex_numbers?s ýÿ ý rlc
CsŽtdddddddgtdd    d
d d d dgƒd}tddddddgtdd    d d ddgƒd}| |¡}| ¡}| | |j¡j¡ ¡}t ||¡dS)Nç@g"Àr¿gY@gÀg€K@gÍÌÌÌÌÌ@r²r³rÅÚdrr—r¢r)r¶g@Úh)    r r
r0r[rar*rûr6rd)Ús1Ús2rlrorrrrÚ'test_groupby_series_indexed_differentlyVsþÿ
rrc CsnttddddddddgddddddddggŽƒ}t |¡}t ddd    d
g¡}ttj d d ¡||d }|jdd     ¡}t
  |j |¡|jddd     ¡}t
  |j |j ¡|jdd tj    ¡}t
  |j |¡|jdd dd„¡}t
  |j |¡|jddd dd„¡}t
  |j tddgƒ¡t
  |j |j ¡| d¡\}}d|d<|jddj    dd}t
  |j |j dd…¡dS)Nr¼rUr»r[rUrV)rÚcat)rÚdog)rrs)rrtér½rhrrRrK)rr“cSs| ¡SrLrÝrErrrrG}rHz0test_groupby_with_hier_columns.<locals>.<lambda>cSs
| d¡S)NrKrÝrErrrrG€rHrr)rr»Trír()r1r6r r rr4r_rür0r[r6r=r¦r*rerfr
Z    sortlevel)Ztuplesr*r¦r9rZsorted_columnsÚ_rrrÚtest_groupby_with_hier_columnses6þÿÿ
 
ÿrwcCs@| |dj¡}| ¡}| |d d¡¡ ¡}t ||¡dS)Nr)r0rÂrNr$r6r7r8rrrÚtest_grouping_ndarray‹srxc
Cs–tdddddgdd}tddd    dd
gd d d d d gd d d ddgdddddgdddddgdœ|d}| ddddg¡}| tj¡}| ¡}t ||¡dS)NrrKr#rBr½r*rZfoo1Zfoo2Zfoo3Zbar1Zbar2Zbaz1Zbaz2Zspam2Zspam3Zspam1rXrYé(ré<)r»r¼rUÚspamrkr)r»r¼rUr{)r
rr0rer4r[r6r7)r*rkrlrrrrrÚtest_groupby_wrong_multi_labels’s     ûø  r|cCs°| |d¡jdd}|j|dddjdd}|jjdks@t‚d|ksLt‚| |d|dg¡ ¡}|j|d|dgdd ¡}|jjdks”t‚d|ks t‚d|ks¬t‚dS)NrTríFrœr©rr)r0r[r*rZrrÈ)r9rrÔrrrÚtest_groupby_series_with_name¦s  r~cCsR| d¡d}| ¡jdks t‚| ¡jdks2t‚dd„}| |¡jdksNt‚dS)Nrr'cSst |¡dSr^)r4rNrErrrrG¹rHz.test_seriesgroupby_name_attr.<locals>.<lambda>)r0r!rZrr[re)r9rZtestFuncrrrÚtest_seriesgroupby_name_attr³s
rc
Csxtddddddddgddddddddgtj d¡dt d¡dœƒ}| dg¡j ¡}|j |j¡ ¡}t     
||¡dS)    Nr»r¼rUrVrur¶rèr) rr4r_rür5r0rr!rr6rdrkrrrÚtest_consistency_name½süÿ    r€cCsxddd„}dd„}| d¡ |¡}|jjdks2t‚| d¡ |d¡}|jjdksTt‚| d¡ |¡}|jjdkstt‚dS)NcSstddddœ|dS)NrKr#rB©r!r[Z    omissionsr)r )r9rZrrrÚ    summarizeÐsz0test_groupby_name_propagation.<locals>.summarizecSstddddœ|jdddS)NrKr#rBrrrr)r r/©r9rrrÚsummarize_random_nameÓsz<test_groupby_name_propagation.<locals>.summarize_random_namerÚmetrics)N)r0rfr¦rZr)r9r‚r„r…rrrÚtest_groupby_name_propagationÎs
r†cCsJtdd„tdƒDƒƒ}| d¡}| ¡}| |d¡ ¡}t ||¡dS)NcSsg|]}t d¡‘qS)rW)r4r5r®rrrr·âsz2test_groupby_nonstring_columns.<locals>.<listcomp>rWr)rr2r0r[r6r7r8rrrÚtest_groupby_nonstring_columnsás
 
r‡cCsttdddggdddgd}tddggddgtdgddd}| d¡ ¡}t ||¡| d¡ ¡}t ||¡dS)    NrrKr#rrrrrÉ)rr
r0rŽr6r7rNrkrrrÚtest_groupby_mixed_type_columnsés " rˆcCs`t d¡}| tj¡t|dd…dfƒ}t tdƒd¡}| |¡ tj    ¡}| 
¡  ¡s\t ‚dS)N)rrrrW) r4rÊÚfillrr Ztiler2r0rerJZisnarär)ÚarrÚobjZindsrrrrÚ(test_cython_grouper_series_bug_noncontigõs 
 rŒcCs^tt dd¡ƒ}ttj d¡|ddd…d}tj ddd¡}| |¡}dd    „}|     |¡dS)
NrWrrr#r)rr"cSstttt|jƒƒƒSrL)rbÚsetÚmapÚidr*rErrrrG    rHz5test_series_grouper_noncontig_index.<locals>.<lambda>)
r
r6Z rands_arrayr r4r_rür%r0re)r*rÂrÃrlr—rrrÚ#test_series_grouper_noncontig_indexÿs 
rcCsšttdƒƒ}tjdddddgdd}d    d
„}d d „}| |¡}| |¡}|jtjksXt‚t    |d t
ƒsjt‚| |¡}|jtjks„t‚t    |d t
ƒs–t‚dS)Nr"r²r³rÅrnrrsrƒcSstt| ¡ƒƒSrL)rÚstrr[rErrrÚ convert_fastsz>test_convert_objects_leave_decimal_alone.<locals>.convert_fastcSs$t|jjƒdkst‚tt| ¡ƒƒSr„)rbrÂÚbaserrr‘r[rErrrÚconvert_force_pureszDtest_convert_objects_leave_decimal_alone.<locals>.convert_force_purer) r r2r4rýr0rer<Zobject_rrr)rbrÃr’r”rlrrrrÚ(test_convert_objects_leave_decimal_alone s 
 
 
r•cCsttgtjddddœƒ}|djtjks,t‚| d¡ ¡}tgdtjd}tdt    g|ddiƒ}t
j ||d    d
dS) Nrr=rƒ)rFr2rF©rZr<r2rCT)Z    by_blocks) rr4r5r<r?rr0rŽr
r r6r7)r9rZ    exp_indexrrrrÚ"test_groupby_dtype_inference_empty$s r—cCsbtdgdgdgdœƒ}| ddg¡d ¡}tdgtjdgdggddgddd}t ||¡dS)    NrKl4;PUÑ)rŽrYrtrŽrYrtr r)rr0r r r Ú from_productr6rdrrrrÚ$test_groupby_unit64_float_conversion/sýr™c    CsÊ| t|dƒ¡jdd}| |d¡jdd}tj||ddtjtdd | t|ddd…ƒ¡W5QRXtd    d
gd d gt    j
  d ¡dœƒ}| ddg¡ ¡}| |d|dg¡ ¡dg}dS)NrTríFržz^'foo'$rSr(rrKrBr½r#)r»r¼Úvalr»r¼rš) r0r1r[r6r7rhriÚKeyErrorrr4r_rürrrrÚ"test_groupby_list_infer_array_like;s$ rœcCstd}ttdƒd|d}tddgddggd    d
g|d }| td |d d    g¡ ¡}| |jd    g¡ t    ¡}t
  ||¡dS)Nrbz2015-09-29T11:34:44-0700r#)Ústartr!ÚfreqrrWréZmetricrÂrÉr)rrž) rrrr0r    r[rËr*r{r¾r6r7)ržr*r9rrrrrÚ$test_groupby_keys_same_size_as_indexJsÿr c    Cs„d}ttj dd¡tdƒd}tjt|d| d¡W5QRXttj dd¡tdƒd}tjt|d| d¡W5QRXdS)    Nz^'Z'$rKr½ÚABCDrrSÚZr#)    rr4r_rür1rhrir›r0)rqZdf1rÒrrrÚtest_groupby_one_rowWsr£c Cs„ttj d¡tjtdƒtjtdƒtjtdƒtjtdƒgtjdtjdtjdtjdgdœƒ}| d¡}tdd    gƒtd
d gƒg}t|j     
¡ƒ}t |ƒd ks˜t ‚t ||ƒD]\}}t |j    ||¡q¢t |jjd j|¡|jd ksât ‚tdƒtjdd    gtjdtdƒtjd
d gtjdi}|jD]}t |j|||¡qt | tdƒ¡|jdd    g¡t | tdƒ¡|jd
d g¡tjtdd| tj¡W5QRXttjtjtjgtjtjtjgdœƒ}|dj dksÚt ‚|dj dksît ‚dD]Œ}| |¡}|j    ikst ‚|jd ks t ‚|jiks0t ‚tjtdd| tj¡W5QRXtjtdd| tj¡W5QRXqòdS)Nruz
2013-01-01z
2013-02-01r²r³)rÂÚdtr‘r¤rKrOrBr"r#rz2013-01-01 00:00:00rƒz2013-02-01 00:00:00z^NaT$rS)rÚnatrr?r¥zdatetime64[ns]z^nan$)!rr4r_rürrr0r
Úsortedràrrbrr6r6r=r7Úgrouperr¸r‹ZngroupsrýZintpráÚassert_numpy_array_equalrr/rhrir›r,r.r<)r9rlrrrmrZnan_dfrrrrÚtest_groupby_nat_excludebs^
ø
ôÿ
þ
   ÿ
r©cCsDttjtjgtjtjgddgdœƒ}| ddg¡j}|iks@t‚dS)NrKr#rÑr²r³)rr4rr0rár©r9rrrrÚ#test_groupby_two_group_keys_all_nan¡s$r«cCsttdƒd}ddg|d<ddg|d<ddg|d    <d
d g|d <| dg¡jd d}t ddgddgg¡}t |jt    dd    gƒ¡t 
|j |¡dS)Nr#r)Zg1Zg2rxrÚzerosrKrÁÚl1Úl2ÚlabelTríçr¶) rr2r0r[r4rýr6r=r¦r
r¨rÂ)rnÚtmpZ
res_valuesrrrÚtest_groupby_2d_malformed¨s    r²cCsŒt t d¡t d¡t d¡f¡}t d¡}t||||tj d¡dœƒ}| ddddg¡ ¡}| ddddg¡ ¡}t|ƒt|ƒksˆt    ‚dS)    Nriˆi¨a)rrr'rérrrr'ré)
r4Z concatenater5rr_rür0rNrbr)rrr9rr*rrrÚtest_int32_overflow´s "
r³cCs”tdddgdddgdddgtj d¡dœƒ}d    d
„|d d d gjDƒ}t |¡}|jd d d gdd ¡}t     
|j j|dddg¡dd
„|d d d gjDƒ}t |¡}|jd d d gdd ¡}t     
|j j|¡dd
„|d d d gjDƒ}t |¡}|jd d d gdd ¡}t     
|j j|dddg¡tddddddgddddddgtj d¡dœƒ}| d d g¡d}| ¡}dd„fdd„}|||d d gdƒdS)Nr»r¼rUrBr#rKr)r²r³rÅrncSsg|] }t|ƒ‘qSr©Útuple©r¯Úrowrrrr·Èsz+test_groupby_sort_multi.<locals>.<listcomp>r²r³rÅTricSsg|] }t|ƒ‘qSrr´r¶rrrr·ÍscSsg|] }t|ƒ‘qSrr´r®rrrr·Òsrò)r²r³rnrncSs| ¡SrLrMrErrrrGÝrHz)test_groupby_sort_multi.<locals>.<lambda>c    SsVdd„||jDƒ}t |¡}|| |¡|ƒ}| ¡D]\}}|||ks8t‚q8dS)NcSsg|] }t|ƒ‘qSrr´r¶rrrr·ÞszCtest_groupby_sort_multi.<locals>._check_groupby.<locals>.<listcomp>)rÂÚcomÚasarray_tuplesafer0râr)    r9rrÚfieldr—ÚtupsrrmrnrrrÚ_check_groupbyÝs
 
z/test_groupby_sort_multi.<locals>._check_groupby) rr4r_rürÂr¸r¹r0rNr6r¨r*)r9r»rrlr¼rrrÚtest_groupby_sort_multi¾s4
üÿ    
 
 
*ÿr½cCsLtddddddgdddgddœƒ}|jdd    d
 d d „¡}t ||¡dS) Nr²r³r»r¼rUr#)rrZrFrIcSs|SrLrrErrrrGìrHz/test_dont_clobber_name_column.<locals>.<lambda>)rr0rfr6r7rªrrrÚtest_dont_clobber_name_columnçs
ÿr¾cCs˜t ¡}|jdd„dd}| dd„¡}dd„|Dƒ}t |¡}t ||¡|djd    d„dd}| d
d„¡}d d„|Dƒ}t |¡}t ||¡dS) NcSs|jSrLr™rErrrrGórHz&test_skip_group_keys.<locals>.<lambda>FrIcSs|jdddd…S)Nr©rrB©Ú sort_valuesrErrrrGôrHcSs$g|]\}}|jdddd…‘qS)rr¿NrBrÀ©r¯rrxrrrr·ösz(test_skip_group_keys.<locals>.<listcomp>rcSs|jSrLr™rErrrrGûrHcSs| ¡dd…SrDrÀrErrrrGürHcSs g|]\}}| ¡dd…‘qSrDrÀrÂrrrr·þs)r6r´r0rfr,rr7rd)ZtsfrlrÚpiecesrrrrÚtest_skip_group_keysðs
 
rÄcCs:|d ¡}d|_| |d¡ tj¡}|jdks6t‚dS)Nr'r)r}rZr0rer4rNr)Z float_framerbrrrrÚtest_no_nonsense_names rÅcCs^tt d¡ dd¡ƒ}d|d<dddg|d<| d¡}| d    d
d œ¡}|djtjksZt‚dS) NrArBrÚtestgÍÌÌÌÌÌô?gø?gš™™™™™ù?ÚflrNr-)rÇr#)    rr4r5Úreshaper0rer<r?r)rFrlrrrrÚtest_multifunc_sum_bug s 
rÉcCsVdd„}dd„}| d¡d |¡}| d¡d |¡}t|tƒsFt‚t ||¡dS)NcSs| ¡| ¡dœS©N©r rErËrwrrrr—sz(test_handle_dict_return_value.<locals>.fcSst| ¡| ¡dœƒSrÊ)r r rErwrrrr¢sz(test_handle_dict_return_value.<locals>.grr')r0rfrr rr6rd)r9r—r¢rrrrrÚtest_handle_dict_return_values rÌr§rrcs˜dd„}dd„‰‡fdd„}|j|dd}| |¡| ˆ¡| ˆˆd    œ¡| |¡|d
 |¡|d
 ˆ¡|d
 ˆ|g¡|d
 |¡dS) NcSs|jdk    st‚|SrL)rZrrwrrrr—(sztest_set_group_name.<locals>.fcSs|jdk    st‚| ¡SrL)rZrrNrwrrrÚfreduce,sz$test_set_group_name.<locals>.freducecsˆ|ƒSrLrrE©rÍrrÚfreducex0sz%test_set_group_name.<locals>.freducexFrIrïr')r0rfrcrg)r9r§r—rÏrlrrÎrÚtest_set_group_name&s 
 
 
rÐcs`tddddddgt d¡dœƒ}g‰‡fdd„}|jdd    d    d
 |¡dddg}ˆ|ks\t‚dS) NrrKr#ròr±csˆ |j¡| ¡SrL)r rZr}rwr rrr—Gs z6test_group_name_available_in_inference_pass.<locals>.fr²F)rjrJ)rr4r5r0rfr)r9r—Zexpected_namesrr rÚ+test_group_name_available_in_inference_passAs   
rÑcCsV| |dj¡ ¡}|jjdks$t‚| |dj|djg¡ ¡}|jjdksRt‚dS)Nrr)NN)r0rÂrNr*rZrrÈrªrrrÚtest_no_dummy_key_namesQsrÒc    CsÞtddgddggddddddgddddddggddgd}tdddddd    g|d
}tddgddggdddgdddggddgd}tdddg|d
}|jddgd d  ¡}t ||¡|jddgd d  ¡}t || ¡¡dS)NrKr#rr²r³rÆrBr½r"r)F©rrjT)r r r0rŽr6rdÚ
sort_index)r*ZmseriesZmseries_resultrrrrÚ#test_groupby_sort_multiindex_seriesZs ýÿ rÕcCs‚d}tdd|d}tt |¡t |¡dœ|d}ddd    „}| d
d „¡}| d |tjƒi¡}| d |tjd ƒi¡}t ||¡dS)Néèz2012/1/1Z5min)rržr!)ÚhighÚlowr)Fcs‡‡fdd„}|S)z>
        Run an aggregate func on the subset of data.
        csD|j|j dd„¡ ¡}ˆr,||jdt|ƒdkr<dSˆ|ƒS)NcSs
|jdkS)Nr)ÚhourrErrrrGzrHzYtest_groupby_reindex_inside_function.<locals>.agg_before.<locals>._func.<locals>.<lambda>r)rur*rŽÚdropnarb)rkrn©ÚfixÚfuncrrÚ_funcys  zGtest_groupby_reindex_inside_function.<locals>.agg_before.<locals>._funcr)rÝrÜrÞrrÛrÚ
agg_beforetsz8test_groupby_reindex_inside_function.<locals>.agg_beforecSst|j|j|jƒSrL)rr«ršr­rErrrrGƒrHz6test_groupby_reindex_inside_function.<locals>.<lambda>r×T)F)    rrr4r5r0rer r6r7)r!Úindr9rßrlZ closure_badZ closure_goodrrrÚ$test_groupby_reindex_inside_functionos
rácCs–tddddgddddgddddgdœƒ}| dd    g¡}|jdd    gd
d }| d ¡}tjd ddgdd    gd}tdgdgdgg|dgd}t ||¡dS)Nr²r³rÅrnrKr")Úgroup1Úgroup2rtrârãTrÓrN)r²rÅ)r²rn©r³rÅr r#rtrh)rrËr0rer r r6r7)r9r£r¨rærrrrÚ$test_groupby_multiindex_missing_pairŠs
 
 
ýÿ
ÿråc    Cs–tjdddgddgd}tddd    gg|d
}|j ¡s:t‚td ddd gdd ddgdddd    ggd}|jd ddgd d}| ¡}|j ¡rŒt‚t     ||¡| 
d ¡  ¡}t  t ¡| 
d ¡  ¡}W5QRXt     ||¡td d dd gddddgdddd    gdœƒ ddg¡}|j ¡rt‚ddddgfD]j}dD]^}|j
||dd tj¡}|}t     ||¡| ¡j
||dd tj¡}| ¡}t     ||¡q.q&dS)N)r²Ú)Úb1Úc1)Úb2Úc2r³rÅr rKrBr½rr²rnrçrèrérê)r¦rk)r*r¦rÂr#©rFrÍÚzrFrÍr)FTF)rrjrJ)r r rr¦Z _is_lexsortedrÚ pivot_tabler'r6r7r0r[Zassert_produces_warningrrËr*rfZdrop_duplicatesrÔ)Z lexsorted_miZ lexsorted_dfZnot_lexsorted_dfrrr9rrjrrrÚ%test_groupby_multiindex_not_lexsortedŸsZÿ
ÿÿ   "ÿþÿ ÿþÿrîcCsttdƒdddddgd}| tdƒ¡}| dd„¡}|jdd    d
g}t ||¡|d}| tdƒ¡}| d d„¡}| dd    d
g¡}t ||¡|j     
t ¡|_    | tdƒ¡}| d d„¡}|jdd    d
g}t ||¡|d}| tdƒ¡}| d d„¡}| dd    d
g¡}t ||¡dS)NZABCDEr#rrKr)ZababbcSs t|ƒdkSr^©rbrErrrrGØrHz4test_index_label_overlaps_location.<locals>.<lambda>rBr½cSs t|ƒdkSr^rïrErrrrGÞrHcSs t|ƒdkSr^rïrErrrrGårHcSs t|ƒdkSr^rïrErrrrGërH) rr1r0Úfilterr/r6r7rãrdr*r{r¾)r9r¢Úactualrr8rrrÚ"test_index_label_overlaps_locationÓs(   ròcCs‚d}t |¡}t|dd|d|dœƒ}t|ddd|d|dœƒ}| d¡}| d¡}| d¡}| d¡}t ||¡dS)    Nròr#rÀç@rÑr¶r²r[)r4r5rr0rgr6r7)ÚnrFr9rÒr:rÚgb2rrrrÚ"test_transform_doesnt_clobber_intsðs
 
 
 
 
röÚ sort_columnÚintsÚfloatsÚstringsÚ group_columnÚ
int_groupsÚ string_groupsc s”tddddddddgddddddddgddd    d
d d ddgd ddddddd
gddddddddgdœƒ}|jˆd}| |¡}‡fdd„}| |¡dS)NrBrKrrìr²r¢rurOr½r"r#rAgffffff@g333333@gÍÌÌÌÌÌ@g333333Àgš™™™™™@gš™™™™™ñ?rnrÚwordZword2Z42Z47)rürýrørùrúr¿cst ||jˆd¡dS)Nr¿)r6r7rÁrE©r÷rrÚ    test_sortsz.test_groupby_preserves_sort.<locals>.test_sort)rrÁr0rf)r÷rûr9r¢rrrÿrÚtest_groupby_preserves_sortÿs ûÿ 
 rc    Cs~ttt ¡ddd ¡tddƒdœƒ}| d¡jj|d<| d¡jj    |d<t
j t d    d
|  ¡jddd d d W5QRXdS)NrXÚM©r!ržr)Ú    eventDateZthenamerr«ršz    'badname'rSZbadnamer!)r*r¦rÂZaggfunc)rrrÚtodayÚtolistr2rËr*r«ršrhrir›r'rírƒrrrÚ!test_pivot_table_values_key_errorsþÿÿrr¦r'rrÂr°r²rKz
US/Easternr%ú
2016-01-01rBrérÚInt64rƒZFloat64ÚbooleanÚboolÚintr¾r‘rsZdt64Zdt64tzZperiod)ÚidsÚmethodr)rerfrvÚidxminrOc    s’d}tˆtƒr>tˆƒdkr>ˆdkr>tjjtdd}    |j |    ¡tˆt    ƒrTˆdkrTd}tˆdt
ƒrnˆdkrnd    }t ˆˆˆd
œt d ƒd }
t ˆd ƒr¤|
jˆjk ¡s¤t‚|
jdd…}
|
jˆd|d|‰‡‡‡fdd„} ‡‡fdd„} t|
jdtjƒ} |
jdjdk}tˆtƒ}tˆtƒr†ˆjs†ˆdkr†dˆ›d}tjt|d | ƒW5QRXt|t ƒr‚| dd}| ƒ}t ||¡dSˆdkr@|s¢|s¢| r@ˆdkr²d}n|r¾d}n| rÊd}nd }tjt|d | ƒW5QRXt|t ƒsþdSˆdkr dS| dd}|
 ˆ¡g}|r0| ƒ}t ||¡dS| ƒ}|
 ˆ¡|}|dk    rh| |¡}tˆƒdkr‚ˆd|j_t ||¡dS)!NrK)rvrz0attempt to get arg(min|max) of an empty sequence)rirT)rNrGr    r)rGrNr=r+ÚABCrr<F)rJrÚcs.ˆdkrtˆˆƒf|ŽStˆˆƒˆf|ŽSdS)Nr))rÛ)Úkwargs)r:rr
rrÚ
get_resultvsz&test_empty_groupby.<locals>.get_resultcsRtdgˆjd}tˆƒdkr0tj||gˆd}nt|ˆdd}tgg|d}|S)NrrƒrKr rrÉ)rr<rbr r˜r
r)Zlevrær)rrÂrrÚ get_categorical_invalid_expected|s  z<test_empty_groupby.<locals>.get_categorical_invalid_expectedr)rEr zCannot perform z with non-ordered CategoricalrSTrí)rGrNrOrOz!does not support reduction 'skew'z datetime64 type does not supportzPeriod type does not supportzcategory type does not support) rrrbrhÚmarkÚxfailr;ÚnodeZ
add_markerrr rr1Úhasattrr~r<rärr/r0r,Z PeriodDtypeÚkindZorderedrirr6Ú assert_equalrËr{r*rZ)r¦rrÂrr
ÚrequestZusing_array_managerrÚZoverride_dtyperr9rrZis_perZis_dt64Zis_catrqrrr)r:rrr
rÂrÚtest_empty_groupby1s~'ÿ
þýÿ 
 
 
 
 
 
 
 
 
 rcCslttj dd¡ƒ}|d tj¡|d<ddddg|_|j|ddd}| dd    „¡}|j    |j    k 
¡sht ‚dS)
Nrr½rBrKr#FrIcSs|SrLrrErrrrGÐrHz<test_empty_groupby_apply_nonunique_columns.<locals>.<lambda>) rr4r_rür{r=r¦r0rfr~rär)r9r:r¨rrrÚ*test_empty_groupby_apply_nonunique_columnsÊs rc    Csœtddddgddddgddddgddddgdœƒ}tjtdd|dddg d    ¡W5QRX| d    ¡d ¡}td
gdtdgd    d d }t     ||¡dS) NrKr#)r±r²r³rÅz
('a', 'b')rSr²r³rÅr±r½rr)
rrhrir›r0rNr r
r6rdrrrrÚtest_tuple_as_groupingÔs
 
 
 
üÿ    rc    CsPtdtdƒt ddgddgg¡d}tjtdd| d¡ ¡W5QRXdS)    NrKrBr#r½rhz
^\(7, 8\)$rS)rOru)    rr2r r˜rhrir›r0r[rƒrrrÚtest_tuple_correct_keyerrorçs$rc    Cs˜tdgdggtdgddtddddd    d
}tdddddgdddddggtjd dddgd tddddd    d
}| tdd ¡ ddg¡}t     ||¡dS)NrKr»Zmycolsrú
2018-01-01r#réÚdti)r!ržrZrÉ))r»rNr»)r»ÚohlcÚopen)r»r!r×)r»r!rØ)r»r!Úcloser )ržrNr!)
rr
rr r r0r    rer6r7rkrrrÚtest_groupby_agg_ohlc_non_firstîs
 ýø
ôr$cCstjdftdddƒdftdddƒdftdddƒdfg}tj|ddgd}tddd    d
g|d }|jdd  ¡}td d    gddgd }t     ||¡dS)Nr²iÜrKr#r³rBÚdater g@r½r)rRró)
r,r.rr r r r0r[r6rd)rÂrr8rrrrrÚtest_groupby_multiindex_nat
sür&c    CsPttdƒtdƒƒ}t|ddgd}d}tjt|d| gg¡W5QRXdS)NrWZappler³rz$Grouper and axis must be same lengthrS)r6r2rrhrir;r0)rÂr9rqrrrÚtest_groupby_empty_list_raisess
r'cCsddgddgddgg}dddg}tj||d}td    d
g|d }| ddg¡ ¡}dgdgg}ddg}tj||d}td g|d }t ||¡dS)NrFr²r³rmrŽrYÚthirdr rKr#rerBr))r Ú from_arraysr r0rNr6rd)Z index_arrayZ index_namesÚrirbrÚeirrrrÚ8test_groupby_multiindex_series_keys_len_equal_group_axis#s
 r,cCs¨tjddgddggddgd}tdd    dd    gdd    d
d gd œ|d }| tdddg¡}| ddg¡}|j|jksrt‚| dtddg¡}| ddg¡}|j|jks¤t‚dS)Nrrr'rérÚbetar rKr#rBr½rðr)rR)r r˜rr0r    ràr)rr9rrrrrÚ"test_groupby_groups_in_BaseGrouper3s"r.Ú
group_namerFcCsätt d¡ dd¡dddgddddgd}d    |j_d
|j_|j|dd  ¡}|j     |¡ ¡j    }t
  ||¡d d dgddgg}t j |d
dgd}tt d¡ dd¡dddg|d}|j|dd  ¡}|j     |¡ ¡j    }t
  ||¡dS)NrPrBr½rrKrWrXrhrÍrFr’r¼rUr»rUrVÚx1)Ú    iterablesrÈérò)rr4r5rÈr*rZr¦r0rNr§r6r7r r˜)r/r9Úresultsrr1rrrrÚtest_groupby_axis_1As 
ÿ "r4z op, expectedÚshiftÚtimeú2019-01-01 12:00:00ú2019-01-01 12:30:00Zbfillú2019-01-01 14:00:00ú2019-01-01 14:30:00ÚffillcsŒ|‰ddddddgtdƒtdƒddtdƒtdƒgdœ}t|ƒj‡fdd    „d
}| d ¡}t||ƒƒ}t|ƒj‡fd d    „d
}t ||¡dS) Nrrr7r8r9r:)rr6cs|jj ˆ¡SrL©r6r¤Z tz_localizerEr%rrrG‘rHz+test_shift_bfill_ffill_tz.<locals>.<lambda>)r6rcs|jj ˆ¡SrLr<rEr%rrrG•rH)rrZassignr0rÛr6r7)Ztz_naive_fixturer
rrkr9rlrrr%rÚtest_shift_bfill_ffill_tzWs.úþ 
 r=cCsDtdgddœƒ}| d¡d d¡}ttjgdd}t ||¡dS)NrK)r¢rFr¢rFrNr)rr0rgr r4rr6rd)r9rñrrrrÚtest_groupby_only_none_group™sr>cCsXtddddgddddgd}|jd    d
}| ¡}tdd dgdddgd}t ||¡dS) Nr#r"ròrurÀr¿rmr)rrRg@)r r0r[r6rd)r8r:rrrrrÚtest_groupby_duplicate_index£s
 r?cCs8tdtdƒddggddddgd    }|d t¡|d<|d t¡|d<| ddg¡}|d
krbd }nd }|jdd … dg¡j|f|žŽ}| dg¡j|f|žŽjdd …}|dkr¼| t¡}t     ||¡|djdd … dg¡j|f|žŽ}|d dg¡j|f|žŽjdd …}|dkr(| t¡}t     ||¡dS)NrKrrBr½Zcol_1Zcol_2Zcol_3Zcol_4©rkr¦Zfillna)r;rr)Zdiffr5)
rrr{r rËr/r0rgr6r)Ztransformation_funcrr9ÚargsrrrrrÚtest_group_on_empty_multiindex­s,
þ""
 $ÿ$ÿ
 
rBrær»r)©r²r²rCr¼r cCsn|dkrt d|›¡tddgg|d}| dg¡}t||ƒ}t||ƒ|Ž}|jdks\t‚t     |j
|¡dS)N>Úcumcountr-r,zNot applicable for rKrrr¥) rhr.rr0rrÛÚshaperr6r=r¦)Z groupby_funcrær9Zgrp_byrArrrrÚtest_dup_labels_output_shapeÌs 
rFc
Csütdddd}tddgddgddgdœƒ}d    |j_||_| |¡}|sL|j}|j|dd
}| ¡}tddgddgd œ|d }d |j_    |sŽ|j}t
  ||¡|dkr¾|gj|dd
}|g}n&|j gj|dd
}|j g  tj¡}| ¡}    t
  |    |¡dS)Nrr#r»)r!rZrKrBr)r})rr')rér)r¼rU)r“r)rrér)r¼)rrr¦rÈr*Z_get_axis_numberr§r0ZnuniquerZr6r7rur{r4r?)
r“r r9Z axis_numberr:rrrõrr¨rrrÚtest_groupby_crash_on_nuniqueás*
 
rGcCs>tt dd¡ dd¡td}|jdgd ¡}t ||¡dS)NrrArBrƒrR)    rr4r5rÈr¾r0r[r6r7)rrrrrÚtest_groupby_list_level    srHzmax_seq_items, expected)r"z({0: [0], 1: [1], 2: [2], 3: [3], 4: [4]})r½z%{0: [0], 1: [1], 2: [2], 3: [3], ...})rKz {0: [0], ...}c    Csxttj dd¡ƒ}|j|d<t d|¡F| d¡j     ¡}||ksFt
‚| t  |j ¡¡j     ¡}||ksjt
‚W5QRXdS)Nr"rKr²zdisplay.max_seq_items) rr4r_rür*r,Zoption_contextr0ràÚ__repr__rrýr²)Z max_seq_itemsrr9rrrrÚtest_groups_repr_truncates     s
 
 rJcCs†tddddœddddœgƒ}| ddg¡}| ddg¡}|j}dtjd    dgtjd
i}t|ƒdksft‚d}||||k     ¡s‚t‚dS) NrKr#écrÑéXr²r³r¥rrƒ)
rrËr0rár4rýr=rbrrä)r9r†rrrrrrÚ6test_group_on_two_row_multiindex_returns_one_tuple_key     srMzklass, attr, valuerrjrJZobservedrÚcCsntdgdgdgdœƒ}|dkr(| d¡}|jd||iŽ}|tkrJ|dgn|d}t||ƒt||ƒksjt‚dS)    NrKr#rBrÑr“r²r³)r²)rrËr0rÛr)rMr)rtr9rrrrrÚ#test_subsetting_columns_keeps_attrs.    s 
rNc    CsXtdgdgdgdœƒjdddgdd}d}tjt|d|d    d
g ¡W5QRXdS) NrKr#rBr+rr’z'Cannot subset columns when using axis=1rSrr)rr0rhrir;rN)r¢rTrrrÚtest_subsetting_columns_axis_1J    s&rOrÝÚanycCsHtdgdd}tdgg|d}| dg¡}t||ƒƒj}t ||¡dS)Nr²rærrKr)r
rr0rÛr¦r6r=)rÝrr9r£rrrrÚ#test_groupby_column_index_name_lostR    s
 rQcCs†tddddgddddgd    d
d d gd œƒ t¡}dddg|_| ddddg¡ ¡}tddd    ggt dg¡dddgtd}t     ||¡dS)Nr—rr¢ror²r³rÅrnrKr#rBr½r+rrr)r*r¦r<)
rr{rgr¦r0rEr4rýr6r7rrrrÚtest_groupby_duplicate_columns\    s"ÿþ 
 
ÿrRcCsdtddddgddddgdd}d|j_|jdd     ¡}tddgddgdd}d|j_t ||¡dS)
NrKr#rBr½rC)r*rZ)r³r³rrR)r r*rZr0Úlastr6rd)r8rrrrrÚ#test_groupby_series_with_tuple_namei    s rTzGH#38778: fail on 32-bit system)Úreasonz func, valuesç@X@ç€X@g@8@g€8@cCslddddddddg}tddgd||dœƒ}t| d    ¡|ƒƒ}t||d
œtddgd    d d }t ||¡dS) Nç€à7yÃACéaébç€à7yÃ1ÃrKr#r½©rxr²r³rxr±rr))rrÛr0r
r6r7)rÝrÂrkr9rrrrrÚ)test_groupby_numerical_stability_sum_means    s
r]cCs~ddddddddg}tddgd||dœƒ}| d    ¡ ¡}dgdd
d gd d gddg}t||dœƒ}tj||dddS)NrXrYrZr[rKr#r½r\rxg0€à7yÃACg1€à7yÃACga€à7yÃ1Cgb€à7yÃ1CrVrWr±T)Z check_exact)rr0rr6r7)rkr9rZexp_datarrrrÚ'test_groupby_numerical_stability_cumsum€    s ÿr^cCs|tj dd¡}t|ƒ}tdƒD]}tj|j||f<qd|d<| d¡}|jdd}|ddddd    gjdd}t     
||¡dS)
Nr"rKrF©Úskipnarr#rBr½) r4r_rürr2rr/r0rr6r7)rŠr9Úir:r¨rrrrÚ test_groupby_cumsum_skipna_false    s 
 rbcCsÆtddd}t|ƒ|d}tj|d<td|dœƒ}| d¡}|jd    d
d }td |d|dtj|d |d dgiƒ}t ||¡|jd    d    d }td |d|dtjtjtjgiƒ}t ||¡dS)Nrr"r rr#rKr}rFT)rîr`rr½)    rr r,r.rr0rr6r7)r r8r9r:r¨rrrrÚtest_groupby_cumsum_timedelta64    s 
 
, $rccCs4|}|jdd ¡}| |j¡ ¡}t ||¡dS)NrrR)r0r[r*r6rd)Z(rand_series_with_duplicate_datetimeindexZdupsrrrrrÚ!test_groupby_mean_duplicate_index¯    srdcCsVtdddgtjtjtjgƒ}| |j¡ ¡}tgtgtjdtjd}t     
||¡dS)NrKr#rBrƒrC) r r4rr0r*rNr
r?r=r6rd)rbrrrrrÚ test_groupby_all_nan_groups_drop¶    srecCsštgdddgd}|jddg|d}|j|d}|r^tggggggddgd}|sXdgng}ntdƒ}|stdddgnddg}tg||d    }t ||¡dS)
Nrrr'r@rœrír rrÉ)rr0rNr r r6r7)rrîr9r:rr*r¦rrrrÚtest_groupby_empty_multi_column¾    s rfcCs€tddggddggddggddgggddgd}tdddgddggitddgd    dd
d }|jdgd }| ¡}t ||¡dS) NrrKÚWrWrXZMWrnrrg©r<rZr)r¿)rr
r0rNr6r7©r9rr:rrrrÚ*test_groupby_aggregation_non_numeric_dtypeΠ   s"ÿÿürjcCs tdddddgdd„tddƒDƒdd„tddƒDƒdœƒ}tdd„td    d
ƒDƒd d„td    d
ƒDƒd œtddgd ddd}|jdgd}| ¡}t ||¡dS)NrKrcSsg|]}t|dƒ‘qS©Údays©r©r¯rarrrr·å    szDtest_groupby_aggregation_multi_non_numeric_dtype.<locals>.<listcomp>ròcSsg|]}t|ddƒ‘qS©rWrlrmrnrrrr·æ    srëcSsg|]}t|dƒ‘qSrkrmrnrrrr·ì    srOrAcSsg|]}t|ddƒ‘qSrormrnrrrr·í    s©rÍrìr=rFrhr)r¿)rr2r
r0rNr6r7rirrrÚ0test_groupby_aggregation_multi_non_numeric_dtypeà    s ýÿþûrqcCsŽtdddddgdd„tddƒDƒttddƒƒdœƒ}ttddƒtd    dƒgdd    gd
œtddgd d d d}|jd gd}| ¡}t ||¡dS)NrKrcSsg|]}t|dƒ‘qSrkrmrnrrrr·ü    szKtest_groupby_aggregation_numeric_with_non_numeric_dtype.<locals>.<listcomp>ròrërOrlrurpr=rFrhr)r¿)    rr2r1rr
r0rNr6r7rirrrÚ7test_groupby_aggregation_numeric_with_non_numeric_dtype÷    s  ýÿþrrcCsˆdddddœdddddœdddddœg}t|ƒ}||ddk}| d¡}| ¡}td    d    d
ggdd d gtdgdd d}t ||¡dS)NFTg%@)Ú
filter_colÚ groupby_colÚbool_colÚ    float_colg€4@g€>@rsrtr°g$+¿ ÆH@rurvrrÉ)rr0r3r
r6r7)Zdictsr9Z    df_filterZdfgbrrrrrÚtest_groupby_filtered_df_std
s   ý
 
 ýrwcCsžtttdƒƒttdddgƒddtjddd    gdd    gd
d œƒ}| d d g¡j}d tdƒft     
dg¡d tdƒft     
d    g¡dtdƒft     
dg¡i}||ksšt ‚dS)NÚabcrz
2018-02-01z
2018-03-01Úcategoryrƒr(rrK)Ú
categoriesrÑr²r³z2018-01-01 00:00:00z2018-02-01 00:00:00rÅz2018-03-01 00:00:00r#) rr r1rrZ
from_codesr0rárr4rýrrrrrÚ2test_datetime_categorical_multikey_groupby_indices
s$
 þúÿ
 
 
 
 
 
 
ýr{c    CsŒdgddgd}tjtjdddgtjddddg}t||gƒj}dd    g|_d
}tjt|d "| d¡d    j    ddd  
¡W5QRXdS) NZAlicer"ZBobrKr#rBr½rZršz<__init__\(\) got an unexpected keyword argument 'min_period'rS)ZwindowZ
min_period) r4rrr§r¦rhrirr0ZrollingrN)Zname_lZval_lZtest_dfZresult_error_msgrrrÚ#test_rolling_wrong_param_min_period4
s"
r|cCsvtdddgdddgdddgdœƒ}tjd    d
œ}| d g¡ |¡}tddgdgd dgddgd œƒ d ¡}t ||¡dS)NZThomasz Thomas Johni°ii„ZsadZhappy)ÚNameÚCreditÚMoodrN)rr~r}iÄ    )rr~r})rr Úmoder0rerËr6r7)r9Zaggregate_detailsrZexpected_resultrrrÚ.test_by_column_values_with_same_starting_value@
s"ýÿ 
ýÿúrcCsvddddgddddgg}tdtj|ddgdd}|jddgd     ¡}tddgtjd
d gddgdƒ}t ||¡dS) NrKrr#rBr²r³r r)rR)r°r#)r¶rB)r r r)r0rNr r6rd)rŠr8rrrrrÚ#test_groupby_none_in_first_mi_levelW
sÿr‚cCsptddddgddddgddddgdœƒ}|jdgd     ¡}tddgd
d gd œtddgdd d}t ||¡dS)NrKr#rBr½r"ròrO)Nr³rÅr¿rAé rärr))rr0rNr
r6r7rrrrÚtest_groupby_none_column_nameb
s(&r„cCsVtddgtjdgtjdgdœddgd}dd    „| d
g¡Dƒ}d d g}||ksRt‚dS) NrKr#r"rÑrFrÍr)cSsg|] \}}|‘qSrr)r¯rrvrrrr·m
sz5test_single_element_list_grouping.<locals>.<listcomp>r²)rK)r#)rr4rr0rrrrrÚ!test_single_element_list_groupingj
s(r…rÚcumprodcCsjd}td|gdœƒ}t| d¡|ƒƒ|}tddgitdgddd}|d    krZ|jd
d }t ||¡dS) NlÌL™33ffrKr±r²r³rrr))rr†Tr")rrÛr0r
r'r6r7)rÝršr9rrrrrÚ#test_groupby_avoid_casting_to_floatr
s r‡z    func, val)rNrB)rGr#cCs\tdddtjgdœ|d}t| d¡|ƒƒ}td|gitdgd|d|d}t ||¡dS)    NrKr#r±rƒr²r³r–rC)rr,ÚNArÛr0r
r6r7)Úany_numeric_ea_dtyperÝršr9rrrrrÚtest_groupby_sum_support_mask~
sýrŠz
val, dtype)éor )éÞZuintcCsìtd||gdœ|›dd}| d¡ ¡}td|dgitdgd|›dd|›d    d
}t ||¡| d¡ ¡}td||dgi|›d    d}t ||¡| d¡ ¡}td||gitdgd|›dd|›d    d
}t ||¡dS) NrKr±Ú8rƒr²r³r#r–Ú64rC)rr0rNr
r6r7rrG)ršr<r9rrrrrÚtest_groupby_overflow‹
s$ ý   ýrz skipna, val)TrBcCsTtddtjdgdœ|d}| d¡j|d}tddtj|gi|d}t ||¡dS)NrKr#r±rƒr²r_r³)rr,rˆr0rr6r7)r‰r`ršr9rrrrrÚtest_groupby_cumsum_mask¤
sþrzval_in, index, val_outr¶rÀrór¿rmrUÚblahg@g&@cCsxt|dt|ddd}| d¡ ¡}t|dtddddgddd}t ||¡| ¡ d¡ ¡}| ¡}t ||¡dS)NrÂr‘r)rkrZr*r¼rUr»)r r
r0rNr6rdr-r7)Zval_inr*Zval_outZseriesrrrrrÚ(test_groupby_index_name_in_index_content°
sý r’rôrWé rrÖcCs`tddg|dœƒ}|d d¡|d<| d¡ ¡}td|gitdgddd}t ||¡dS)NrKT)rtr r rtrr))rÚeqr0rNr
r6r7)rôr9rrrrrÚtest_sum_of_booleansÏ
s
r•z<ignore:invalid value encountered in remainder:RuntimeWarningrÞÚtailr&rŽrScCs¶tdtjdtjdgtdƒdœƒ}|dkr@t| d¡|ƒdd    }nt| d¡|ƒƒ}|d
kr‚td dd d giƒ tdddgdd¡}n$tdddgdd d gdœdd d gd}t     ||¡dS)Nr²r³rÅr"r}r&rr)rô)rŽrSrr#r½rr))
rr4rr2rÛr0rËr r6r7)rr9rrrrrÚtest_groupby_method_drop_naÙ
s ÿ$r—c    Cs&tjdddd}ttdƒƒd}| ¡}| |¡}tjtdd|     ¡W5QRXtjtdd| 
¡W5QRXtjtd    d|  ¡W5QRXtjtd
d|  ¡W5QRX|  ¡}|d d…}ttdƒtjd |_t ||¡| ¡}|dd…}ttdƒtjd |_t ||¡dS) NrrrérrWz+Period type does not support sum operationsrSz.Period type does not support cumsum operationsz,Period type does not support prod operationsz/Period type does not support cumprod operationsiöÿÿÿrƒ)r,Ú period_ranger1r2Z    to_seriesr0rhrirrNrrGr†r r
r4Úint_r*r6rdrE)ÚpiZgrpsr8r:r¨rrrrÚtest_groupby_reduce_periodï
s4
ÿÿ   r›cCsXtddddggƒ}ddddg|_| |d¡}|j}|jdddgdd}t ||¡dS)NrrKr#rBr’)rr¦r0Z_obj_with_exclusionsrãr6r7)r9r:rrrrrÚ*test_obj_with_exclusions_duplicate_columns s rœ)°rÚdecimalrÚnumpyr4rhZ pandas.compatrZ pandas.errorsrrZpandasr,rrr    r
r r r rrrrZpandas._testingZ_testingr6Zpandas.core.arraysrZpandas.core.commonÚcoreÚcommonr¸Zpandas.tests.groupbyrrr;rZ parametrizerrr€r‘r¤r©rµr¹rÄrÕrÜrçrìrñrþrÿrr    rrrr+r/r0r4r7r9r<r>r@rCrFrNrPrQrSrTrXrZr_rcrfrlrrrwrxr|r~rr€r†r‡rˆrŒrr•r—r™rœr r£r©r«r²r³r½r¾rÄrÅrÉrÌrÐrÑrÒrÕrárårîròrörrr˜rýrrrrr$r&r'r,r.r4r=r>r?rBr rFrGrHrJrMrNrOrQrRrTrr]r^rbrcrdrerfrjrqrrrwr{r|rr‚r„r…r‡rŠrrˆrr’r•Úfilterwarningsr—r›rœrrrrÚ<module>sV   4   
/>-
 ÿ
7(06
  8     
 
 þ
 
þ 
     & 
 
    ? 
)         
    4þ ÿ õõñÿv
 
      úÿþúÿþúÿþåþ,
 
þþ # ýþ 
 
 
 
 
 
 
 
 
 
ôþ     
ÿ                   ýýúþ     ÿ