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
U
®ý°d%1ã@sÄddlZddlZddlmZmZddlmZmZm    Z    m
Z
m Z m Z m Z mZmZddlmZdd„Zdd„Zdd    „Zd
d „Zd d „Zdd„Zej ddgddgddidddœg¡dd„ƒZdd„Zdd„Zdd „Zd!d"„Zd#d$„Z ej d%d&d'ej!ej!ej!ej!gd(d)d*d)gd*d+d,d+gej!ej!ej!ej!gd)d+d,d+gd,d-d.d-gd.d/d0d1ggfd2dd3d3d)d)gd(d)d*d)gd)d+d+d)gd3d3d+d+gd)d+d,d+gd4d-d5d+gd-d/d.d+ggfg¡d6d7„ƒZ"d8d9„Z#d:d;„Z$d<d=„Z%d>d?„Z&dS)@éN)Ú    DataErrorÚSpecificationError)    Ú    DataFrameÚIndexÚ
MultiIndexÚPeriodÚSeriesÚ    TimestampÚconcatÚ
date_rangeÚtimedelta_rangecCsâttj dd¡ƒ}|jd|d}t |jj|dd|…j¡|jd|dd}|jj    |dd|…jdksnt
‚|jd|dd}t |jj|dd|…jddg¡|jd|dddg}t |jj|dd|…jddg¡dS)Né©ÚwindowÚstepé)rér) rÚnpÚrandomZrandnÚrollingÚtmÚassert_index_equalZ _selected_objÚcolumnsÚnameÚAssertionError)rÚframeÚr©rúSd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/window/test_api.pyÚ test_getitems $rc    Csptddggddgd}|jdd}tjtdd    |d
gW5QRXtjtd d    |dd
gW5QRXdS) NréÚAÚB©rr ©rzColumns not found: 'C'©ÚmatchÚCz^[^A]+$)rrÚpytestÚraisesÚKeyError)ÚdfÚgrrrÚtest_select_bad_cols's  r-c    Csdtddggddgd}|jdd}t |j ¡|d ¡¡d}tjt|d     |j    W5QRXdS)
Nrr r!r"r#r r$z%'Rolling' object has no attribute 'F'r%)
rrrÚassert_series_equalr!Úsumr(r)ÚAttributeErrorÚF)r+rÚmsgrrrÚtest_attribute_access2s  r3cCs„ttdƒtddƒddœƒ}|jd|d}|ddg ¡}ttjtjdd    d
gtjtjd d d gdœtdƒddd|…}t ||¡dS)Nr é
Úfoo©r!r"r'rrr!r"éé    ééé©r!r"ÚABr#)    rÚrangerr/rÚnanÚlistrÚassert_frame_equal©rr+rÚresultÚexpectedrrrÚtests_skip_nuisance;s$þýrEc    CsNttdƒtddƒddœƒ}|jd|d}tjtdd| ¡W5QRXdS)    Nr r4r5r6rrz)Cannot aggregate non-numeric type: objectr%)rr>rr(r)rr/)rr+rrrrÚtest_sum_object_str_raisesFsrFc     Csttdƒtdddƒdœƒ}|jd|d}|d ¡}|d ¡}|d ¡}|d     ¡}|d     ¡}| tjtjg¡}t||||gd
d }    t     
dd    gd d gg¡|    _ t   ||    ¡| tjtjdœ¡}t||gd
d }    t j ||    dd| dd d gi¡}t||gd
d }    t     ddg¡|    _ t   ||    ¡|d d dg¡}t||gd
d }    d dg|    _ t   ||    ¡d}
tjt|
d| dd ddœi¡W5QRXtjt|
d"| d ddœd ddœdœ¡W5QRX| d d gd d gdœ¡}t||||gd
d }    ddddg} t     | ¡|    _ t j ||    dddS)Nr rr4r r<rrr!r"r©ÚaxisÚmeanÚstdT©Z
check_like©r!rI)r!rJr/únested renamer is not supportedr%)rIr/)Zmean2Zsum2)r"rI)r"rJ)rr>rrIrJr/Ú    aggregaterr
rÚ from_productrrrAÚ from_tuplesr(r)r) rr+rZa_meanZa_stdÚa_sumZb_meanZb_stdrCrDr2Zexp_colsrrrÚtest_aggNsD       
 ÿ  rRÚfuncÚminrIÚmaxÚbr/ÚprodZmedian)rVÚcc    CsXtdddgdddgdddgd    œƒ}|jddd
}tjtd d | |¡W5QRXdS) Nrr rér r7éé)ÚarVrX)rrHz"axis other than 0 is not supportedr%)rrr(r)ÚNotImplementedErrorÚagg)rSr+rrrrÚtest_multi_axis_1_raises~s"r_cCs‚ttdƒtdddƒdœƒ}|jdd}|d ¡}| tjd    d
„dœ¡}|d jd d
„|d }t||gdd}tj    ||dddS)Nr rr4r r<rr$r!cSstj|ddS©Nr)Zddof©rrJ©ÚxrrrÚ<lambda>óz test_agg_apply.<locals>.<lambda>r"cSstj|ddSr`rarbrrrrd‘re)ÚrawrrGTrK)
rr>rr/r^rÚapplyr
rrA)rfr+rrQrCZrcustomrDrrrÚtest_agg_apply‰s  rhcCsÄttdƒtdddƒdœƒ}|jd|d}| tjtjg¡j}t     t
dƒd    d
gg¡}t   ||¡|d  tjtjg¡j}t d    d
gƒ}t   ||¡| d tjtjgi¡j}t d d g¡}t   ||¡dS)Nr rr4r r<rrr=r/rIr!)r!r/rL)rr>rr^rr/rIrrrOr@rrrrPrBrrrÚtest_agg_consistency–s   ric    Cs,ttdƒtdddƒdœƒ}|jdd}d}tjt|d    &| d
d d gid d d gidœ¡W5QRXt|d
 ¡|d
     ¡|d  ¡|d      ¡gdd}t
  ddddg¡|_ tjt|d    .|d
d g  dd dgidd dgidœ¡W5QRXtjt|d    &|  dd dgidd dgidœ¡W5QRXdS)Nr rr4r r<rr$rMr%r!rIr/r")Zr1Zr2rrG)ÚrarI)rjrJ)ÚrbrI)rkrJrjrJrk)rr>rr(r)rrNr
rIrJrrPrr^)r+rr2rDrrrÚtest_agg_nested_dicts§s  **ÿ
ÿ2rlcCs~ddddddddd    d
d g }td ƒtd ƒtdƒg}tdddgdddgtdƒtd ddtddddtdƒtdƒtdƒgddtjgddtjgddtjg|tdƒtdƒtdƒgd œ |d!}tdddgdddgdddgdddgdddgdddgdddgdddgdddgdddgdddgd œ |d!dd|…}|j    dd"|d# 
¡}t   ||¡|j    dd"|d$ 
¡}|  ¡ t¡dd|…}t   ||¡dS)%NÚintÚfloatÚstringÚdatetimeÚ    timedeltaÚperiodsÚfl_infÚfl_nanÚstr_nanÚdt_natÚ periods_natZ20170101Z20170203rr rg@g@g@Úabc)rrz1 sÚs)rrÚfreqz2012-01z2012-02z2012-03gð?g@ZaaZbb) rmrnrorprqrrrsrtrurvrwr#r©rÚ min_periodsr)r|r)r    rr@r r rrZInfÚNaNrÚcountrrAZnotnaZastypern)rÚcolsZ
dt_nat_colr+rDrCrrrÚtest_count_nonnumeric_types½spõ 
 ý
 
 
ýñêõ òñ r€cCsNtt d¡dd}| d¡ ¡}| d¡ ¡}|jdks<t‚|jdksJt‚dS)Nédr5)réé)rrZarangerr/rr)ryÚs2Zs3rrrÚtest_preserve_metadatas
r…zfunc,window_size,expected_valsrr g.@g4@g9@g>@g€A@gD@gN@gT@g@U@éPZ    expandingg$@g‹RB°ªª:@gI@c
 
CsÖtdddgdddgdddgdddgdddgdddgdddggd    d
d gd }t| d    ¡|ƒ}|rh||ƒ}n|ƒ}tjd ddddddgd    dgd}t ddddg¡}t|||d}| ddgddgdœ¡}    t |    |¡dS)Nr!r4rƒr‚é(r"r†éZZstockÚlowÚhighr#)r!r)r!r)r!r )r"r)r"rY)r"r )r"r7)Únames)r‰rI)r‰rU)rŠrI)rŠrT)ÚindexrrIrUrT)r‰rŠ)rÚgetattrÚgroupbyrrPr^rrA)
rSZ window_sizeZ expected_valsr+ÚfrrŒrrDrCrrrÚtest_multiple_agg_funcs
s2!ù    ö 
þ
ÿrcs`ttdƒƒjd||||d‰‡fdd„ˆjDƒ}tˆ|ƒƒ‡fdd„ˆjDƒ}||ks\t‚dS)Nr)ÚcenterÚclosedr|rcsi|]}|tˆ|ƒ“qSr©r©Ú.0Úattr©Zroll_objrrÚ
<dictcomp>Ssz=test_dont_modify_attributes_after_methods.<locals>.<dictcomp>csi|]}|tˆ|ƒ“qSrr“r”r—rrr˜Us)rr>rÚ _attributesrr)Zarithmetic_win_operatorsr’r‘r|rrDrCrr—rÚ)test_dont_modify_attributes_after_methodsLs ÿ ršc    Csàtt d¡ƒjddd|d ¡d}tjt|d&tt d¡ƒjddd|d ¡W5QRXtt d    ¡ƒjddd|d ¡tt d    ¡ƒjddd|d ¡d
}tjt|d&tt d    ¡ƒjddd |d ¡W5QRXdS) Nr4rTr)rr‘rHrz&No axis named 1 for object type Seriesr%r)r4r4z)No axis named 2 for object type DataFramer )    rrÚonesrrIr(r)Ú
ValueErrorr)rr2rrrÚtest_centered_axis_validationYs2 *ÿ
ÿ
ÿÿrc    CsŽtdddddgƒ}|jdd|d ¡}tt t|ƒ¡ƒdd|…}t ||¡d}tj    t
|d    $tdddgƒjdd|d ¡W5QRXdS)
Nrr rrYr rr{ú!min_periods 5 must be <= window 3r%) rrrTrr›Úlenrr.r(r)rœ©rr\rCrDr2rrrÚtest_rolling_min_min_periodsts r¡c    Cs†tdddddgtjd}|jdd|d ¡}|dd|…}t ||¡d    }tjt    |d
$tdddgƒjdd|d ¡W5QRXdS) Nrr rrYr )Zdtyperr{ržr%)
rrÚfloat64rrUrZassert_almost_equalr(r)rœr rrrÚtest_rolling_max_min_periods~s r£)'Únumpyrr(Z pandas.errorsrrZpandasrrrrrr    r
r r Zpandas._testingZ_testingrrr-r3rErFrRÚmarkZ parametrizer_rhrirlr€r…r?rršrr¡r£rrrrÚ<module>sf,       0ÿ
 C
 
 
 
 
 
ùý
 
 
 
 
 
 
ùýòþ
#