gL i&ddlmZmZddlmZddlZddlZddlZddlm Z m Z m Z m Z m Z mZmZmZmZmZmZmZmZmZmZmZmZddlmZddlmZddlm Z dZ!Gdd Z"Gd d Z#Gd d Z$GddZ%GddZ&GddZ'y))datetime timedelta)DecimalN) Categorical DataFrame DatetimeIndexIndexNaTPeriod PeriodIndex RangeIndexSeries TimedeltaTimedeltaIndex Timestamp date_rangeisna period_rangetimedelta_range to_timedelta)nanops)ArrowStringArrayNumpySemanticsctddgdzdttjdtjdttjdtjdt t dd dt t dd djd ttddd dttdDcgc] }t|c}dg}tjjdjd}|Dcgc]}t||d}}||z}|Scc}wcc}w)NTFa)name dtyper 2020-01-01periodsz US/EasterntzDr"freqindexr)r nparangeint64float64rr tz_localizer rrangestrrandom default_rngstandard_normalr)iindexesarridxseriesobjss m/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pandas/tests/reductions/test_reductions.pyget_objsr<#s  tUmac* biim288#6 biim2::C8jr:Ejr:EQQ R  LrD3O uRy)!s1v)4 G ))   " 2 22 6C:A B3fS#. BF B V D K*Cs E$Ec eZdZejj dejj dddgejj dedZejj dddgejj ddd d e d d d fddgdZ ejj dddgdZ ejj dddgejj dddgdZ dZ ejj dddgddggdZejj dddgdZdZy )!TestReductionsz8ignore:Period with BDay freq is deprecated:FutureWarningopnamemaxminobjct||}t|tset|jtr/tt j |j|}nLt|j|}n0tt|j||j}t|dd2|jdjd}|j|k(sJy||k(sJy)N)ordinalr'r$M8[ns]r-) getattr isinstancer valuesrr+arrayr asi8r'astype_value)selfr?rBresultexpecteds r;test_opszTestReductions.test_ops8s &f%'#{+#**&DE@7288CJJ#7@B673::v68&?gchh&?&AQH 3d # /x077@H==H, ,,X% %%z dtype, val)object@)r.rSdatetime64[ns] )Int64r()booleanTc|}fd}|dg}|t||sJ|t||dsJ|g}|t||sJ|t||dsJdk(ry|d|g}t|||k(sJ|t||dsJ|d|dg}t|||k(sJ|t||dsJy)Nc`dk(r|tuSdvr|tjuSt|S)NrT)rXrY)r pdNAr)resrs r; check_missingz4TestReductions.test_nanminmax..check_missing^s7((cz!..bee|#Cy rQrFskipnarR)rF)rMr?rvalindex_or_seriesklassr_rBs ` r;test_nanminmaxzTestReductions.test_nanminmaxOs7  !TF%(1WS&134441WS&1?@@@Be$1WS&134441WS&1?@@@ H  T3Ku-#wsF#%,,,1WS&1?@@@T3%U3#wsF#%,,,1WS&1?@@@rQc|}|turd|znd|z}|ttdddg}t||dk(sJd}|turd}t j t|5t||d }ddd|turtjs Jd k(sJ|ttdddtg}t||dk(sJt j t|5t||d }ddd|turtj|sJy|d k(sJy#1swYxYw#1swY=xYw) Nargr8rUrVrWzNThe behavior of (DatetimeIndex|Series).argmax/argmin with skipna=False and NAsz2The behavior of Series.(idxmax|idxmin) with all-NAmatchFra) r r rrFrtmassert_produces_warning FutureWarningr+isnan)rMr?rdrearg_oprBmsgrNs r;test_nanargminmaxz TestReductions.test_nanargminmaxzsV #(E>uv~S(4Q/01#wsF#%*** #  F?FC  ' ' S A 8)WS&)7F 8 F?88F# ##R< <S(4Q/56#wsF#%***  ' ' S A 8)WS&)7F 8 F?88F# ##R< < 8 8 8 8s+E<E E  ErrEzdatetime64[ns, UTC]c|}|turd|znd|z}|g|}t||tusJt||dtusJtjt d5t||dddtjt d5t||ddddy#1swYAxYw#1swYyxYw)Nrhr8r`Frazempty sequenceri)r rFr pytestraises ValueError)rMr?rdrrerprBs r;test_nanops_empty_objectz'TestReductions.test_nanops_empty_objects #(E>uv~Be$#wsF#%,,,#wsF#51S888 ]]:-= > # GC " # ]]:-= > / GC  . / / # # / /s.C#C C  Cc  ttjdd}|jdk(sJ|j dk(sJttj dtj dg}|jdk(sJ|j dk(sJd }t jt| 5|jd d k(sJ dddt jt| 5|j d d k(sJ dddttj g}t jt| 5|jd k(sJ dddt jt| 5|j d k(sJ dddt jt| 5|jd d k(sJ dddt jt| 5|j d d k(sJ dddd}tttdddtdddtg}|jdk(sJ|j dk(sJt jt| 5|jd d k(sJ dddt jt| 5|j d d k(sJ dddttg}t jt| 5|jd k(sJ dddt jt| 5|j d k(sJ dddt jt| 5|jd d k(sJ dddt jt| 5|j d d k(sJ dddy#1swYxYw#1swYxYw#1swYxYw#1swYwxYw#1swYHxYw#1swYxYw#1swYxYw#1swYbxYw#1swY%xYw#1swYxYw#1swYxYw#1swYyxYw)Nrr-r`rrWr(z=The behavior of Index.argmax/argmin with skipna=False and NAsriFrarkzEThe behavior of DatetimeIndex.argmax/argmin with skipna=False and NAsrUrV) r r+r,argminargmaxnanrlrmrnr r)rMrBrqs r;test_argminmaxzTestReductions.test_argminmaxsBIIaw/0zz|q   zz|q   RVVQ*+zz|q   zz|q   M  ' ' S A 2::U:+r1 11 2  ' ' S A 2::U:+r1 11 2RVVHo  ' ' S A &::<2% %% &  ' ' S A &::<2% %% &  ' ' S A 2::U:+r1 11 2  ' ' S A 2::U:+r1 11 2VS(4Q/$A1FLMzz|q   zz|q    ' ' S A 2::U:+r1 11 2  ' ' S A 2::U:+r1 11 2SEl  ' ' S A &::<2% %% &  ' ' S A &::<2% %% &  ' ' S A 2::U:+r1 11 2  ' ' S A 2::U:+r1 11 2 2? 2 2 2 2 & & & & 2 2 2 2 2 2 2 2 & & & & 2 2 2 2s=O.9O;P PP"?P/P<Q QQ#Q/ Q;.O8;PPP"P,/P9<Q QQ #Q,/Q8;Rzop, expected_colrbcttddddg}|jjt d|d <t ||d }||j d}tj||y) Nz2016-01-01 00:00:00rzUTC)r"r$r)columnsisecondsrrWaxis) rrrsubtractrrFrenamerlassert_series_equal)rMop expected_coldfrNrOs r;test_same_tz_min_max_axis_1z*TestReductions.test_same_tz_min_max_axis_1ss ,aE BSE $$-- $ 783 Ra(l#**40 vx0rQfuncmaximumminimumc|}tjdgj|}t|}t t |||}t j||y)N2019)r\ to_datetimer/rrFr+rlr)rMtz_aware_fixturerr$rhrOrNs r;(test_numpy_reduction_with_tz_aware_dtypez7TestReductions.test_numpy_reduction_with_tz_aware_dtypesRnnfX&2226#;"T"8X6 vx0rQcttddtgdtddtjgdd}tt ddd}|j }tj||y)NrWr(timedelta64[ns]r`rXABrz) rrr r+r}rsumrlr)rMrrOrNs r;test_nan_int_timedelta_sumz)TestReductions.test_nan_int_timedelta_sumsf Q3K/@AQ266N':    ! 156 vx0rQN)__name__ __module__ __qualname__rtmarkfilterwarnings parametrizer<rPrrfrrrwr~rrrrQr;r>r>7s [[B [[Xu~6 [[UHJ/&07 &$ [[Xu~6 [[   xb!4 5     A 7A@ [[Xu~6 7 > [[Xu~6 [[Wx1F&GH /I7 /)2V [[/5#, 1MN1O1 [[Vi%;<1=1 1rQr>c eZdZejj dgddZdZejj dddgdZd Z d Z ejj d gd d Z dZ ejj dddgdZ dZdZdZdZejj dddgejj dgegeeeggdZdZdZy)TestIndexReductionszstart,stop,step))rirz)iri)@Bry)rr)rrct|||}|jj}|j}||k(sJ|jd}||k(sJ|jj}|j}||k(sJ|jd}||k(sJt||| }t |jsJt |jsJyNFra)r _valuesr@rAr)rMstartstopstepr8rOrNresult2s r;test_max_min_rangez&TestIndexReductions.test_max_min_rangesd+;;??$!!!''''(""";;??$!!!''''("""te,CGGICGGIrQcntgd}|jsJtdtjddg}|jrJ||fD]h}|j t dk(sJ|j t dk(sJ|jdk(sJ|jdk(rhJy)N)1 days2 days3 daysrrr rr() ris_monotonic_increasingr+r}rArr@r{r|rMidx1idx2r8s r;test_minmax_timedelta64z+TestIndexReductions.test_minmax_timedelta64s<=++++x5AB////$< %C779 ( 33 33779 ( 33 33::<1$ $$::<1$ $$  %rQrrAr@ctg}t||tusJttg}t||tusJttttg}t||tusJyN)rrFr rMrrBs r;!test_minmax_timedelta_empty_or_naz5TestIndexReductions.test_minmax_timedelta_empty_or_na,sxR wsB!S(((cU#wsB!S(((c3_-wsB!S(((rQcTtddd}tj|tdk(sJtj|tdk(sJd}t j t|5tj|ddddt j t|5tj|ddddtj|dk(sJtj|d k(sJd}t j t|5tj|ddddt j t|5tj|ddddy#1swYxYw#1swYxYw#1swY]xYw#1swYyxYw) Nz 16815 daysz 16820 daysr%r'$the 'out' parameter is not supportedriroutr) rr+rArr@rtrurvr{r|)rMtderrmsgs r;test_numpy_minmax_timedelta64z1TestIndexReductions.test_numpy_minmax_timedelta648sG \ > @A!!!""$ayH$$$ Il+Y|-DE Fvvx I1$5555  | $i &=y?V W vvx I1$5555_ Rs"Jr?)skewkurtsemprodvarc ttdDcgc]}tdt||zzc}}|j }dj d|dd|dd |d g}t jt| 5t||dddt jt| 5t|j|d dddycc}w#1swYTxYw#1swYyxYw)Nrrr|zreduction operation 'z' not allowed for this dtypezcannot perform z with type timedelta64\[ns\]zdoes not support reduction ''riF) numeric_only) rr0rrrjoinrtru TypeErrorrFr)rMr?r5rrrqs r;test_invalid_td64_reductionsz0TestIndexReductions.test_invalid_td64_reductionss GLRy Q!Yz "Yq1u%= = Q VVXhh'x/KL"6(*FG.vha8  ]]9C 0 " GB  ! "]]9C 0 ? *GBKKM6 * > ? ? R " " ? ?s"C'C,<"C8,C58Dcx|}tgd|}|jsJtdtddtg|}|jrJ||fD]l}|jt d|k(sJ|j t d|k(sJ|j dk(sJ|jdk(rlJy)N) 2011-01-01 2011-01-02 2011-01-03r#rrrrr()rrr rArr@r{r|)rMtz_naive_fixturer$rrr8s r;test_minmax_tzz"TestIndexReductions.test_minmax_tzs GBO++++ 3 lC @R ////$< %C779 ,2 >> >>779 ,2 >> >>::<1$ $$::<1$ $$  %rQctg}tt||sJttg}tt||sJttttg}tt||sJyr)rrrFr rs r;test_minmax_nat_datetime64z.TestIndexReductions.test_minmax_nat_datetime64s{B$GC$&'''SE"$GC$&'''S#sO,$GC$&'''rQctgd}|jj}tj|}||k(sJ|jj }tj|}||k(sJd}t j t|5tj|ddddt j t|5tj|dddd|jj}tj|}||k(sJ|jj}tj|}||k(sJd}t j t|5tj|ddddt j t|5tj|ddddy#1swY*xYw#1swYxYw#1swY^xYw#1swYyxYw)NrWr(rzrrirr) r rHr@r+rArtrurvr|r{)rMr8rOrNrs r;test_numpy_minmax_integerz-TestIndexReductions.test_numpy_minmax_integersI::>>#!!!::>>#!!!7 ]]:V 4  FF3A   ]]:V 4  FF3A  ::$$&3!!!::$$&3!!!7 ]]:V 4 " IIcq ! " ]]:V 4 " IIcq ! " "!     " " " "s0GG$;G06G<G!$G-0G9<Hctddd}tj|}|dk(sJtj|}|dk(sJd}t j t |5tj|ddddt j t |5tj|ddddy#1swYExYw#1swYyxYw)Nrrrzrrrir)r r+r@rArtrurv)rMr8rNrs r;test_numpy_minmax_rangez+TestIndexReductions.test_numpy_minmax_rangesB"{{{{7 ]]:V 4  FF3A   ]]:V 4  FF3A       s#B?C ?C CcRtdd}tj|tdk(sJtj|tdk(sJd}t j t|5tj|d dddt j t|5tj|d dddtj|dk(sJtj|d k(sJd}t j t|5tj|d dddt j t|5tj|d dddy#1swYxYw#1swYxYw#1swY]xYw#1swYyxYw) N 2016-01-15 2016-01-20rendz2016-01-15 00:00:00z2016-01-20 00:00:00rrirrr) rr+rArr@rtrurvr{r|)rMdrrs r;test_numpy_minmax_datetime64z0TestIndexReductions.test_numpy_minmax_datetime64sK l =vvbzY'<====vvbzY'<====7 ]]:V 4  FF21  ]]:V 4  FF21  yy}!!!yy}!!!7 ]]:V 4 ! IIba  !]]:V 4 ! IIba  ! !     ! ! ! !s01E9,FFF9FFFF&cttdddgd}|jrJ|ddjsJtdtddtgd}|jrJ||fD]B}|jt ddk(sJ|j t ddk(rBJ|j dk(sJ|j dk(sJ|jdk(sJ|jd k(sJy) Nrrrr%rrWrrzr()r r rrAr r@r{r|rs r;test_minmax_periodz&TestIndexReductions.test_minmax_periodsC|\JQTU////ABx//// 3 lC @s ////$< ?C779|# >> >>779|# >> >> ?{{}!!!{{}!!!{{}!!!{{}!!!rQdatacTt|d}t||}|tusJy)NMr)r rFr )rMrrrBrNs r;test_minmax_period_empty_natz0TestIndexReductions.test_minmax_period_empty_nats-$S)!b!#}}rQcZtdd}tj|tddk(sJtj|tddk(sJd}t j t|5tj|d dddt j t|5tj|d dddtj|dk(sJtj|d k(sJd}t j t|5tj|d dddt j t|5tj|d dddy#1swYxYw#1swYxYw#1swY]xYw#1swYyxYw) Nrrrr%rrrirrr) rr+rAr r@rtrurvr{r|)rMprrs r;test_numpy_minmax_periodz,TestIndexReductions.test_numpy_minmax_periodsI  , ?vvbzVLs;;;;vvbzVLs;;;;7 ]]:V 4  FF21   ]]:V 4  FF21  yy}!!!yy}!!!7 ]]:V 4 ! IIba  ! ]]:V 4 ! IIba  ! !     ! ! ! !s05E=0F !FF!=F FF!F*ctjtdtdd}d}tjt |5|j dddd}tjt |5|jdddtjtdtdd}|j d k(sJ|jd k(sJy#1swYxYw#1swYjxYw) NaabbcacabF categoriesorderedzwCategorical is not ordered for operation min\nyou can use .as_ordered\(\) to change the Categorical to an ordered one\nrizwCategorical is not ordered for operation max\nyou can use .as_ordered\(\) to change the Categorical to an ordered one\nTcr)r\CategoricalIndexlistrtrurrAr@)rMcirqs r;test_min_max_categoricalz,TestIndexReductions.test_min_max_categorical0s  hDKQV W Y ]]9C 0  FFH  Y ]]9C 0  FFH  hDKQU Vvvx3vvx3     sC,>C8,C58DN)rrrrtrrrrrrrrrrrrrrr rrr rrQr;rrs,  [[   0 % [[TE5>2 )3 )!*36j [[X'MN?O?(%$ [[TE5>2 (3 ("@&!."( [[TE5>2 [[Vb3%#sC%ABC3 !*rQrc~eZdZdZej j dgdej j dddgej j ddd gd Zej j d d d gej j dgddZej j d gddZ dZ ej j dddgej j dddgdZ ej j dddgej j dddgdZ dZ ej j dddgdZej j ddej j dddgd Zd!Zd"Zd#Zd$Zd%Zd&Zd'Zd(Zd)Zej j d*d+d,gej j dddgd-Zej j d*d+d,gej j d.dd/gd/dgdej6gej6dggd0Zej j dgd1ej j d*d+d,gej j dddgej j d2gd3ddgddggfgd4ddgddggfej<ej<ej<gej<ej<gddggfd5ej<d5gej<dgddggfd6ej<d6gdej<gddggfd6ej<d5gddgddggfgd7Zd8Z d9Z!d:Z"d;Z#ej j d<e$gd=e%fe$gd>e&fe$d?d@ge&fe$dAdAdBdBd/ej6dCge&fgdDZ'dEZ(dFZ)dGZ*dHZ+dIZ,dJZ-dKZ.y/)LTestSeriesReductionscfttjjdj d}|j }tj |ddtj|ddtj|jsJtjjdj djd}tj |dddf<d}tjt|5tjd d 5tj |j|jddddddt#j$|d }tj|j'sJy#1swYNxYw#1swYRxYw) Nr(rr)drf4"use_inf_as_na option is deprecatedrimode.use_inf_as_naTrWr)rr+r2r3r4copyinfr}isinfrrKrlrmrnr\option_contextassert_almost_equalrnansumall)rMrs2r7rqr^s r; test_sum_infz!TestSeriesReductions.test_sum_infIs: 299((+;;B? @ VVX!A&&1Qxx   ii##A&66zBII$OFFAqD 2  ' ' S A :""#7> :&&quuw9 : :mmCa(xx}  """  : : : :s$F'3FF'F$ F''F0r)r.Float32rXrYrRuse_bottleneckTFz method, unit)r)r?ctjd|5tg|}t||}||k(sJt||d}||k(sJt||d}t |sJt||d}||k(t||dd}||k(sJt||dd}t |sJt||d d}||k(sJt||d d}t |sJtt j g|}t||}||k(sJt||d}||k(sJt||d}t |sJt||d}||k(t||dd}||k(sJt||dd}t |sJtt j dg|}t||}|d k(sJt||d}|d k(sJt||d}|d k(sJt||d}|d k(sJt||dd}|d k(sJtt jd |}t||d|k(jsJtdg|}t||d }t |sJt||d d }t |sJtt j g|}t||d }t |sJtt j dg|}t||d }t |sJ dddy#1swYyxYw) Nrr`r) min_countrWTra)rbr!Fr)rrr() r\rrrFrr+r}remptyr)rMmethodunitrrrrNrs r; test_emptyzTestSeriesReductions.test_empty]s   / @] r'A'WQ')FT> !>(WQ'!4FT> !>'WQ'!4F< <(WQ't4F dN(WQ'tqAFT> !>'WQ'tqAF< <'WQ'uBFT> !>'WQ'uBF< <xu-A'WQ')FT> !>(WQ'!4FT> !>'WQ'!4F< <(WQ't4F dN(WQ'tqAFT> !>'WQ'tqAF< <{%0A'WQ')FS= =(WQ'!4FS= ='WQ'!4FS= =(WQ't4FS= ='WQ'tqAFS= =288G,E:B'GB'*d2779 99s%(A'WQ'!4F< <'WQ'uBF< <xu-A'WQ'!4F< <{%0A'WQ'!4F< <{] ] ] s MM>>Nr#rr)Float64rXrYctg|}t||}|tjusJttj g|}t||}|tjusJyNr`)rrFr\r]r+r})rMr#reserrNnsers r;&test_ops_consistency_on_empty_nullablez;TestSeriesReductions.test_ops_consistency_on_empty_nullablesfb&&v&(rvvhe,&v&(rQ)rrrrc`ttt|}t|sJtgd}|dk(rIdj gd}t j t|5t||dddyt||}|tusJy#1swYyxYw)Nr`m8[ns]rr)zoperation 'var' not allowedz.cannot perform var with type timedelta64\[ns\]z does not support reduction 'var'ri) rFrfloatrrrtrurr )rMr#rNtdserrqs r;test_ops_consistency_on_emptyz2TestSeriesReductions.test_ops_consistency_on_emptys 6e,f57F||r* U?((Cy4 )&v&( ) ),WUF+-FS= =  ) )s -B$$B-ctdtjgddg}tj|}t j |dy)NrrrWr*)rr+r}rrlr)rMserrNs r;test_nansum_bugletz'TestSeriesReductions.test_nansum_buglets7c266]1a&13 vq)rQint32r-ctjd|5tjd|}t |}|j d}t ||j dk(sJ|jd}t |dk(sJ|jd}t ||dk(sJ dddy#1swYyxYw) Nr@KLr`Frar-rrk) r\rr+r,rrintrAr@rMrrvrrNs r;test_sum_overflow_intz*TestSeriesReductions.test_sum_overflow_ints  / @ ( '/Aq AUU%U(Fv;!%%g%"66 66UU%U(Fv;!# ##UU%U(Fv;!B%' '' ( ( (s BB==Cfloat32r.ctjd|5tjd|}t |}|j d}||j |k(sJ|j d}tjt|dsJ|jd}tjt||dsJ dddy#1swYyxYw)Nrr7r`Frarrk) r\rr+r,rrrAallcloser.r@r9s r;test_sum_overflow_floatz,TestSeriesReductions.test_sum_overflow_floats  / @ 5 '/Aq AUU%U(FQUUU// //UU%U(F;;uV}c2 22UU%U(F;;uV}ae4 44 5 5 5s B5CCcd}d}tj|g|z}t|g|zd}tj|}|j}||z dk(sJ|dk(sJy)Nl; rrXr`rg؅W4vC)r+rIrr)rMrc n_elementsnar3 result_numpy result_maskeds r;test_mean_masked_overflowz.TestSeriesReductions.test_mean_masked_overflowsm% XXsej( )cUZ'w7wwr{  |+q000$$$rQz ddof, exp)rW@)rrSctgdd}tgdd}|j|}|j|}||k(sJ||k(sJy)N)rWr(rzryrrXr`r-)ddof)rr)rMrHexpr3ser_numpy_dtyperNresult_numpy_dtypes r;test_var_masked_arrayz*TestSeriesReductions.test_var_masked_arrays[_G4 @d#,00d0;++++}}rQ)r-r-rEz M8[ns, UTC]rbctg|j|tusJtg|j|tusJy)Nr`ra)rrAr r@)rMrrbs r;+test_empty_timeseries_reductions_return_natz@TestSeriesReductions.test_empty_timeseries_reductions_return_nat$sJb&**&*9S@@@b&**&*9S@@@rQcltjdd}t||}tj|}tj|}||k(sJ|j}||k(sJd}t j t |5tj||dddy#1swYyxYwNrWrVr2rrir)r+r,rr{rtrurv)rMrrrNrOrqs r;test_numpy_argminz&TestSeriesReductions.test_numpy_argmin+syyB 4t $199T?!!!!!!4 ]]:S 1 # IIaT " # # # B**B3cltjdd}t||}tj|}tj|}||k(sJ|j}||k(sJd}t j t |5tj||dddy#1swYyxYwrP)r+r,rr|rtrurv)rMrr3rNrOrqs r;test_numpy_argmaxz&TestSeriesReductions.test_numpy_argmax=syyBT&399T?!!!!!!4 ]]:S 1 % IIct $ % % %rRctgdj|}tddtjg|}d}t j t|5|jd}dddtusJd }t j t|5|jd}ddd|tusJ|j}d }t j t|5|jd}ddd|jd |d k(sJ|jjsJd }t j t|5|jd}ddd|jd |d k(sJ|jjsJy#1swYAxYw#1swY xYw#1swYxYw#1swYexYw)N)r z 2015-02-08r rrSr20The behavior of Series.idxmin with all-NA valuesriFra0The behavior of Series.idxmax with all-NA valuesz3The behavior of DataFrame.idxmin with all-NA valueszM8[]z3The behavior of DataFrame.idxmax with all-NA values)ras_unitrr+r}rlrmrnidxminr idxmaxrrrr)rMr$dtir3rqr^rs r;test_idxmin_dt64indexz*TestSeriesReductions.test_idxmin_dt64indexNs89AA$Gc3's3@  ' ' S A +**E**C +czz@  ' ' S A +**E**C +czz \\^C  ' ' S A *))5))C *yyc$qM)))xxz~~C  ' ' S A *))5))C *yyc$qM)))xxz~~% + + + +  * *  * *s0F*F7,GG*F47GG Gcttdtjd}tj|dd||j |j k(sJd}tjt|5t|j d sJ ddd|j}||j |j k(sJ|jjjj|j |jjk(sJ|tjz}tjt|5t|j sJ dddtt!d d }|j }|d k(sJtj|d <|j }|dk(sJy#1swYIxYw#1swYnxYw)Nrr9rrzThe behavior of Series.idxminriFra20130102rr!rrW)rr0r+r.r}rZrArlrmrnrrr*rHtolistr{rrM string_seriesrqnonaallnarrNs r; test_idxminz TestSeriesReductions.test_idxmingsuRy J !ff a]1134 8I8I8KKKK-  ' ' S A < ,,E,:; ;; <##%DKKM"dhhj000zz  '')// >$++BTBTBVVVV&  ' ' S A ( ' '' ( :j!4 5{{vv!{{) < < ( (s<G"%G/"G,/G8cttdtjd}tj|dd||j |j k(sJd}tjt|5t|j d sJ ddd|j}||j |j k(sJ|jjjj|j |jjk(sJ|tjz}d}tjt|5t|j sJ dddtt!d d }|j }|dk(sJtj|d<|j }|d k(sJtgdgd}|j }|dk(sJ|j#}|dk(sJt|j|j}|j }|dk(sJ|j#}|dk(sJy#1swYxYw#1swYxYw)Nrr9rrr_rWriFrar`rr!ryr)皙?g@@rirh)rr0r+r.r}r[r@rlrmrnrrr*rHrar|rrZrbs r; test_idxmaxz TestSeriesReductions.test_idxmaxs"uRy J !ff a]1134 8I8I8KKKK@  ' ' S A < ,,E,:; ;; <##%DKKM"dhhj000zz  '')// >$++BTBTBVVVV&@  ' ' S A ( ' '' ( :j!4 5{{vv!{{ 9o .}}}} 177AGG $}}}}E < < ( (s<I0'I=0I:=Jc ttjdtjt ddd}|dkD}|j rJ|j sJtdd g}|j sJy) Nrr`r r!tsr)rabcT)rr+r,r.rrany)rMrl bool_seriesrs r; test_all_anyz!TestSeriesReductions.test_all_anyss  IIb +\26  1f ??$$$    E4= !uuwwrQc|gd}tj|rJtj|sJtgd}tj|sJy)N)rrWr(r)r+rrnr )rMrdr8s r;test_numpy_all_anyz'TestSeriesReductions.test_numpy_all_anysFi(66#;vvc{{Ivvc{{rQcttjdg}ttjdg}|jdsJ|jdsJ|j dsJ|j drJy)NTFra)rr+r}rrn)rMs1rs r;test_all_any_skipnaz(TestSeriesReductions.test_all_any_skipnasy RVVTN # RVVUO $vvUv###vvTv"""vvUv###666&&&&rQcvtgdgd}|jdsJ|jdrJy)N)FFTTFT)rrrWrWr(r(r2T) bool_only)rrnr)rMrs r;test_all_any_bool_onlyz+TestSeriesReductions.test_all_any_bool_onlys= :BT Uuutu$$$5545((((rQ bool_agg_funcrnrcbtgdt}t|||}d}||k(sJy)N)rrrder`raT)rrRrF)rMryrbr3rNrOs r;test_any_all_object_dtypez.TestSeriesReductions.test_any_all_object_dtypes7.f=,m,F;!!!rQrNcdt|}t||d}|dk(xrd|v}||k(sJy)NFrarn)rrF)rMrryr3rNrOs r;!test_any_all_object_dtype_missingz6TestSeriesReductions.test_any_all_object_dtype_missingsD Tl,m,E:!E)>d$.>!!!rQ)rYrXUInt64r&zdata,expected_data)rrr)rWrWrWrrWct||}|||dk(}t|||}|tjur|tjus||k(sJyy)Nr`rra)rrFr\r]) rMryrbrr expected_datar3rOrNs r;"test_any_all_nullable_kleene_logicz7TestSeriesReductions.test_any_all_nullable_kleene_logics`(T' (%)?@,m,F;"%%H$5&H:LLL:L$5rQctddgddgd}|jdd}tddg}tj||y)NTFrWr(r)rrw)rrnrrlr)rMrrNrOs r;test_any_axis1_bool_onlyz-TestSeriesReductions.test_any_axis1_bool_onlysI dE]!Q8 9Q$/4-( vx0rQctddj}t|}t|}d}t j t |5|jsJ|jsJ|jsJ|jsJ|jjsJ|jjsJ ddd|jd}t|}t|}t j t |5|jsJ|jsJ|jsJ|jsJ|jjsJ|jjsJ ddd||dz }t|}t|}|jsJ|jrJ|jsJ|jrJ|jjsJ|jjrJy#1swYxYw#1swYxYw)Nz 1995-01-02rzr!z0'(any|all)' with datetime64 dtypes is deprecatedrirr) r_datarrrlrmrnrrnr/)rMdtar3rrqtdas r;test_any_all_datetimelikez.TestSeriesReductions.test_any_all_datetimelikesq177Sk s^@  ' ' S A "779 9779 9779 9779 9668<<> !>668<<> !> "ooe$Sk s^  ' ' S A "779 9779 9779 9779 9668<<> !>668<<> !> "CFlSk s^wwyy779}wwyy779}vvx||~~668<<>!!>K " " " "s B IB I%I"%I.ct|tjr|jtjurtt ddg|}t jt5|jdddt jt5|jdddyt ddg|}|jsJ|jrJ|jdsJ|jdrJt tjdg|}|jsJ|jsJ|jdsJ|jdsJt tjdg|}|jrJ|jrJ|jdsJ|jdrJt ddg|}|jsJ|jsJ|jdsJ|jdsJt g|}|jrJ|jsJ|jdrJ|jdsJt dg|}|jrJ|jrJ|jdrJ|jdrJt tjg|}|jrJ|jsJ|jdsJ|jdsJy#1swYxYw#1swYyxYw)Nrrr`Fra) rGr\ StringDtypena_valuer]rrtrurrnrr+r})rMany_string_dtyper3s r;test_any_all_string_dtypez.TestSeriesReductions.test_any_all_string_dtypeDs ' 8 ))RUU2#s+;' not supported between instances of 'float' and 'str'riz8'<' not supported between instances of 'float' and 'str')rr[rZr+r}rtrur)rMusing_infer_stringr3ser2ser3rqs r;test_idxminmax_object_dtypez0TestSeriesReductions.test_idxminmax_object_dtypes*+zz|q   zzz'1,,,zz|q   zzz'1,,,tTl#{{}!!!{{%{(A---{{}!!!{{%{(A---!5%tRVVUKLDLCy4   y4 * 5 ) *LCy4   y4 * 5 ) * *"   * *   * *s0 G>G6G*G+GGG(+G4ctddgddgddgg}|j}tddg}tj||y) NzimmrFbiffrbidg(@rr()rr[rrlr)rMrr^rIs r;test_idxminmax_object_framez0TestSeriesReductions.test_idxminmax_object_framesG  }udmD EiikaVn sC(rQctgd}|jdk(sJ|jdk(sJ|jddk(sJ|jddk(sJy)N))rWrz)r(r()rzrWr(rFra)rr[rZrMr3s r;test_idxminmax_object_tuplesz1TestSeriesReductions.test_idxminmax_object_tuplessg-.zz|q   zz|q   zzz'1,,,zzz'1,,,rQc6tddgtdtdgtdtdgd}|j}tdddd}t j |||j }|dz }t j ||y)NrrWz8.68z42.23z7.11z79.61)r8xy)rrr[rrlrrZ)rMrr^rIres2exp2s r;test_idxminmax_object_decimalsz3TestSeriesReductions.test_idxminmax_object_decimalss 1vfoww'78foww'78  iikQQQ/0 sC(yy{Qw tT*rQctddgd}|jdk(sJ|jdk(sJ|jddk(sJ|jddk(sJy)NrrWrRr`Fra)rr|r{rs r;test_argminmax_object_intsz/TestSeriesReductions.test_argminmax_object_intsslaV8,zz|q   zz|q   zzz'1,,,zzz'1,,,rQctdtj tjtjg}|j dk(sJd}t j t|5tj|j dsJ ddd|jdk(sJd}t j t|5tj|jdsJ dddd }t j t|5tjd d 5|j dk(sJtj|j dsJ|jdk(sJtj|jdddddddy#1swY)xYw#1swYxYw#1swY+xYw#1swYyxYw) NrrWrVriFrar(rWrrT) rr+rr}rZrlrmrnror[r\r)rMrrqs r;test_idxminmax_with_infz,TestSeriesReductions.test_idxminmax_with_infs Aw/ 0xxzQ@  ' ' S A 488AHHEH23 33 4xxzQ@  ' ' S A 488AHHEH23 33 43  ' ' S A 1""#7> 1xxzQ&xx 6777xxzQ&/0  1 1 1 4 4  4 4 1 1 1 1s=-(F=(G G"5A7G,G"=G GG G""G+ctdgd}|j}tjd}t j ||y)Nl 9Vuint64r`)rrr+rrlr)rMrrNrOs r;test_sum_uint64z$TestSeriesReductions.test_sum_uint64s< () :9912 vx0rQ)/rrrrrtrrr%r+r0r4r;r?rErLrNrQrTr]rfrjrprrrurxr}r+r}rr\r]rrrrrrrvrrrrrrrrrrrQr;r r Ds #( [[E [[-e}= [[^lM-JK^ L> ^ @ [[X7 [[W&EF G8  [[X'GH!I!0*  [[-e}= [[Ww&89 (:> ( [[-e}= [[Wy)&<= 5>> 5 % [[[8X*>?@ [[W&ST [[Xe}5A6UA #$%" 2B-^ ') [[_uen= [[Xe}5"6>" [[_uen= [[%u rvvP">" [[W&OP [[_uen= [[Xe}5 [[  %%8 9 $d|4 5eeRUUBEE "beeRUU^eT]$C D]beeU^eU^< =]dBEE]T4L9 :]dE]T5M: ;  M 6>Q M1-"^7%r'"R [[ Bi (* 5 ) *I 6 T4L !9 - UE5%rvvuE F R   , , *8)-+"-101rQr c TeZdZejj deeegeeedgeededggdZ ejj de eege eedge ededggdZ dZ dZ y) TestDatetime64SeriesReductionsnat_sernatc|jtusJ|jtusJ|jdtusJ|jdtusJyrrAr r@)rMrs r;test_minmax_nat_seriesz5TestDatetime64SeriesReductions.test_minmax_nat_series*s^{{}###{{}###{{%{(C///{{%{(C///rQnat_dfc|jdtusJ|jdtusJ|jddtusJ|jddtusJy)NrFrar)rMrs r;test_minmax_nat_dataframez8TestDatetime64SeriesReductions.test_minmax_nat_dataframe9spzz|A#%%%zz|A#%%%zzz'*c111zzz'*c111rQctdd}|jtjj dj t |}|j}|j}t|tsJt|tsJ||dk(sJ||dk(sJ|j|dk(sJ|j|dk(sJy)N1/1/2000z 12/31/2000r(rrk) rtaker+r2r3 permutationlenrAr@rGr)rMrngrng2the_minthe_maxs r; test_min_maxz+TestDatetime64SeriesReductions.test_min_maxHs\2xx --a0<&%/sSHX% %%RVV# ##rQN) rrrrtrrrrr+r}rrrrrQr;rrlsY  [[Z%8%9% [[ %[$u+ & %[$u+ & %[BFF8 #T%[ 1  "Arvv  *    [[Z%8"9 " [[Z%8 [[Xe}5 69  [[Z%8 [[Xe}5 $69 $rQrc eZdZejj ddegejfdegejfgdZ ejj ddgddgfdgd dd gfdgddgfdgd dd gfgejj d e ejd ejd zdZ ejj dddgfddejgfgdZejj dddgdgfddgejgfgdZejj dddgdgfddgejgfgdZejj dddgdgfddgejgfgdZejj ddgdddgfdejgejddgfgdZejj ddgdddgfdejgejddgfgdZejj d dedd!gdd!g"ed#gdd#g"ed dggd$d%fdeejgdd!g"eejd#gdd#g"eejd dggd$d%fgd&Zejj ddd'gdd'gfdd'gdd'gfgd(Zd)Zd*Zejj d+gd,edgej2ej2fgd,edgej4ej4fgd-ed.gej2ej2fgd/Zejj d+gd0egd1ej2ej2fgd2ed3d.gej4ej4fgd4Zy5)6TestSeriesModezdropna, expectedTr`Fctgtj}|j|}t j ||yr()rr+r.moderlrrMrrOrrNs r;test_mode_emptyzTestSeriesMode.test_mode_emptys1 2RZZ ( vx0rQzdropna, data, expected)rWrWrWr(rW)rWrWrWr(rzrzrzrzdt AllIntegerFloatct||}|j|}t||}tj||yr(rrrlr)rMrrrOrrrNs r;test_mode_numericalz"TestSeriesMode.test_mode_numericals9 4r "("- vx0rQrctdddtjtjg}|j|}t|}t j ||y)NrWr()rr+r}rrlrrs r;test_mode_numerical_nanz&TestSeriesMode.test_mode_numerical_nansF Aq!RVVRVV, -(# vx0rQzdropna, expected1, expected2rrcdgdzdgdzz}t|d}|j|}t|d}tj||dddtj tj tj g}t|t }|j|}t|t }tj||y) Nrr(rrzrr`rr)rrrlrr+r}rR)rMr expected1 expected2rrrNs r;test_mode_objectzTestSeriesMode.test_mode_objectsuqyC519$ 4s #9C0  vy1ueRVVRVVRVV< 4v &9F3  vy1rQcdgdzdgdzz}t||}|j|}t||}tj||dddtj tj tj g}t||}|j|}t||}tj||y)Nrr(rrzr`rr)rrrlrr+r})rMrrrrrrrNs r;test_mode_stringzTestSeriesMode.test_mode_stringsuqyC519$ 4/ 09,<=  vy1ueRVVRVVRVV< 4/ 09,<=  vy1rQrcttgd}|j|}t|t}tj||tdddt j t j t j g}|j|}t|t}tj||y)N)rWrrr`rWr)rrrRrlrr+r})rMrrrrrNrOs r;test_mode_mixeddtypez#TestSeriesMode.test_mode_mixeddtypes $ %)62 vx0 AueRVVRVVRVV< =)62 vx0rQ) 1900-05-03r 2013-01-02rrctgdd}|j|}t|d}tj||tgdd}|j|}t|d}tj||y)N)rrrr}r}rEr`)rrrrrr}r}rrMrrrrrNs r;test_mode_datetimez!TestSeriesMode.test_mode_datetimes}  DH 9H5  vy1   9H5  vy1rQ)-1 days0 daysr2 min1 dayctgdd}|j|}t|d}tj||tgdd}|j|}t|d}tj||y)N)rrrr}r}rr`)rrz-1 dayz -1 day 2 minrrr}r}rrs r;test_mode_timedeltaz"TestSeriesMode.test_mode_timedelta)s  9AR 9,=>  vy1  $ 9,=>  vy1rQz'dropna, expected1, expected2, expected3r()rrrrc ttddtjtjg}|j |}t|d}t j ||ttdddtjtjg}|j |}t|d}t j ||ttdddddtjtjggdd }|j |}t|d}t j ||y) NrWr(categoryr`rrzrTr)rrr+r}rrlr)rMrrr expected3rrNs r;test_mode_categoryz!TestSeriesMode.test_mode_categoryKs$ ;1bffbff56 79J7  vy1 ;3RVVRVV<= >9J7  vy1  Aq!Q/It   9J7  vy1rQctgdtj}|j|}t|tj}t j ||tddgtj}|j|}t|tj}t j ||y)N)rWr r r`rWr )rr+rrrlrrs r;test_mode_intoverflowz$TestSeriesMode.test_mode_intoverflowps $BII 69BII6  vy1 Au:RYY /9BII6  vy1rQctdddtjtjg}tdtjgt}|j d}t j ||y)NrWrr`F)r)rr+r}rRrrlr)rMrrOrNs r;test_mode_sort_with_naz%TestSeriesMode.test_mode_sort_with_nasS AueRVVRVV4 55"&&/8u% vx0rQctdddtjgd}|j}tddid}t j ||y)NTFrYr`r)rr\r]rrlr)rMr3rNrOs r;test_mode_boolean_with_naz(TestSeriesMode.test_mode_boolean_with_nasFdE4/yA1d)95 vx0rQzarray,expected,dtype)r?rWrW???@)r@rrcft||j}tj||yr(rrMrIrOrrNs r;test_single_mode_value_complexz-TestSeriesMode.test_single_mode_value_complexs)*U+002 vx0rQ)rrrWrr)yry?rr)rrrrrzrcft||j}tj||yr(rrs r;test_multimode_complexz%TestSeriesMode.test_multimode_complexs)(U+002 vx0rQN)rrrrtrrrr+r.rr typecodesrr}rrrrrrrr r rr complex128 complex64rrrrQr;rrs  [[ r, -vb 7S/TU1 1  [[  1  1 [[&:|,  RVVHrvv|\B C   2 20 [[& 2Wg4F G RVVHrvvw8 9 226 [[1QF1v6SEq#h7QFy$G  RVVH!Q8RVVSMq#h?RVVQNy$O   "2#"2( [[& !U $uug5z&BC 2  21 1 [[.s"--0   .s",,/   %xr}}5   (1)(1 [[+7r}}M  ,F|2<<8    1! 1rQr)(rrdecimalrnumpyr+rtpandasr\rrrr r r r r rrrrrrrrrpandas._testing_testingrl pandas.corerpandas.core.arrays.string_arrowrr<r>rr rrrrrQr;r%s &J(|1|1~KK\ ^ 1^ 1BDDN3$3$lX1X1rQ