gL i3bddlZddlZddlmZmZddlmZmZm Z m Z m Z m Z m Z mZmZddlmZdZdZdZdZdZd Zej2j5d d gd d gddidddgdZdZdZdZdZdZ ej2j5dddejBejBejBejBggdgdejBejBejBejBggdgdgd gfd!dgd"gdgd#gd$gdgd%gd&gfgd'Z"d(Z#d)Z$d*Z%d+Z&y),N) DataErrorSpecificationError) DataFrameIndex MultiIndexPeriodSeries Timestampconcat date_rangetimedelta_rangecttjjdj d}|j d|}t j|jj|dd|j|j d|d}|jj|dd|jdk(sJ|j d|d}t j|jj|dd|jddg|j d|ddg}t j|jj|dd|jddgy)N)rrwindowstep)rr) rnprandom default_rngstandard_normalrollingtmassert_index_equal _selected_objcolumnsname)rframers b/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pandas/tests/window/test_api.py test_getitemr#s8 bii++A.>>vF GE QT *A!//1154=3H3HI QT *1-A ??  54=#8#8#; ;; ;  QT *40A!//1154=3H3H!Q3PQ QT *Aq62A!//1154=3H3H!Q3PQc&tddggddg}|jd}tjtd 5|d gdddtjtd 5|dd gdddy#1swY5xYw#1swYyxYw) NrrABrrrzColumns not found: 'C'matchCz^[^A]+$)rrpytestraisesKeyError)dfgs r"test_select_bad_colsr2's QF8c3Z 0B ! A x'? @ 3% xy 1 3* sA;*B;BBcFtddggddg}|jd}tj|jj |dj d}t jt| 5|jdddy#1swYyxYw) Nrrr&r'r(rr)z%'Rolling' object has no attribute 'F'r*) rrrassert_series_equalr&sumr-r.AttributeErrorF)r0r!msgs r"test_attribute_accessr92s{ QF8c3Z 0B ! A133779afjjl3 1C ~S 1     s  BB cttdtdddd}|jd|}|ddgj}ttj tj dd d gtj tj d d d gdt ddd|}tj||y)Nr foor&r'r,rrr&r' r&r'ABr() rrangerr5rnanlistrassert_frame_equalrr0r!resultexpecteds r"tests_skip_nuisancerL;s qa 5A BB !$ 'A Sz]   Fvvrvvq!Q'rvvrvvr2r.JKT  fH&(+r$cttdtdddd}|jd|}tjt d5|j dddy#1swYyxYw) Nrr;r<r=rrz-Cannot aggregate non-numeric type: object|strr*)rrErr-r.rr5)rr0r!s r"test_sum_object_str_raisesrNFsa qa 5A BB !$ 'A H   s A++A4cttdtdddd}|jd|}|dj}|dj }|dj }|d j}|d j }t jtd 5|jtjtjg}dddt||||gd } tjdd gddgg| _t j| t jtd 5|jtjtjd}dddt||gd } t j|| d|jdddgi}t||gd } tj ddg| _t j|| |djddg}t||gd } ddg| _t j|| d} t#j$t&| 5|jddddidddt#j$t&| 5|jdddddddddd|jddgddgd}t||||gd } gd} tj | | _t j|| dy#1swY@xYw#1swYxYw#1swYxYw#1swYxYw)Nrrr;rrCrrr&r'zusing Rolling.[mean|std]r*raxismeanstdT check_liker&rRr&rSr5nested renamer is not supported)rRr5)mean2sum2)rVrW)r'rR)r'rS)rrErrRrSr5rassert_produces_warning FutureWarning aggregaterr r from_productrrH from_tuplesr-r.r) rr0r!a_meana_stda_sumb_meanb_stdrJrKr8exp_colss r"test_aggrfPs qaQ8 9B !$ 'A sV[[]F cFJJLE cFJJLE sV[[]F cFJJLE # #M9S T0bggrvv./0vufe41=H!..c VUO/LMH&(+ # #M9S T:27789:vuoA.H&(t< [[#/ 0FvuoA.H!--}l.KLH&(+ sV  vuo .FvuoA.HH&(+ +C ) 5; S6%89:; ) 5  !%0QV7W X  [[fe_E FFvufe41=HIH!--h7H&(t)arjrm5Support for axis=1 in DataFrame.rolling is deprecatedr*rr)rrQz"axis other than 0 is not supported) rrr[r\rr-r.NotImplementedErroragg)rgr0r8r!s r"test_multi_axis_1_raisesrvs C DB AC # #M =) JJaaJ () *2V W d ))sB*BBBcttdtdddd}|jd}|dj}t j t d 5|jtjd d}ddd|d jd |}t||gd}t j|dy#1swYHxYw)Nrrr;rrCrr)r&zusing Rolling.[sum|std]r*c0tj|dSNr)ddofrrSxs r"z test_agg_apply..sBFF114Er$r'c0tj|dSryr{r|s r"r~z test_agg_apply..sRVVAA%6r$)rawrrPTrT) rrErr5rr[r\rurapplyr rH)rr0r!rbrJrcustomrKs r"test_agg_applyrs qaQ8 9B ! A cFJJLE # #M9R SHRVV*EFGHfll6Cl@Gug&Q/H&(t< HHs #$CCcttdtdddd}|jd|}tjt d 5|j tjtjgj}dddtjtd d d gg}tj|tjt d 5|d j tjtjgj}dddtd d g}tj||tjt d 5|j d tjtjgij}dddtj ddg}tj||y#1swYRxYw#1swYxYw#1swYPxYw)Nrrr;rrCrrzusing Rolling.[sum|mean]r*rDr5rRr&)r&r5rV)rrErrr[r\rurr5rRrrr^rGrrr_rIs r"test_agg_consistencyrs} qaQ8 9B !$ 'A # #M9S T2()112&&T UFO'DEH&(+ # #M9S T73RVVRWW-.667eV_%H&(+ # #M9S T9bffbgg./0889%%|]&CDH&(+22 77 99s$:G&=G()UVWX ) 5L TFE?+4&%2IJKLLRRXXLLs$E."E;F.E8;FFc@gd}tdtdtdg}tgdgdtdtddt d dd t d t d t dgddt jgddt jgddt jg|t d t d t dgd |}tgdgdgdgdgdgdgdgdgdgdgdd |dd|}|jdd|j}tj|||jdd|j}|jjtdd|}tj||y)N) intfloatstringdatetime timedeltaperiodsfl_inffl_nanstr_nandt_nat periods_nat2017010120170203rrr)g@g@g@abcr)rz1 ss)rfreqz2012-01z2012-02z2012-03?@aabbr()rrr)rrrrrr min_periodsrr)rr)r rrGr r rrinfrFrcountrrHnotnaastyper)rcols dt_nat_colr0rKrJs r"test_count_nonnumeric_typesrs DJ':)> $PJ $5k":q9(Dy!y!y! C(C(dBFF+ y!y!t  *- B2"$%'(&%%&%*  fH"ZZqadZ ; A A CF&(+ ZZqtZ 4 : : @A@r)rrrr)rD@N@r)rT@g@U@P expanding)$@rrr)rrrr)rrrr)gRB:@rgI@r)rrrrc tgdgdgdgdgdgdgdggd }t|jd |}|r ||}n|}tjgd d dg }tjgd }t|||}|j ddgddgd} t j| |y)N)r&r;r)r&rr)r&r()r'r;r)r'rr)r'rr)r'rZ)stocklowhighr(r))r&r)r&r)r&r)r'r)r'ro)r'r)r'r>)names))rrR)rri)rrR)rrh)indexrrRrirh)rr)rgetattrgroupbyrr_rurrH) rg window_size expected_valsr0frrrrKrJs r"test_multiple_agg_funcsrsB         ) B  7#T*A;  " "No E$$LGeWEH ZZ&%I JF&(+r$c(ttdjd||||}|jDcic]}|t ||}}t |||jDcic]}|t ||}}||k(sJycc}wcc}w)Nr)centerclosedrr)r rEr _attributesr) arithmetic_win_operatorsrrrrroll_objattrrKrJs r")test_dont_modify_attributes_after_methodsrVseAh'' &[t(H;C:N:NO$gh--OHO/GH./18@8L8L MdGHd++ MF M X  P Ms B ,Bcd}tjt|5tt j dj ddd|jdddd}tjt|5tt j dj ddd |jdddtt j d }d }tjt|5|j ddd|jdddd }tjt|5|j ddd |jdddd }tjt|5|j ddd|jdddy#1swYixYw#1swYxYw#1swYxYw#1swYyxYw#1swYyxYw)Nz2The 'axis' keyword in Series.rolling is deprecatedr*r;rTr)rrrQrz&No axis named 1 for object type Seriesr)r;r;z5The 'axis' keyword in DataFrame.rolling is deprecatedrsz)No axis named 2 for object type DataFramer) rr[r\r ronesrrRr-r. ValueErrorr)rr8r0s r"test_centered_axis_validationrcs >C # #M =Urwwr{##1T#MRRTU 3C z -Urwwr{##1T#MRRTU 2778$ %B AC # #M =D !Dqt <AACD AC # #M =D !Dqt <AACD 6C z -F 1T = B B DFF'UU UU DDDD FFs=AGAG$G$G+$G7GGG(+G47Hctgd}|jdd|j}ttjt |dd|}t j||d}tjt|5tgdjdd |jdddy#1swYyxYw) Nrrrrorrrr!min_periods 5 must be <= window 3r*rrr) r rrhrrlenrr4r-r.rrrrrJrKr8s r"test_rolling_min_min_periodsr}sA YYcqtY < @ @ BFbggc!fo&vv.H68, -C z -Ly!!!EIIKLLLs .CCc|tgdtj}|jdd|j }|dd|}t j ||d}tjt|5tgdjd d |j dddy#1swYyxYw) Nr)dtyperrrrr*rrr) r rfloat64rrirassert_almost_equalr-r.rrs r"test_rolling_max_min_periodsrsbjj1A YYcqtY < @ @ BF4yH68, -C z -Ly!!!EIIKLLLs ;.B22B;)'numpyrr- pandas.errorsrrpandasrrrrr r r r r pandas._testing_testingrr#r2r9rLrNrfmark parametrizervrrrrrrFrrrrrr$r"rsc     R  ,/=d eWvuoU|65Q R =,(L,@,F$  0((0((&    (((((-(  > ,?> ,F F4LLr$