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
U
­ý°d-Nã@sddlmZddlZddlZddlmZddlmZddl    Z
ddl    m Z m Z m Z mZmZddlmZddlmZe dgdd    gd
d gd e d ¡dœeddd ddZeƒdd„ƒZdd„Zdd„Zdd„Zdd„Zdd„Zdd „Zej d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0g¡d1d2„ƒZ d3d4„Z!ej d!d5d6g¡d7d8„ƒZ"d9d:„Z#d;d<„Z$d=d>„Z%d?d@„Z&dAdB„Z'dCdD„Z(dEdF„Z)dGdH„Z*dIdJ„Z+ej dKdLgdLdMgg¡dNdO„ƒZ,ej dPdQdRg¡dSdT„ƒZ-dUdV„Z.ej dKdLgdLdMgg¡dWdX„ƒZ/dYdZ„Z0d[d\„Z1d]d^„Z2d_d`„Z3dadb„Z4dS)cé)ÚdedentN)Úis_platform_windows)Ú
async_mark)Ú    DataFrameÚIndexÚSeriesÚTimedeltaIndexÚ    Timestamp)Ú
date_rangeéééé ééé(©ÚAÚBú1/1/2000Ús©ÚfreqÚperiods©Úindexc
Ãsdddlm}tdƒ}| |¡IdHt d¡,|dƒt|j dd¡ƒW5QRXW5QRXdS)Nr)ÚprovisionalcompleterzZ    import pandas._testing as tm
    s = tm.makeTimeSeries()
    rs = s.resample("D")
    Úignorezrs.r )    ZIPython.core.completerrrZrun_codeÚtmZassert_produces_warningÚlistZ    CompleterZ completions)ÚiprÚcode©r"úcd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/resample/test_resampler_grouper.pyÚ"test_tab_complete_ipython6_warnings ÿ 
r$c Csdddgdddgdddgddd    gd
ddgdd d gd d dgdd dgdd d    gdd dgg
}t|dddgd}t |j¡|_dd„}| d¡ |¡}| d¡ d¡ d¡ ¡}t     
||¡tt ddddddddgd dd    dgdœƒ d¡}dd „}| d!¡ |¡}| d!¡ d"¡  ¡}t     
||¡dS)#Nz
2010-01-01rr z
2010-01-02rz
2010-01-05rz
2010-01-10éz
2010-01-13réz
2010-01-03z
2010-01-04r z
2010-01-11z
2010-01-14ÚdateÚidZscore©ÚcolumnscSs| d¡ d¡ ¡S)Nr'ÚD)Ú    set_indexÚresampleÚasfreq©Úxr"r"r#Úf_0Asz'test_deferred_with_groupby.<locals>.f_0r+ú
2016-01-01éÚW)Ústartrré©r'ÚgroupÚvalcSs| d¡ ¡S)NÚ1D)r-Úffillr/r"r"r#Úf_1Psz'test_deferred_with_groupby.<locals>.f_1r8r:) rÚpdÚ to_datetimer'ÚgroupbyÚapplyr,r-r.rÚassert_frame_equalr
r;)ÚdataÚdfr1ÚexpectedÚresultr<r"r"r#Útest_deferred_with_groupby.s:ö   
 
ýÿúrFcCsrt d¡}|j dd„¡}| d¡j ¡}t ||¡|j d¡ ¡}t ||¡| d¡ ¡j}t ||¡dS)NrcSs| d¡ ¡S©NÚ2s)r-Úmeanr/r"r"r#Ú<lambda>[óztest_getitem.<locals>.<lambda>rH)Ú
test_framer?rr@r-rIrÚassert_series_equal)ÚgrDrEr"r"r#Ú test_getitemXs
  rOcCs¢dddœdddœg}t|tdddd}| d    ¡ d
¡}|d  ¡}tddgtjjdt    dƒfdt    d ƒfgd    dgd d d}t
  ||¡|d  ¡}t
  ||¡dS)Nr r)r(Úbuyerr rr2©rrr(r:rPz
2016-01-02©Únames)rÚname) rr
r?r-Úcountrr=Ú
MultiIndexÚ from_tuplesr    rrM)rBrCÚrrErDr"r"r#Útest_getitem_multiplegs þú  rYcCsfttdƒtdddddœƒ}| d¡ d¡ d    ¡d
 ¡}| d¡jd    dd d
 ¡}t ||¡dS) NZaabbbz1-1-2016r&rQr )r(r'rBr'r(Ú2DrB©Úon)    rrr
r,r?r-ÚsumrrM)rCÚexprEr"r"r#Ú)test_groupby_resample_on_api_with_getitem|s ÿr_c    Cs^d}d\}}d}t||dd}ttj t|ƒ¡|d}|||…}tj|d}| |¡     d¡}|||…}| |¡     d¡}    t
j t dd    t  |j|    j¡W5QRXtd
ƒ}
tj||
d } | | ¡     d¡} | ||…} | | ¡     d¡} t  | | ¡td
ƒt d¡d }tj||d }| |¡     d¡}|||…}| |¡     d¡}t  ||¡t  | |¡dS) NZ1399min)z1/1/2000 00:00:00z1/31/2000 00:00z1/15/2000 00:00:00Z1231min©rrrUzIndex are different©Úmatchr)rÚorigini0u)r
rÚnpÚrandomÚrandnÚlenr=ÚGrouperr?ÚaggÚpytestÚraisesÚAssertionErrorrÚassert_index_equalrr    rMZ    Timedelta)rr5ÚendZmiddleÚrngÚtsZts2Zsimple_grouperZcount_tsZ    count_ts2rcZadjusted_grouperZadjusted_count_tsZadjusted_count_ts2Z origin_futureZadjusted_grouper2Zadjusted2_count_tsZadjusted2_count_ts2r"r"r#Útest_groupby_with_origin†s2       rqc
Csltdddd}ttdƒ|d d¡ ¡}tdddddd    d    gtjd
d d d dddgdddd}t ||¡dS)NrrÚT©rrrZ20srr r z2000-01-01 00:00:00z2000-01-01 00:00:20z2000-01-01 00:00:40z2000-01-01 00:01:00z2000-01-01 00:01:20z2000-01-01 00:01:40z2000-01-01 00:02:00zdatetime64[ns]Z20S)Údtyper)    r
rÚranger-Únearestr=Z DatetimeIndexrrM)rrErDr"r"r#Ú test_nearest¯s$ù    õþrwÚfÚfirstÚlastÚmedianZsemr]rIÚminÚmaxÚsizerUrvZbfillr;r.ZohlccsBt d¡}| d¡}t|ˆƒƒ}| ‡fdd„¡}t ||¡dS)NrrHcst| d¡ˆƒƒSrG©Úgetattrr-r/©rxr"r#rJárKztest_methods.<locals>.<lambda>)rLr?r-r€r@rZ assert_equal©rxrNrXrErDr"rr#Ú test_methodsÈs
 
 
 rƒcCs>t d¡}| d¡}|j ¡}|j dd„¡}t ||¡dS)NrrHcSs| d¡ ¡SrG)r-Únuniquer/r"r"r#rJêrKz&test_methods_nunique.<locals>.<lambda>)rLr?r-rr„r@rrM)rNrXrErDr"r"r#Útest_methods_nuniqueås
 
 
 
r…ZstdÚvarcsFt d¡}| d¡}t|ˆƒdd}| ‡fdd„¡}t ||¡dS)NrrHr ©Zddofcst| d¡ˆƒddS)NrHr r‡rr/rr"r#rJórKz&test_methods_std_var.<locals>.<lambda>)rLr?r-r€r@rrAr‚r"rr#Útest_methods_std_varîs
 
 
rˆcCslt d¡}| d¡}| d¡ ¡}dd„}| |¡}t ||¡dd„}| |¡}| d¡}t ||¡dS)NrrHcSs| d¡ ¡SrG)r-r]r/r"r"r#r1þsztest_apply.<locals>.f_0cSs| d¡ dd„¡S)NrHcSs| ¡S©N©r])Úyr"r"r#rJrKz)test_apply.<locals>.f_1.<locals>.<lambda>)r-r@r/r"r"r#r<sztest_apply.<locals>.f_1Úint64)rLr?r-r]r@rrAZastype)rNrXrDr1rEr<r"r"r#Ú
test_apply÷s
 
 
 
 
rcCsªtdddd}tdtj t|ƒ¡i|d}dd„}| tjd    d¡     |¡}| 
d    ¡     |¡}t   ||¡|djtjd    dd
d      |¡}|d 
d    ¡     |¡}t   ||¡dS) Nz1-1-2015z12-31-15r+r`Úcol1©rBrcSstddgddgd}|S)Nr r ÚaÚbr)r)r0rr"r"r#rxsz(test_apply_with_mutated_index.<locals>.fÚMF)Z
group_keys)r
rrdreZrandrgr?r=rhr@r-rrArM)rrCrxrDrEr"r"r#Útest_apply_with_mutated_index s  r“cs¦tj ddg¡}tdddd}tt dgd¡ dd    ¡||d
}d d „|jDƒ‰|     d ¡ 
‡fdd„¡}td    ddggtddd    dtj ddg¡d
}t   ||¡dS)N)rrÚÚone)rr‘ÚiZtwoz
2017-01-01Z15Minr)r5rrrér ©rr*cSs&i|]}||ddkrtjntj“qS)rr•)rdr]rI)Ú.0Úcolr"r"r#Ú
<dictcomp>&sz1test_apply_columns_multilevel.<locals>.<dictcomp>ÚHcsˆ|j|ƒSr‰©rTr/©Zagg_dictr"r#rJ'rKz/test_apply_columns_multilevel.<locals>.<lambda>gZ1H) r=rVrWr
rrdÚarrayZreshaper*r-r@rrA)ÚcolsÚindrCrErDr"ržr#Útest_apply_columns_multilevel!s"  ÿýr¢c    CsÂtdddd}t|dddddgdddddgdœd    }| d
¡jd d d  ¡}tjddddgtjdt     t ddddg¡¡g}tj
j |d
dgd}tddddgddddgdœ|d}t   ||¡dS)Nz
2000-01-01rZr&rrr r )Úcol0rŽ)rrBr£Z1WÚleft)Úlabel©rtz
1999-12-26z
2000-01-02rRr)r
rr?r-r]rdrŸrŒr=r>rVÚ from_arraysrrA)rrCrEÚmiZmindexrDr"r"r#Ú test_resample_groupby_with_label2s&ÿþÿr©cCsŠt}tdddgdd}| d¡ d¡ ¡}|jjdks:t‚t     |jj
d|¡| d¡  d¡ ¡}|jjdksrt‚t     |jj
d|¡dS)    Nr r rrrrHrr ) rLrr?r-rIrZnlevelsrlrrmÚlevelsZrolling)rCrDrEr"r"r#Útest_consistency_with_windowFsr«cCsnttj dd¡tdƒtddddd}| ¡}dd    d
g|_| d ¡     ¡}| d ¡     ¡}|j|_t
  ||¡dS) Nr rZaaaú
2012-01-01rrs©r*rrr‘ÚcZ5s) rrdrerfrr
Úcopyr*r-r{rrA)rCÚdf2rDrEr"r"r#Útest_median_duplicate_columnsSs  ý r±cCsˆttdƒtddƒdœtddddd}| d¡ d    d
„¡}td d d dgtddddd}t ||¡| d¡ dd
„¡}t ||¡dS)Né
r )ršrŽr¬Z20minrsrrœcSs
|j ¡Sr‰)ršr]©r8r"r"r#rJkrKz0test_apply_to_one_column_of_df.<locals>.<lambda>rréé    r3cSs |d ¡S)NršrŠr³r"r"r#rJrrK)rrur
r-r@rrrM©rCrErDr"r"r#Útest_apply_to_one_column_of_dfcs þ
ÿ r·c Cs’tddddddddgddddddd    d
gd d d dddd dgdœƒ}t |d¡|d<| d¡jddd}|dg ¡}| ddi¡}t ||¡dS)NZcat_1Zcat_2r&r érr3ér²é2z2019-2-1z
2018-02-03z    2020-3-11z2019-2-2z    2018-12-4z
2020-12-12)ÚcatÚnumr'r'r»ÚYr[r¼r])    rr=r>r?r-r]rirrA)rCÚ    resampledrDrEr"r"r#Útest_resample_groupby_aggvs6ø
øôÿr¿cCsˆtdƒ}tdgdgdœt|gddd}| d¡ d    ¡d
}| d d g¡}tdd ggtjjd|fgddgdd d gd}t     
||¡dS)Nz2021-02-28 00:00:00ÚbetaéE)ÚclassÚvaluer'rrrÂr’rÃr]r~r rRr˜) r    rrr?r-rir=rVrWrrA)rprCr¾rErDr"r"r#Ú"test_resample_groupby_agg_listlikešs ýrÄÚkeysrr‘cCs€tgddgtgƒd}| |¡jt d¡d ¡}tddgdj|ddjtgƒd    d
}t|ƒd krp|d |j    _
t   ||¡dS) Nrr‘r­ú00:00:01©Zruler)F©ÚdropT)Úappendr r) rrr?r-r=Ú to_timedeltarIr,rgrrTrrA©rÅrCrErDr"r"r#Ú
test_empty¨sÿþÿ  rÍÚ consolidateTFcCsøtdddd}td|tdƒddœƒ}td|tdƒd    œƒ}tj||gd
d }|rV| ¡}| d g¡jd dd ¡}tj    j
dgddgdt  dddgd¡gd dgd}tdgddgddddgddgdt j gddœ|d}t ||¡dS)Nz
2020-01-01ér+rsrr9)Úkeyr'rŽÚ
col_objectr)rÐr'rŽT)Z ignore_indexrÐr4r'r[rz
2020-01-05z
2020-01-12z
2020-01-19r rRrr&r)rÐrŽrÑr)r
rrur=ÚconcatZ _consolidater?r-r|rVr§r>rdÚnanrrA)rÎÚdatesZdf1r°rCrEÚidxrDr"r"r#Ú.test_resample_groupby_agg_object_dtype_all_nan¸s*þû ýúrÖc Cs°ttdddddddddddgddddd    d
ddgd œd }| d ¡jddddg ¡}tdddddgitdtdƒfdtdƒfdtdƒfdtdƒfgddd}t ||¡dS)Nr2r©r5rrr r%r&r rr²r7)rBr8rZr'r[r9ç@g @g@g@ú
2016-01-03ú
2016-01-05ú
2016-01-07©r8r'©rBrTr)    rr
r?r-rIrr    rrAr¶r"r"r#Ú'test_groupby_resample_with_list_of_keysÖs*
ýÿ
ÿ
 
 
 
üùürÞcCs®tgdddgd}t |d¡|d<| d¡}| |¡jt d¡d ¡}tdddgdj|dd}t |d¡|d<|jdd    d    d
}t|ƒd krž|d |j    _
t   ||¡dS) Nrr‘r'r)rÆrÇFrÈT)rÊrÉr r) rr=r>r,r?r-rËrIrgrrTrrArÌr"r"r#Útest_resample_no_indexñs
  rßcCs¬ttt dddg¡ddd}| dddg¡jt d    ¡d
 ¡}t dd ddg¡}ttjt    j
ddgt    j d |gddddgddd dggddgdd}t j ||tƒ ddS)Nz2018-01-01 00:00:00z2018-01-01 12:00:00z2018-01-02 00:00:00r'rrrr z06:00:00rÇz2018-01-01 06:00:00r¦r r)rªÚcodesrS)Zcheck_index_type)rrr=r>r?r-rËrIrVrdrŸZintprrAr)rCrErrDr"r"r#Útest_resample_no_columnss0ÿüÿ"üÿýÿ    rác    Cs®tdgddgddgddgdt d¡dœtddddd    }| d
¡ d ¡ ¡}tdtj    j
dt d ƒfdt d ƒfdt d ƒfdt d ƒfgd
dgdd    }t   ||¡dS)Nr rr rrz31/12/2000 18:00rœrrrr+z
2000-12-31z
2001-01-01rR)rrdÚaranger
r?r-r~rr=rVrWr    rrMr¶r"r"r#Ú)test_groupby_resample_size_all_index_same s"2 þ
 
 
 
üùþ rãc
Cs´tddddddddgddddddddgd    œttd
d d d dd}| d¡ d¡dg ¡}tdddddgitdtd
ƒfdtdƒfdtdƒfdtdƒfgddd}t     ||¡dS)Nrr rr3r&rµr r6©r8r9r2rr×r'rrr8rZr9ç@ç@ç@rØrÙrÚrÛrÜrÝ©
rrr
r?r-rIrr    rrAr¶r"r"r#Ú0test_groupby_resample_on_index_with_list_of_keys6s0þ
þû
 
ÿ
 
 
 
üùüréc Csätddddddddgddddddddgdd    dd
dd
dd
gddddddddgd œttd d
d ddd}| d¡ d¡ddg ¡}tddddgddddgdœtdtd ƒfdtdƒfdtdƒfdtdƒfgdd d}t     ||¡dS)!Nrr rr3r&rµr r6r%r)r8Ú    first_valÚ
second_valZ    third_valr2r×r'rrr8rZrêrërårærçrØg@g@)rêrërÙrÚrÛrÜrÝrèr¶r"r"r#Ú>test_groupby_resample_on_index_with_list_of_keys_multi_columnsTs4ü
þù 
 
þ
 
 
 
üùûrìc
Csztddddddddgddddddddgd    œttd
d d d dd}tjtdd | d¡ d¡dg ¡W5QRXdS)Nrr rr3r&rµr r6rär2rr×r'rrzColumns not foundrar8rZZval_not_in_dataframe)    rrr
rjrkÚKeyErrorr?r-rI)rCr"r"r#Ú?test_groupby_resample_on_index_with_list_of_keys_missing_columnusþ
þû
rî)5ÚtextwraprÚnumpyrdrjZ pandas.compatrZpandas.util._test_decoratorsrZpandasr=rrrrr    Zpandas._testingZ_testingrZpandas.core.indexes.datetimesr
rârLr$rFrOrYr_rqrwÚmarkZ parametrizerƒr…rˆrr“r¢r©r«r±r·r¿rÄrÍrÖrÞrßrárãrérìrîr"r"r"r#Ú<module>s€     ( þ
*
)ñþ
        
 $
 
 
!