zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
U
®ý°dY[ã@s|ddlZddlZddlmZmZmZmZmZm    Z    m
Z
ddl m Z dd„Zdd„Zej ddd    e d
g¡g¡d d „ƒZej d dejdejjdddg¡dd„ƒZdd„Zdd„Zdd„Zdd„Zdd„Zej dedd
d gd!d"d#gd$œƒdgd!gd$œdgfdd
gd!d"gd$œddgfdd
d gd!d"d#gd$œddd
gfgd fedd
d gd!d"d#gd$œƒdgd!gd$œdgfdd
gd!d"gd$œddgfdd
d gd!d"d#gd$œddd
gfgd
fedd
d gd!d"d#gd$œƒdgd!gd$œdgfdd
gd!d"gd$œddgfdd
d gd!d"d#gd$œddd
gfgdfedgd!gd$œƒgd
feƒigfgdfedejd gejd"d#gd$œƒd%gejgd$œdgfdejgejd"gd$œddgfdejd gejd"d#gd$œddd
gfgd fedejd gejd"d#gd$œƒd%gejgd$œdgfdejgejd"gd$œddgfdejd gejd"d#gd$œddd
gfgd
fedejd gejd"d#gd$œƒd%gejgd$œdgfdejgejd"gd$œddgfdejd gejd"d#gd$œddd
gfgdfg¡d&d'„ƒZej d(edd
d gƒdgdgfdd
gddgfdd
d gddd
gfgd fedd
d gƒdgdgfdd
gddgfdd
d gddd
gfgd
fedd
d gƒdgdgfdd
gddgfdd
d gddd
gfgdfedd
gƒdgdgfdd
gddgfgd
feejd
gƒejgdgfejd
gddgfgd
fegd)d*gd
fg¡d+d,„ƒZd-d.„Zd/d0„Z ej d1d2d3g¡d4d5„ƒZ!ej d6dd d7d8g¡ej d1d9d:d;g¡ej d<d=d>g¡ej d?d=d>g¡ej d@dAdBdCg¡dDdE„ƒƒƒƒƒZ"dFdG„Z#dHdI„Z$dJdK„Z%dLdM„Z&dNdO„Z'dPdQ„Z(ejjdRdSej)fdTdUdV„fd:dWdV„fd9dXdV„fgdSdTd:d9gdYdZd[„ƒZ*ejjdRdSej)fdTej+fd:ej,fd9ej-fgdSdTd:d9gdYd\d]„ƒZ.d^d_„Z/d`da„Z0ej dbdcdV„dddV„g¡dedf„ƒZ1ej dbdgdV„dhdV„didV„djdV„dkdV„dldV„dmdV„dndV„dodV„dpdV„dqdV„drdV„dsdV„dtdV„dudV„g¡dvdw„ƒZ2dxdy„Z3dzd{„Z4d|d}„Z5d~d„Z6d€d„Z7d‚dƒ„Z8d„d…„Z9d†d‡„Z:ej dˆd‰dŠg¡ej d‹d=d>g¡dŒd„ƒƒZ;ej dŽe<e=g¡dd„ƒZ>ej dˆd‰dŠg¡ej d‹d=d>g¡ej dŽe<e=g¡d‘d’„ƒƒƒZ?dS)“éN)Ú    DataFrameÚ DatetimeIndexÚIndexÚ
MultiIndexÚSeriesÚisnaÚnotnacCs.tddddtjdgiƒ}|| d¡ ¡dS)NÚBrééé)rÚnpÚnanÚ    expandingÚsum©Údf©rúYd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/window/test_expanding.pyÚtest_doc_stringsrcCs|tdƒƒj}|dddS)Nér
©Ú min_periods)Úranger)Úframe_or_seriesÚcrrrÚtest_constructorsrÚwç@Úfoor c    Cs:|tdƒƒj}d}tjt|d||dW5QRXdS)Nrzmin_periods must be an integer©Úmatchr)rrÚpytestÚraisesÚ
ValueError)rrrÚmsgrrrÚtest_constructor_invalidsr&Úexpanderr
Zlsz,GH#16425 expanding with offset not supported)Úreason)ZmarkscCsXtƒ}tƒ |¡ ¡}t ||¡ttgƒd}ttgƒd |¡ ¡}t ||¡dS)N©Úindex)rrrÚtmÚassert_frame_equalr)r'ÚexpectedÚresultrrrÚtest_empty_df_expanding)s  r/cCs^ttjgƒ}|jdd ¡}tdgƒ}t ||¡|jdd ¡}ttjgƒ}t ||¡dS)Nrrgr
)rr rrrr+Úassert_series_equal)Úxr.r-rrrÚtest_missing_minp_zeroDs 
  r2cCs„tt d¡ƒ}| |¡}|dkr8tdd„tdƒDƒƒ}n*ttjgddd„td    d
ƒDƒgd ƒ}|jd    |d  ¡}t     ||¡dS) N)é
ércSs.i|]&}|tjgddd„tddƒDƒ“qS)r cSsg|] }t|ƒ‘qSr©Úfloat)Ú.0ÚjrrrÚ
<listcomp>Ysz2test_expanding_axis.<locals>.<dictcomp>.<listcomp>éé )r rr©r7ÚirrrÚ
<dictcomp>Ysz'test_expanding_axis.<locals>.<dictcomp>r4r cSsg|] }t|ƒ‘qSrr5r<rrrr9]sz'test_expanding_axis.<locals>.<listcomp>r:ér3©Úaxis)
rr ZonesZ_get_axis_numberrrrrr+r,)Z
axis_framerrAr-r.rrrÚtest_expanding_axisRs
ÿ*rBcCs>|tdƒƒjdd ¡}|tjtjdddgƒ}t ||¡dS)Nrr:rç@ç@ç@©rrÚcountr rr+Ú assert_equal©rr.r-rrrÚ%test_expanding_count_with_min_periodscsrJcCsNdddtjdddg}ddd    d    d
d d g}||ƒ ¡ ¡}||ƒ}t ||¡dS) Nr
r r:r réçð?rrCrDrEg@)r rrrGr+rH)rÚvaluesZexpected_countsr.r-rrrÚ9test_expanding_count_default_min_periods_with_null_valuesjs
rNcCsD|tdƒƒjdd ¡}|tjtjtjtjtjgƒ}t ||¡dS)NrrKrrFrIrrrÚ=test_expanding_count_with_min_periods_exceeding_series_lengthtsrOzdf,expected,min_periodsr:r rrK)ÚAr    rLcCs8dd„|Dƒ}t|| |¡ƒD]\}}t ||¡qdS)NcSsg|]\}}t||d‘qS©r))r©r7rMr*rrrr9ºsz1test_iter_expanding_dataframe.<locals>.<listcomp>)Úziprr+r,)rr-rÚactualrrrÚtest_iter_expanding_dataframe{s?rUzser,expected,min_periodsÚint64©ÚdtypecCs8dd„|Dƒ}t|| |¡ƒD]\}}t ||¡qdS)NcSsg|]\}}t||d‘qSrQ)rrRrrrr9Ísz.test_iter_expanding_series.<locals>.<listcomp>)rSrr+r0)Úserr-rrTrrrÚtest_iter_expanding_seriesÀs rZc    Cs0tƒ}tjtdd|jddW5QRXdS)Nz.* got an unexpected keywordr T)Úcenter)rr"r#Ú    TypeErrorrrrrrÚtest_center_invalidÓsr]cCsX|dddgƒ}| ¡ ¡}t|tƒr2t|djƒ}ttjgdgdƒ}t     ||¡dS)Nrr
r g»¹øÛž æ?)
rZsemÚ
isinstancerrrMr rr+r0)rÚobjr.r-rrrÚtest_expanding_semÚs  
r`ÚmethodÚskewÚkurtcCsLttj d¡ƒ}t| d¡|ƒƒ}|d}t| d¡|ƒƒ}t ||¡dS)Nr3r:iˆ)rr ÚrandomÚrandÚgetattrrr+r0)raÚsr-r.rrrÚ,test_expanding_skew_kurt_numerical_stabilityäs
rhÚwindowr3r4ÚminÚmaxZaverageÚpctTFÚ    ascendingÚ    test_dataÚdefaultÚ
duplicatesÚnansc        s°d}|dkr ttj |¡d}nN|dkr>ttj d|¡d}n0|dkrnttj ddd    tjtjtj g|¡d}| |¡ ‡‡‡fd
d „¡}| |¡j    ˆˆˆd }t
  ||¡dS) Nr4ro)Údatarpr:rqrLgÐ?gè?cs|jˆˆˆdjdS)N©rarlrméÿÿÿÿ)ÚrankÚiloc©r1©rmrarlrrÚ<lambda>ÿóztest_rank.<locals>.<lambda>rs) rr rdreÚchoicerÚinfrÚapplyrur+r0)    rirarlrmrnÚlengthrYr-r.rrxrÚ    test_rankîs ÿ
ÿrcCsZ| ¡}|tj t|ƒ¡dd…}| ¡ |¡}|jt|ƒdd |¡}t     ||¡dS©Néûÿÿÿr
©rir)
Zdropnar rdÚrandnÚlenrÚcorrÚrollingr+Úassert_almost_equal©ÚseriesrPr    r.Úrolling_resultrrrÚtest_expanding_corrs
r‹cCs2|jdd ¡}t ||jt|ƒdd ¡¡dS)Nrrr‚)rrGr+r‡r†r„)r‰r.rrrÚtest_expanding_counts
ÿrŒcCs6| ¡ d¡}|jt|ƒdd d¡}t ||¡dS)Nçà?r
r‚)rÚquantiler†r„r+r‡)r‰r.rŠrrrÚtest_expanding_quantilesrcCsV|}|tj t|ƒ¡dd…}| ¡ |¡}|jt|ƒdd |¡}t ||¡dSr€)    r rdrƒr„rÚcovr†r+r‡rˆrrrÚtest_expanding_cov s
r‘cCs2| ¡ ¡}|jt|ƒdd ¡}t ||¡dS©Nr
r‚)rrr†r„r+r,©Úframer.rŠrrrÚtest_expanding_cov_pairwise+s r•cCs2| ¡ ¡}|jt|ƒdd ¡}t ||¡dSr’)rr…r†r„r+r,r“rrrÚtest_expanding_corr_pairwise3s r–zfunc,static_comprÚmeancCstj|ddS©Nrr@©r r—rwrrrry>rzrycCstj|ddSr˜)r rkrwrrrry?rzcCstj|ddSr˜)r rjrwrrrry@rz)ÚidscCsŠ|t ttdƒƒtjgd¡ƒ}t|jddd|ƒƒ}t||ƒsFt‚||dd…ƒ}|t    krpt
  |d|¡nt
j |j d|dddS)Nr3r
r©rrAr;F©Z check_names)r ÚarrayÚlistrrrfrr^ÚAssertionErrorrr+r‡r0rv)ÚfuncÚ static_comprrrr.r-rrrÚtest_expanding_func:s "r¢cCsLttj d¡ƒ}t|jddd|ƒƒ}|dd… ¡ ¡s>t‚t     
|j d||dd…ƒ¡t|jddd|ƒƒ}t|j dƒs„t‚t |j d    ƒs–t‚ttj d
¡ƒ}t|jd dd|ƒƒ}t|d ƒsÌt‚t |d ƒsÜt‚t|jddd|ƒƒ}t|jddd|ƒƒ}t     
||¡t|jddd|ƒƒ}t     
|j d||dd…ƒ¡dS)Né2érr›értéé ér4rr:r r
) rr rdrƒrfrrÚallrŸr+r‡rvr)r r¡rYr.Úser2Úresult0Úresult1rrrÚtest_expanding_min_periodsPs  r­cCs¬|\}}|t ttdƒƒtjgd¡ƒ}|jddjdd„||d}t||ƒsTt‚|t    kr€t
  |dtj |dd…d    d
¡n(t
j |jdtj |dd…d    d
d d dS) Nr3r
rcSs| ¡S©N©r—rwrrrrysrzz&test_expanding_apply.<locals>.<lambda>©ÚrawÚengineé    r;rr@Frœ)r rržrrrr}r^rŸrr+r‡r—r0rv)Úengine_and_rawrr²r±rrr.rrrÚtest_expanding_applyos" ÿ$ÿrµcCs||\}}ttj d¡ƒ}|jddjdd„||d}|dd… ¡ ¡sLt‚t     
|j dt  |dd…¡¡|jd    djd
d„||d}t|j d ƒsšt‚t |j d ƒs¬t‚ttj d ¡ƒ}|jddjdd„||d}t|dƒsèt‚t |dƒsøt‚|jddjdd„||d}|jddjdd„||d}t     
||¡|jddjdd„||d}t     
|j dt  |dd…¡¡dS)Nr£r¤rcSs| ¡Sr®r¯rwrrrry„rzz2test_expanding_min_periods_apply.<locals>.<lambda>r°r¥rtr¦cSs| ¡Sr®r¯rwrrrry‹rzr§r¨r4rcSs| ¡Sr®r¯rwrrrry’rzr:r rcSs| ¡Sr®r¯rwrrrry™rzr
cSs| ¡Sr®r¯rwrrrryœrzcSs| ¡Sr®r¯rwrrrry¡rz)rr rdrƒrr}rr©rŸr+r‡rvr—r)r´r²r±rYr.rªr«r¬rrrÚ test_expanding_min_periods_applysR ÿ  ÿ ÿ ÿ ÿ  ÿr¶ÚfcCs|jddj|ddS©NrrT©Úpairwise©rrrwrrrry©rzcCs|jddj|ddSr¸©rr…rwrrrryªrzcCs¨tƒ}ttdgddtgddd}|d d¡|d<tt |j|jg¡d}ttj|j|jgddgdtdgdddd    }||ƒ}t ||¡||ƒ}t ||¡dS)
NÚar©ÚnameÚbar©Úcolumnsr*Úfloat64r))Únames)r*rÂrX)    rrÚastyperZ from_productr*rÂr+r,)r·Údf1Údf2Ú df1_expectedÚ df2_expectedÚ
df1_resultÚ
df2_resultrrrÚ*test_moment_functions_zero_length_pairwise¦s ý rÌcCs | ¡ ¡Sr®)rrGrwrrrryÃrzcCs|jddj|ddS©NrrFr¹r»rwrrrryÄrzcCs|jddj|ddSrÍr¼rwrrrryÅrzcCs|jdd ¡S©Nrr)rrkrwrrrryÆrzcCs|jdd ¡SrÎ)rrjrwrrrryÇrzcCs|jdd ¡SrÎ)rrrwrrrryÈrzcCs|jdd ¡SrÎ)rr—rwrrrryÉrzcCs|jdd ¡SrÎ)rZstdrwrrrryÊrzcCs|jdd ¡SrÎ)rÚvarrwrrrryËrzcCs|jdd ¡SrÎ)rrbrwrrrryÌrzcCs|jdd ¡SrÎ)rrcrwrrrryÍrzcCs|jdd d¡S)Nrrr)rrŽrwrrrryÎrzcCs|jdd ¡SrÎ)rZmedianrwrrrryÏrzcCs|jddjtddS)NrrF©r±©rr}rrwrrrryÐrzcCs|jddjtddS)NrrTrÐrÑrwrrrryÑrzc
Cs|ttjd}|}tƒ}|}tdgd}|d d¡|d<|}||ƒ}t ||¡||ƒ}t ||¡||ƒ}    t |    |¡dS)NrWr½©rÂrÃ)rr rÃrrÅr+r0r,)
r·rgZ
s_expectedrÆrÈrÇrÉZs_resultrÊrËrrrÚ!test_moment_functions_zero_lengthÀs    rÓcCs:|\}}tgtjd}t || ¡jdd„||d¡dS)NrWcSs| ¡Sr®r¯rwrrrryìrzz3test_expanding_apply_empty_series.<locals>.<lambda>r°)rr rÃr+r0rr})r´r²r±rYrrrÚ!test_expanding_apply_empty_seriesès ÿrÔcCsP|\}}tdddgƒ}|jddjdd„||d}tdddgƒ}t ||¡dS)    NrrcSst|ƒSr®)r„rwrrrryôrzz4test_expanding_apply_min_periods_0.<locals>.<lambda>r°rLrrC)rrr}r+r0)r´r²r±rgr.r-rrrÚ"test_expanding_apply_min_periods_0ðs
rÕcCsätdddgdddgd}tddgddgd}| ¡ |¡}tdddgƒ}t ||¡tdddgdddgd}| ¡ |¡}t ||¡tddd    gdddgd}tdd
d    gdddgd}| ¡ |¡}tdddd gƒ}t ||¡dS) Nr
r r:rr)réér3r³g@)rrrr+r0©Ús1Ús2r.r-Zs2arrrÚtest_expanding_cov_diff_indexùs  rÛcCsätdddgdddgd}tddgddgd}| ¡ |¡}tdddgƒ}t ||¡tdddgdddgd}| ¡ |¡}t ||¡tddd    gdddgd}tdd
d    gdddgd}| ¡ |¡}tddddgƒ}t ||¡dS) Nr
r r:rr)rLrÖr×r3r³)rrr…r+r0rØrrrÚtest_expanding_corr_diff_index s  rÜc    Csntddgddgddggtddgdd    d
}tddgddggd dgtddgdd    d }tdd gddgddggtddgdd    d
}tdd gddggd dgtddgdd    d }| ¡j|ddjd}| ¡j|ddjd}| ¡j|ddjd}| ¡j|ddjd}tddgddggtddgdd    tddgdd    d}t ||¡t ||¡t ||¡t ||¡dS)Nr
rr:r r³rPr    rr¾rÒr©r*rÂrKÚXÚYTr¹gÀgÀgÀg$ÀrÁ)rrrrÚlocr+r,©    rÆZdf1arÇZdf2ar¬Zresult2Zresult3Zresult4r-rrrÚ'test_expanding_cov_pairwise_diff_lengths8*ÿÿÿý   râc    Csntddgddgddggddgttdƒddd    }tddgddggtd
dgddddgd }td d gddgddggddgttdƒddd    }td d gddggtd
dgddddgd }| ¡j|ddjd}| ¡j|ddjd}| ¡j|ddjd}| ¡j|ddjd}tddgddggddgtddgƒd    }t ||¡t ||¡t ||¡t ||¡dS)Nr
r r:r rPr    rÀr¾rÁrrÝrrKrÞrßTr¹gð¿)rrrrr…ràr+r,rárrrÚ(test_expanding_corr_pairwise_diff_length<sBÿÿýÿ
ÿ   rãcCs†dd„}|\}}ttj dd¡ƒ}| ¡jtj||dd}| ¡j|||dd}t ||¡| ¡j||d    did
}t ||¡dS) NcSst |¡|Sr®r™)r1ÚconstrrrÚ
mean_w_argZsz4test_expanding_apply_args_kwargs.<locals>.mean_w_argr4r:)r²r±g4@)r4)r²r±Úargsrä)r±Úkwargs)    rr rdrerr}r—r+r,)r´rår²r±rr-r.rrrÚ test_expanding_apply_args_kwargsYs rèc    Cs¤|}tdgdddœƒ}|d t¡|d<| ¡}t||dƒ}|dk    r ||d}|rZddgndddg}|| |g¡jd    d
 t¡}t|j    ƒ|ks”t
‚t   ||¡dS) Nr
r r:©r½Úbrr©Ú numeric_onlyr½rêT©Zdrop) rrÅÚobjectrrfÚaggÚ reset_indexr6ržrÂrŸr+r,)    Úarithmetic_win_operatorsrìÚkernelrrÚopr.rÂr-rrrÚtest_numeric_only_framejs 
rôròr…rÚuse_argcCs¸tdddgdddœƒ}|d t¡|d<|r2|fnd}| ¡}t||ƒ}||d|iŽ}|rbdd    gndd    dg}|| t¡}    |r„|    fnd}
|     ¡} t| |ƒ} | |
d|iŽ} t || ¡dS)
Nr
r r:rérrrìr½rê)rrÅrîrrfr6r+r,)ròrìrõrÚargrrór.rÂrÇÚarg2Ú
expanding2Úop2r-rrrÚ test_numeric_only_corr_cov_frame{s
 
rúrXc
    Cs–|}tdg|d}| ¡}t||ƒ}|rb|tkrbd|›d}tjt|d||dW5QRXn0||d}| |g¡jdd     t
¡}    t   ||    ¡dS)    Nr
rWú
Expanding.ú  does not implement numeric_onlyr rëTrí) rrrfrîr"r#ÚNotImplementedErrorrïrðrÅr6r+r0)
rñrìrXròrYrrór%r.r-rrrÚtest_numeric_only_series‘s
 
rþc    CsÊtdddg|d}|r|fnd}| ¡}t||ƒ}|rt|tkrtd|›d}tjt|d||d    |iŽW5QRXnR||d    |iŽ}    | t¡}
|r–|
fnd} |
 ¡} t| |ƒ} | | d    |iŽ}t     
|    |¡dS)
Nr
r r:rWrrûrür rì) rrrfrîr"r#rýrÅr6r+r0)ròrõrìrXrYrörrór%r.rªr÷rørùr-rrrÚ!test_numeric_only_corr_cov_series¢s
 
 
rÿ)@Únumpyr r"ZpandasrrrrrrrZpandas._testingZ_testingr+rrÚmarkZ parametrizerr&ÚparamZxfailr/r2rBrJrNrOrrUrZr]r`rhrr‹rŒrr‘r•r–rr¢r—rkrjr­rµr¶rÌrÓrÔrÕrÛrÜrârãrèrôrúÚintrîrþrÿrrrrÚ<module>sD$         
    ÿþþþ
 
ýù
ýù
ýù    "ýù
"ýù
"ýùÐþ=
<<<(.úþ
 
 
      
 
 
ü
ø
 
"
ý
'þþ
ñþ