zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
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
U
­ý°dè$ã@s†dZddlZddlZddlZddlmmZddl    Z
ddl    m Z m Z ddl mZddlmZmZmZGdd„dƒZGdd„dƒZdS)    zP
Tests for statistical reductions of 2nd moment or higher: var, skew, kurt, ...
éN)Ú    DataFrameÚSeries)Ú DatetimeArrayÚ PeriodArrayÚTimedeltaArrayc    @s~eZdZej deeje    g¡dd„ƒZ
ej deeje g¡ej dddddd    g¡d
d „ƒƒZ ej deeje g¡d d „ƒZdS)ÚTestDatetimeLikeStatReductionsÚboxc CsÀ|}tjdd|d}| dddddd    d
d d d dg ¡}|j}||ƒ}| ¡tjd|dks\t‚|jddtjd|dkszt‚tj|d<||ƒ}| ¡tjd|dks¦t‚|jddtjks¼t‚dS)Nú
2001-01-01é )ÚperiodsÚtzéééé
é    ééérééz
2001-01-06)r F©Zskipnaéþÿÿÿz2001-01-06 07:12:00)ÚpdÚ
date_rangeÚtakeÚ_dataÚmeanÚ    TimestampÚAssertionErrorÚNaT)ÚselfZtz_naive_fixturerr ÚdtiZdtarrÚobj©r$úcd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/reductions/test_stat_reductions.pyÚtest_dt64_means 
z-TestDatetimeLikeStatReductions.test_dt64_meanÚfreqÚSÚHÚDÚWÚBc Csàtjddd}| dddddd    d
d d d dg ¡}|j |¡}||ƒ}tjtdd| ¡W5QRXtjtdd|jddW5QRXtj    |d<tjtdd| ¡W5QRXtjtdd|jddW5QRXdS)Nr    r
©r r rrrrrrrrrrZ    ambiguous©ÚmatchTrr)
rrrrZ    to_periodÚpytestÚraisesÚ    TypeErrorrr )r!rr'r"Zparrr#r$r$r%Útest_period_mean-s  
z/TestDatetimeLikeStatReductions.test_period_meanc CsÀtjddddddddddd    g d
d }|j}||d d }| ¡}t |¡ ¡}||ksXt‚tj|d<|jd dtjksxt‚|jdd}||dd… ¡ksœt‚| d¡|dd d¡ks¼t‚dS)Nrrriùÿÿÿrréÿÿÿÿrr r*)ÚunitF)ÚcopyrTÚusg&@r)    rZTimedeltaIndexrrÚnpÚarrayrr Úround)r!rZtdiZtdarrr#ÚresultÚexpectedZresult2r$r$r%Útest_td64_meanDs$  
 z-TestDatetimeLikeStatReductions.test_td64_meanN)Ú__name__Ú
__module__Ú __qualname__r0ÚmarkZ parametrizerrZIndexrr&rr3rr=r$r$r$r%rs
 rc@szeZdZddd„Zdd„Zdd„Zdd    „Zd
d „Zd d „Zdd„Z    dd„Z
dd„Z e j dd„ƒZe j dd„ƒZdd„ZdS)ÚTestSeriesStatReductionsFc
Cst dd¡îtt|ƒ}tj|dd…<|dkrpttjdddƒ}d    |›d
}tjt    |d ||ƒW5QRXt 
||ƒ¡s‚t ‚t  ||dd ¡s˜t ‚|  ¡}    t ||    ƒ||    jƒ¡t ||ƒ||    jƒ¡|tj}
|rìt ||
ƒ¡sìt ‚td ddddgƒ} || ƒdg} |  tddƒ¡t| dd} t t|| ƒƒt|| jƒƒ¡|r|ttjdddƒ} || ƒ} || ƒ}| |ks|t ‚|dkr°tjt    dd |ttdƒƒƒW5QRXd}tjt|d ||d dW5QRXdt |¡jkrø||ddW5QRXdS)NZuse_bottleneckFré)ÚmaxÚminrÚmedianÚstdz1/1/2001rr-zdoes not support reduction 'ú'r.rrrrrllèÚint64©Zdtypez1/1/2000)ÚsumrErDÚabcz&No axis named 1 for object type Series)ZaxisÚ numeric_onlyT)rM)rZoption_contextÚgetattrrr8ÚNaNrr0r1r2ZnotnarÚisnaZdropnaÚtmÚassert_almost_equalÚvaluesÚnanÚisnanÚextendÚrangeÚfloatZ bdate_rangeÚlistÚ
ValueErrorÚinspectÚgetfullargspecÚargs)r!ÚnameZ    alternateZstring_series_Ú check_objectsÚ check_allnaÚfZdsÚmsgZnonaZallnaÚsÚitemsÚresÚexpr$r$r%Ú_check_stat_op^sF
 
 
z'TestSeriesStatReductions._check_stat_opcCs&t ¡ d¡}|jdtj|dddS)NÚseriesrKF)r`)rQÚmakeStringSeriesÚrenamergr8rK©r!Ú string_seriesr$r$r%Útest_sum›sz!TestSeriesStatReductions.test_sumcCs"t ¡ d¡}| dtj|¡dS)Nrhr)rQrirjrgr8rrkr$r$r%Ú    test_meanŸsz"TestSeriesStatReductions.test_meancCsRt ¡ d¡}| dtj|¡ttjdtdt    dƒd}t 
t |¡| ¡¡dS)NrhrFrrJ)Úindex) rQrirjrgr8rFrÚonesÚintrWrR)r!rlZint_tsr$r$r%Ú test_median£sz$TestSeriesStatReductions.test_mediancCs"t ¡ d¡}| dtj|¡dS)NrhÚprod)rQrirjrgr8rsrkr$r$r%Ú    test_prod«sz"TestSeriesStatReductions.test_prodcCs&t ¡ d¡}|jdtj|dddS)NrhrET©r_)rQrirjrgr8rErkr$r$r%Útest_min¯sz!TestSeriesStatReductions.test_mincCs&t ¡ d¡}|jdtj|dddS)NrhrDTru)rQrirjrgr8rDrkr$r$r%Útest_max³sz!TestSeriesStatReductions.test_maxcCsÜt ¡ d¡}t ¡ d¡}dd„}| d||¡dd„}| d||¡|jdd    }tj|jdd    }t ||¡|j    dd    }tj    |jdd    }t ||¡|j
d
g}|j    d d    }t   |¡s¾t ‚|jd d    }t   |¡sØt ‚dS) NrhÚtscSstj|ddS©Nr©Zddof)r8rG©Úxr$r$r%Ú<lambda>»óz7TestSeriesStatReductions.test_var_std.<locals>.<lambda>rGcSstj|ddSry)r8Úvarr{r$r$r%r}¾r~rr rzrr)rQrirjÚmakeTimeSeriesrgrGr8rSrRrÚilocrrPr©r!rlZdatetime_seriesÚaltr;r<rcr$r$r%Ú test_var_std·s"       z%TestSeriesStatReductions.test_var_stdcCs”t ¡ d¡}t ¡ d¡}dd„}| d||¡|jdd}tj|jddt     t
|jƒ¡}t  ||¡|j dg}|jd    d}t  |¡st‚dS)
NrhrxcSstj|ddt t|ƒ¡Sry)r8rGÚsqrtÚlenr{r$r$r%r}Õr~z3TestSeriesStatReductions.test_sem.<locals>.<lambda>Úsemr rzrr)rQrirjr€rgr‡r8rGrSr…r†rRrrrPrr‚r$r$r%Útest_semÑs ÿ   z!TestSeriesStatReductions.test_semcsÆddlm‰t ¡ d¡}‡fdd„}| d||¡d}td|dƒD]z}tt     |¡ƒ}t
t     ||f¡ƒ}||krœt  | ¡¡s„t ‚t  | ¡¡  ¡sÀt ‚qFd| ¡ks¬t ‚| ¡dk  ¡sFt ‚qFdS)    Nr©Úskewrhcs ˆ|ddS©NF)Zbiasr$r{r‰r$r%r}ér~z4TestSeriesStatReductions.test_skew.<locals>.<lambda>rŠrr)Ú scipy.statsrŠrQrirjrgrWrr8rprrUrÚall)r!rlrƒÚmin_NÚircÚdfr$r‰r%Ú    test_skewãs  z"TestSeriesStatReductions.test_skewcs8ddlm‰t ¡ d¡}‡fdd„}| d||¡dS)Nr©Úkurtosisrhcs ˆ|ddSr‹r$r{r’r$r%r}ÿr~z4TestSeriesStatReductions.test_kurt.<locals>.<lambda>Úkurt)rŒr“rQrirjrg)r!rlrƒr$r’r%Ú    test_kurtùs  z"TestSeriesStatReductions.test_kurtcCs’d}td|dƒD]z}tt |¡ƒ}tt ||f¡ƒ}||krht | ¡¡sPt‚t | ¡¡ ¡sŒt‚qd| ¡ksxt‚| ¡dk ¡st‚qdS)Nr rr)    rWrr8rprrUr”rr)r!rŽrrcrr$r$r%Útest_kurt_cornersz)TestSeriesStatReductions.test_kurt_cornerN)FF)r>r?r@rgrmrnrrrtrvrwr„rˆÚtdZskip_if_no_scipyr‘r•r–r$r$r$r%rBYs ÿ
=
 
rB)Ú__doc__r[Únumpyr8r0Zpandas.util._test_decoratorsÚutilZ_test_decoratorsr—ZpandasrrrZpandas._testingZ_testingrQZpandas.core.arraysrrrrrBr$r$r$r%Ú<module>s A