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
Ë
nñúhãó —dZddlmZddlmZddlZddlZddlm    Z    ddl
m Z erddl m Z ejddd    ¬
«                                                                dd „«Zejddd    ¬
«                                                dd „«Zejddd    ¬
«                                                dd „«Zejddd    ¬
«                                                dd„«Zy)z
Numba 1D mean kernels that can be shared by
* Dataframe / Series
* groupby
* rolling / expanding
 
Mirrors pandas/_libs/window/aggregation.pyx
é)Ú annotations)Ú TYPE_CHECKINGN)Úis_monotonic_increasing)Úgrouped_kahan_sum)ÚnptTF)ÚnopythonÚnogilÚparallelcó —tj|«s2|dz }||z
}||z}||z
|z
}|}|dkr|dz }||k(r|dz }nd}|}||||||fS©Nér©ÚnpÚisnan)    ÚvalÚnobsÚsum_xÚneg_ctÚ compensationÚnum_consecutive_same_valueÚ
prev_valueÚyÚts             úSH:\Change_password\venv_build\Lib\site-packages\pandas/core/_numba/kernels/mean_.pyÚadd_meanrs€ô 8‰8CŒ=Ø ‰    ˆØ ,Ñ ˆØ A‰IˆØ˜5‘y 1‘}ˆ ØˆØ Š7Ø a‰KˆFà *Ò Ø &¨!Ñ +Ñ &à)*Ð &؈
à ˜  Ð.HÈ*Ð TÐTócó€—tj|«s$|dz}| |z
}||z}||z
|z
}|}|dkr|dz}||||fSr r)rrrrrrrs       rÚ remove_meanr3s^€ô 8‰8CŒ=Ø ‰    ˆØ ˆD<Ñ ˆØ A‰IˆØ˜5‘y 1‘}ˆ ØˆØ Š7Ø a‰KˆFØ ˜  Ð ,Ð,rc óæ—t|«}d}d}d}d}    d}
t|«xr t|«} tj||¬«} t    |«D]ÿ} || }|| }| dk(s| s6||}d}t    ||«D]}||}t |||||    ||«\}}}}    }}Œ!ndt    || dz
|«D]}||}t |||||
«\}}}}
Œt    || dz
|«D]}||}t |||||    «\}}}}    }}Œ!||k\r,|dkDr'||z }|k\r}n*|dk(r|dkrd}n||k(r|dkDrd}ntj}|| | <| rŒ÷d}d}d}d}
Œt    d«D cgc]} d‘Œ}} | |fScc} w)Nrg)Údtyper )ÚlenrrÚemptyÚrangerrÚnan)ÚvaluesÚ result_dtypeÚstartÚendÚ min_periodsÚNrrrÚcompensation_addÚcompensation_removeÚis_monotonic_increasing_boundsÚoutputÚiÚsÚerrÚjrÚresultÚna_poss                      rÚ sliding_meanr5Bs1€ô     ˆE‹
€AØ €DØ €EØ €FØÐØÐä%<Ø ó&ò&'ä
! #Ó
&ð#ôX‰Xa˜|Ô ,€Fä 1‹XòD&ˆØ !‰HˆØ ‰FˆØ Š6Ñ7Ø ™ˆJØ)*Ð &ä˜1˜a“[ò Ø˜Q‘iôØØØØØ$Ø.ØóñØØØØ$Ø.Ùñ ô&˜5  Q¡™<¨Ó+ò Ø˜Q‘iÜ;Fؘ˜u fÐ.Aó<Ñ8e˜VÑ%8ð ô ˜3˜q 1™u™: qÓ)ò Ø˜Q‘iôØØØØØ$Ø.ØóñØØØØ$Ø.Ùð ð& ;Ò  4¨!¢8ؘT‘\ˆFØ)¨TÒ1Ø#‘ؘ1’ ¨!¢Ø‘ؘ4’ F¨Q¢JØ‘ä—V‘VˆFàˆˆq‰    â-؈D؈E؈FØ"%Ò ðID&ôR˜q›Ö "AŠaÐ "€FÐ "Ø 6ˆ>Ðùò#sÅ    E.có—t||||«\}}}}}    t|«D]C}
||
} ||
} |    |
} ||
}| |k\r| | k\r| | z}n|}ntj}|| z}|||
<ŒEtd«Dcgc]}d‘Œ}}||fScc}w)Nr)rr#rr$)r%r&ÚlabelsÚngroupsr)r.Únobs_arrÚcomp_arrÚconsecutive_countsÚ    prev_valsÚlabrrrrr3r/r4s                  rÚ grouped_meanr>¤sÀôARؐ ˜f góAÑ=€FˆHhР2°Iô
W‹~ò ˆØ˜‰}ˆØ%7¸Ñ%<Ð"ؘs‘^ˆ
ؐs‘ ˆØ ;Ò Ø)¨TÒ1Ø# dÑ*‘à‘ä—V‘VˆFؐ$‰ˆØˆˆsŠ ð ô$˜q›Ö "AŠaÐ "€FÐ "Ø 6ˆ>Ðùò#sÁ3    B)rÚfloatrÚintrr?rr@rr?rr@rr?Úreturnz)tuple[int, float, int, float, int, float]) rr?rr@rr?rr@rr?rAztuple[int, float, int, float]) r%ú
np.ndarrayr&únp.dtyper'rBr(rBr)r@rAútuple[np.ndarray, list[int]]) r%rBr&rCr7znpt.NDArray[np.intp]r8r@r)r@rArD)Ú__doc__Ú
__future__rÚtypingrÚnumbaÚnumpyrÚ!pandas.core._numba.kernels.sharedrÚpandas.core._numba.kernels.sum_rÚpandas._typingrÚjitrrr5r>©rrú<module>rOs¯ðñõ#å ã ÛåEÝ=áÝ"𠀇D ¨uÔ5ðUØ    ðUà
ðUð ðUð ð    Uð
ð Uð !$ð UððUð/òUó6ðUð6 €‡D ¨uÔ5ð -Ø    ð -Øð -Ø"'ð -Ø14ð -ØDIð -à"ò -ó6ð -𠀇D ¨uÔ5ð^Ø ð^àð^ð ð^ð
ð    ^ð
ð ^ð "ò ^ó6ð^ðB €‡D ¨uÔ5ðØ ðàðð !ððð    ð
ð ð "ò ó6ñr