gL i UddlmZddlmZddlmZddlmZddlZddl Z ddl Z ddl Z ddl mZmZmZmZmZmZmZddlmZddlmZddlmZdd lmZmZe j@d dd gd d gdZ!e j@eeejDgdZ#e j@ee jHddee jHddee jHddedgddZ%e j@eeejDe j&e&gddZ'dZ(dZ)gdZ*edd dgZ+d!e,d"<e+j[e*Dcgc]}egd#|c}e+j[e*Dcgc]}|d$k7s egd#|c}Gd%d&Z.Gd'd(Z/Gd)d*Z0Gd+d,Z1Gd-d.Z2Gd/d0Z3Gd1d2Z4Gd3d4Z5d5Z6d6Z7e jpjsd7gd8gd9fgd:Z:d;Z;e jpjsdgd?d@Zr48s$q'""r&)rrc|jS)z7 Several types of numeric-dtypes Index objects r#r$s r numeric_idxr60s ==r&c|jSr.)r1r2s r r4r4Bs qzzr&c|jS)zc Fixture to test behavior for Index, Series, tm.to_array, numpy Array and list classes r#r$s r box_1d_arrayr9As ==r&ctjtj|jr=tjtj|j sJ|dz}|S)z_ Helper to adjust the expected result if we are dividing by -0.0 as opposed to 0.0 )npsignbitr anyall)zeroexpecteds r adjust_negative_zerorBLsT  zz"((4.!%%'zz"((4.)--///B Or&c|tjtjfvrt j |n|}|tjtjfvrt j |n|}|||}|j ||}t|trE|jj|js |jjd|_ tj||yr.)rrpowoperatorpowr<abscombine isinstancer indexequals _with_freqtmassert_series_equal)seriesotheropleftrightcython_or_numpyrs r compare_oprU[sCHHhll#;;266&>DCHHhll#;;BFF5MEuoO \\% $F% ););FLL)I||..t4 ?F3r&) i1i2i4i8u1u2u4u8f2f4f8 (zlist[Index | Series]lefts)rar^c$eZdZdZdZdZdZy)TestNumericComparisonsctjdtgdkD}dtgdkD}tj||tgdtjdk}tgddk}tj||tj gddtgdkD}dtgdkD}tj||y)Nrrrjrk)r<r(r rMrNr )selfresultrAs r (test_operator_series_comparison_zerorankz?TestNumericComparisons.test_operator_series_comparison_zerorankssA !22 ** vx0 "RZZ]2)$s* vx0)$Q'&*;; ** vx0r&c|}tjtd}tj||}t |||yNr')r<r rangerM box_expectedr)robox_with_array fixed_now_tstsobjs r test_df_numeric_cmp_dt64_raisesz6TestNumericComparisons.test_df_numeric_cmp_dt64_raisess5 hhuQx ooc>2!#r>:r&cVttjjdj dd}ttjjdj d}t j d|_tj||z d||z z y)Nrkr'rnamez 2000-01-01rj) r r<random default_rngstandard_normalpd Timestampr}rMrN)roabs r test_compare_invalidz+TestNumericComparisons.test_compare_invalidsz 299((+;;A>Q G 299((+;;A> ?l+ q1ua1q5k2r&c|}|tur|ntj}ttjj dj d}tj||d}|j5}|jtdd|dk(}dddttjdt}tj||d}tj||j5}|jtdd|dk7}dddtj||d } tj t"| 5|dkdddy#1swYxYw#1swYXxYw#1swYyxYw) Nrk3F transposer2rr)z0Invalid comparison between dtype=float64 and strmatch)rr<ndarrayr r~rrrMrurrrzerosbool assert_equalpytestraises TypeError) rorvrboxxboxryrrprAmsgs r $test_numeric_cmp_string_numexpr_pathz;TestNumericComparisons.test_numeric_cmp_string_numexpr_pathsD&sBJJRYY**1-==bABooc3%8  " a IIdOR 0CZF "((2T23??8TUC )  " a IIdOR 0CZF   *@ ]]9C 0  #I        s$<E+E7F+E47FF N)r1 __module__ __qualname__rqrzrrr&r rgrgrs 1;3r&rgceZdZejj dejee gejj de ddZ ejj dejee gejj de ddZ ejj de d e d je d je d jj!d e d jj!d gd dZejj de d e d je d jgdejj dej$ej&gdZdZejj de de dje dje djj!dej,dej,ddej0j3dej0j5dej6ddej6dej6dj9ej6ddj9ej6dj;ej<ddej>ge d Z!y!)".TestNumericArraylikeArithmeticWithDatetimeLikebox_clsrRcXt|jt|jzSr.r0r1strr*r2s r r4z7TestNumericArraylikeArithmeticWithDatetimeLike.T!W%5%5AGG %Dr&rc`tjgdd}||}tgd|j}t |t s|t ur t |}|j|jk(sJ||z}t j||||z}t j||y)Nrim8[s]r))10s40s90s)r<r r r*rIr rMr)rorRrrSrArps r test_mul_td64arrz?TestNumericArraylikeArithmeticWithDatetimeLike.test_mul_td64arrs '2!"7u{{K dF #w&'8h'H~~,,, ) )r&cXt|jt|jzSr.rr2s r r4z7TestNumericArraylikeArithmeticWithDatetimeLike.rr&c<tjgdd}||}tgd|j}t |t s|t ur t |}|j|jk(sJ||z }t j||||z}t j||d}tjt|5||z dddd}tjt|5||zdddy#1swY5xYw#1swYyxYw)N)rarbZrr))1s2s3sz5ufunc '(true_)?divide' cannot use operands with typesrz3ufunc 'floor_divide' cannot use operands with types) r<r r r*rIr rMrrrr)rorRrrSrArprs r test_div_td64arrz?TestNumericArraylikeArithmeticWithDatetimeLike.test_div_td64arrs W5!"4EKKH dF #w&'8h'H~~,,, )$ )F ]]9C 0  5L D ]]9C 0  EM       s D7DDD scalar_tdrjdaysztimedelta64[s]ztimedelta64[ms]c,t|jSr.r/r2s r r4z7TestNumericArraylikeArithmeticWithDatetimeLike.d1g&&r&c|}|}ttt|Dcgc]}t|c}}t |t j r|j}|j|}n"t|tur|jd}tj||}tj||}||z} tj| |||z} tj| |ycc}w)Nrm8[us])r rtlenr rIr< timedelta64r*astyper0rrMrur) rorr6rvrrJnrAr*rpcommutes r test_numeric_arr_mul_tdscalarzLTestNumericArraylikeArithmeticWithDatetimeLike.test_numeric_arr_mul_tdscalars!eCJ>O"P9!#4"PQ i 0OOEu-H )_ )x0Hs+??8S1" )e# *#QsC7c,t|jSr.r/r2s r r4z7TestNumericArraylikeArithmeticWithDatetimeLike.rr&r*c|}tjdjtjd}|j|d}t j ||d}|j djd}t|tur|jd}t j ||d}||z} t j| |||z} t j| |y)Ni NFcopyrztimedelta64[D]ztimedelta64[ns]ztimedelta64[us]) r<arangerr+rMruviewr0rr) ror*rrvrarr_i8arrryrArps r *test_numeric_arr_mul_tdscalar_numexpr_pathzYTestNumericArraylikeArithmeticWithDatetimeLike.test_numeric_arr_mul_tdscalar_numexpr_paths9%,,RXXE,BmmEm.ooc3%8;;/0778IJ  ?i ''89H??8SEBy )S )r&c:|}|dd}tddg}t|tjrK|j}|tjdkrtjd}|j |}nt |tur|j d}nt|tjjtjjtjjtjjfr|j d}tj||}tj||}||z }tj ||d} t#j$t&| 5||z dddy#1swYyxYw) Nrjrlz3 Daysz36 Hoursrr$cannot use operands with types dtyper)r rIr<rr*rr0rroffsetsDayHourMinuteSecondrMrurrrr) ro three_daysr6rvrrJrAr*rprs r test_numeric_arr_rdiv_tdscalarzMTestNumericArraylikeArithmeticWithDatetimeLike.test_numeric_arr_rdiv_tdscalar s6Aa !8Z"89 j".. 1$$Erxx(()u-H *  *x0H   ZZ^^RZZ__bjj.?.?ARAR S  w/Hs+??8S1e# )4 ]]9C 0  J    s FFrP)hourszm8[h]NaTDrlrz 2021-01-01z Asia/Tokyo)tzUTCnsct|}tj||}djgd}t|||y)N|) unsupported operand typez3Addition/subtraction of integers and integer-arrayszInstead of adding/subtractingrz;Concatenation operation is not implemented for NumPy arraysz+Cannot (add|subtract) NaT (to|from) ndarrayzBoperand type\(s\) all returned NotImplemented from __array_ufunc__z(can only perform ops with numeric valuesz*cannot subtract DatetimeArray from ndarrayz.Cannot add or subtract Timedelta from integers)rMrujoinr)ror6rPrvrrRrs r &test_add_sub_datetimedeltalike_invalidzUTestNumericArraylikeArithmeticWithDatetimeLike.test_add_sub_datetimedeltalike_invalid?s:4{C0hh   #44r&N)"r1rrrmark parametrizer<r rr rcrrr to_timedelta64to_pytimedeltarrr+r(rrrrrrrr to_pydatetime to_datetime64 datetime64rreprrrr&r rrs  [[Y5&(AB [[D*C*" [[Y5&(AB [[DC6 [[ 1  1  , , . 1  , , . 1  , , . 5 56F G 1  , , . 5 56G H   ' + +( [[ 1  1  , , . 1  , , . ' [[Wrxx&<=*>*,> [[ B  B  . . 0 B  . . 0 B  . . 0 7 7 @ BNN5 ! BNN5# & JJ  a JJ  a  BLL, 7 BLL & BLL & 4 4 6 BLL% 0 > > @ BLL & 4 4 6 BMM% & FF# & +.5/.5r&rceZdZdZdZdZdZejjde je jgdZ ejjdejej ej"gdZejjdejej ej"gd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZ y)TestDivisionByZeroc|}ttjtjtjtjtjgtj}t ||}||z }t j||t|jdtj|jdz }t j|t|yNr)rY rr<naninfr(rBrMassert_index_equalr rr rNror@r6idxrA expected2rp ser_compats r test_div_zeroz TestDivisionByZero.test_div_zerots"&&"&&"&&"&&"&&AT)x8 t fi0C[''-0E0Ed0KK  z6(+;:r&c4|}ttjtjtjtjtjgtj}ttjtjtjtjtjgtj}t ||}t ||}tj|d|tj|d|y)Nr)rrj) rr<rrr(rBdivmodrMr)ror@r6rexleftexrightrps r test_divmod_zeroz#TestDivisionByZero.test_divmod_zeros?rzzR@ S%dF3T" fQi0 fQi1r&rQc|jtjk(r"tjd|j|dz }t tj tj tj tjtj gtj}t||}|||}tj||y)Nz#Div by negative 0 not relevant for rlr)) r*r<r,rskiprrrr(rBrMr)ror@r6rQrrArps r test_div_negative_zeroz)TestDivisionByZero.test_div_negative_zeros    ) KK=k>O>O=PQ RAo266'BFF7RVVGRVVRVVDBJJW'h7C fh/r&dtype1c~|}tgddj|}tgddj|}tjd5t|jjtj |jz dd }dddtj jd d |jd k(r5|jd k(r&tjr|d k(r|jd }||z }tj|||j||z rJy#1swYxYw)Nrlr'firstr|rrrrlsecondignorer?r(r*r}rrlr+float32)r rr<errstatevaluesr(rilocr*r USE_NUMEXPRrMrNrK) ror!rany_real_numpy_dtypedtype2rrrArps r test_ser_div_serz#TestDivisionByZero.test_ser_div_sers&|'299&A 84;;FC [[X &  ##BJJ/&--?H   VV a ;;' !flli&?$?1$D#??95 vx0==%0000  s AD33D<c<|}tddgj|}tddgj|}||z||zf}t|}|djtj|d<tj |dd<t ||}tj|d|dtj|d|dt |j|}tj|d|dtj|d|dy)Nrjrrk) r rlistr<r(rrrMrNr )rorr r rRrSrArps r test_ser_divmod_zeroz'TestDivisionByZero.test_ser_divmod_zeros&q!f~$$V,1v%%f-5=$,.>qk((4  Ae$ vay(1+6 vay(1+6 U+ vay(1+6 vay(1+6r&cttjdg}ttjdg}||z||zf}t||}t j |d|dt j |d|dt|j |}t j |d|dt j |d|dy)N?@rrj)r r<rrrMrNr )rorRrSrArps r test_ser_divmod_infz&TestDivisionByZero.test_ser_divmod_infsrvvsm$}%5=$,.e$ vay(1+6 vay(1+6 U+ vay(1+6 vay(1+6r&ctjdgdz}tjjdj d}t dgdz}|t |z }t j||t ||z }t j||t |t |z }t j||y)Nrr'rkrm)r<r r~rrr rMrN)ro zero_arraydatarArps r test_rdiv_zero_compatz(TestDivisionByZero.test_rdiv_zero_compatsXXqcAg& yy$$Q'77:3%!)$fTl* vx0 #d* vx0 #fTl2 vx0r&ctgdd}ttj tjtjgd}|dz }t j ||yNr;rrjrr|rr r<rrrMrNroserrArps r test_div_zero_inf_signsz*TestDivisionByZero.test_div_zero_inf_signssHZg.BFF7BFFBFF3'Bq vx0r&ctgdd}tdtjdgd}d|z }tj||y)Nrrr|rmr)r r<rrMrNrs r test_rdiv_zeroz!TestDivisionByZero.test_rdiv_zero s>Zg.3,7;S vx0r&ctgdd}|dz}ttj tjtjgd}t j ||yrr)rorrprAs r test_floordiv_divz$TestDivisionByZero.test_floordiv_divsHZg.BFF7BFFBFF3'B vx0r&c.tjgdgdd}||z }tgd}ttjtjtjdg}tj||d}t j ||y)Nrrrrrrrrrj)r DataFramer r<rrMassert_frame_equal)rodfrprrrAs r test_df_div_zero_dfz&TestDivisionByZero.test_df_div_zero_dfsk \\LLI Jb+,34<<%6 BC fh/r&c"tjgdgdd}tgd}ttjtjtjdg}tj||d}tj d5|j jd|j z }dddtj|j|j }tj||y#1swYLxYw) Nrrr&r'rjrrfloatrJcolumns) rr(r r<rrr rrJr/rMr))ror*rrrArrps r test_df_div_zero_arrayz)TestDivisionByZero.test_df_div_zero_array&s \\LLI J+,34<<%6 BC [[X & 8))""7+bii7C 8c2::F fh/ 8 8s )DDc>tjgdgdd}|dz }tjtj|j|j }tj |jdddf<tj||tjd 5|jjd dz }dddtj|j|j }tj||y#1swYLxYw) Nrrr&rr.rlrjrrr() rr(r<rrJr/rr rMr)rr rror*rprArresult2s r test_df_div_zero_intz'TestDivisionByZero.test_df_div_zero_int3s \\LLI Ja<<bhh K " ac1f fh/[[X & 2))""9-1C 2,,s"((BJJG gx0 2 2s )DDctjtjj dj d}|d}||z }||z }|j dj|j drJyNrk)rar'rrr(r<r~rrfillnarKror*rresres2s r (test_df_div_zero_series_does_not_commutez;TestDivisionByZero.test_df_div_zero_series_does_not_commuteBsl \\"))//2BB7K LeBhCx::a='' A7777r&ctjgdgdd}tgd}|s|jd}ttj tj tj dg}tj||d}||z}t j||tjgdgddd}tgdd }ttj tj tj dg}tj||d}||z}t j||y) Nrrr&rrrrr(rFrr+r))rr(r rr<rrMr))rousing_array_managerr*rrrArps r test_df_mod_zero_dfz&TestDivisionByZero.test_df_mod_zero_dfMs \\LLI J|$"LL+E34<<%6 BCb fh/\\LLIPU V|7334<<%6 BCb fh/r&cLtjgdgdd}tgdd}ttjtjtjdg}tj||d}tj d 5|j |j z}dddtj|j|jd }tj|jdd d f<tj||y#1swYnxYw) Nrrr&r>r(r)rrr)rJr/r*rlrj) rr(r r<rrr rJr/r rMr))ror*rrrArr3s r test_df_mod_zero_arrayz)TestDivisionByZero.test_df_mod_zero_arrayes \\LLI J|9534<<%6 BC[[X & ())bii'C (,,s"((BJJiX!vv QqS!V gx0  ( (s DD#ctjgdgdd}|dz}tjtj|j|j }t j||tjd5|jjddz}dddtj|j|j }t j||y#1swYLxYw) Nrrr&rr.rrr() rr(r<rrJr/rMr)rr rr2s r test_df_mod_zero_intz'TestDivisionByZero.test_df_mod_zero_intvs \\LLI Ja<<bhh K fh/[[X & 2))""9-1C 2,,s"((BJJG gx0 2 2s C22C;ctjtjj dj d}|d}||z}||z}|j dj|j drJyr6r7r9s r (test_df_mod_zero_series_does_not_commutez;TestDivisionByZero.test_df_mod_zero_series_does_not_commutesn\\"))//2BB7K LeBhCx::a='' A7777r&N)!r1rrrrrrrrrrEtruedivfloordivrr<r+r(r,rrrrr r"r$r+r0r4r<r@rBrDrFrr&r rrss = =; 2 [[TH$4$4h6G6G#HI 0J 0 [[X"**bii'HI1J1: [[X"**bii'HI7J7, 7 11110 0 18001" 18r&rc eZdZdZdZdZejjde je je jgdZdZdZdZd Zd Zd Zejjde j*e j,gd Zd ZdZdZdZejjdej:ddddej<gdZdZ dZ!dZ"y)TestMultiplicationDivisioncD|}ttdg}ttdg}tj||}tj||}|tdz }tj|||tdz}tj||y)Nrar'rk)r rrMrur)rorvrrrArps r test_divide_decimalz.TestMultiplicationDivision.test_divide_decimalsgbk]#71:,'ooc3'??8S1wqz! ) " )r&ctddgd}tddgd}tdtj g}|j|}t j ||d ||z }t j ||y) Nrjrrr|g{Gzg{GzrF check_names)r r<rdivrMrN)rorrrArps r test_div_equiv_binopz/TestMultiplicationDivision.test_div_equiv_binopsr1vG,X65266'*+E" vxUC% vx0r&c|}|dz }|jd}tj|||dz }t|jdz }tj||y)Nrjr(rk)rrMrrr )ror6rrprAs r test_div_intz'TestMultiplicationDivision.test_div_intsYq::i( fh/qa( fh/r&rQcr|}tj||}||d}tj||yNrj)rMrur)rorQr6rvrrps r test_mul_int_identityz0TestMultiplicationDivision.test_mul_int_identitys0ooc>2C $r&c|}||z}|tjddz}tj||dz|jtj k(rdnd}|tj d|z}tj||y)Nr'r+r)r,)r<r rMrr*r,r)ror6rdidxrp arr_dtypes r test_mul_int_arrayz-TestMultiplicationDivision.test_mul_int_arraystSyrxx11 fcAg. # RYY 6HG ryy)44 fd+r&c|}||z}|jtjk(rdnd}|ttjd|z}t j |t|y)Nr,r+r'r))r*r<r,r rrMrN)ror6rrXrYrps r test_mul_int_seriesz.TestMultiplicationDivision.test_mul_int_seriessTSy # RYY 6HG vbii;<< vvd|4r&c|}tjdd}|t|dzz}t||dzz}tj||y)Nr'r(r)g?)r<rr rMrN)ror6rrng5rprAs r test_mul_float_seriesz0TestMultiplicationDivision.test_mul_float_seriessMyy),vdSj))$$*-. vx0r&cD|}||z}tj||dzyNrkrMr)ror6rrps r test_mul_indexz)TestMultiplicationDivision.test_mul_indexs$s fc1f-r&c|}d}tjt|5|tddzdddy#1swYyxYw)Nz,cannot perform __rmul__ with this index typer20130101r'periods)rrrr ror6rrs r test_mul_datelike_raisesz3TestMultiplicationDivision.test_mul_datelike_raisess>< ]]9C 0 4 *Z3 3 4 4 4s :Ac|}d}tjt|5||ddzdddtjt|5|tjddgzdddy#1swYHxYw#1swYyxYw)Nz(operands could not be broadcast togetherrrrlrjrk)rr ValueErrorr<r rhs r test_mul_size_mismatch_raisesz8TestMultiplicationDivision.test_mul_size_mismatch_raisessy8 ]]:S 1  #a(N  ]]:S 1 # "((Aq6" " # #   # #s A0 A<0A9<Bc|}|}t||jd}tj||}tj||}||d}tj||y)Nrrr rMrur)rorQr6rvrrrArps r test_pow_floatz)TestMultiplicationDivision.test_pow_floats\CJJ,-ooc3'??8S1C )r&c|}|}t|jdz}tj||}tj||}|dz}tj||yrarn)ror6rvrrrArps r test_moduloz&TestMultiplicationDivision.test_modulosUa(ooc3'??8S1q )r&c(|}t|d}tjd5t|jd\}}dddt t f}t ||D]\}}t j||y#1swYJxYw)Nrkrr)rr<rr rziprMr) ror6rrprPmodrAres r test_divmod_scalarz-TestMultiplicationDivision.test_divmod_scalar sQ [[X & -cjj!,HC -:uSz)) (DAq  ! !!Q ' (  - -s BBc|}tj|jj|jjdz}t ||}tj d5t |j|\}}dddttf}t||D]\}} tj|| y#1swYJxYwNr)rkrr) r<onesr shaper*rrrrsrMr ror6rrPrprPrtrArurvs r test_divmod_ndarrayz.TestMultiplicationDivision.test_divmod_ndarrays (( 0@0@AAEU# [[X & 1cjj%0HC 1:uSz)) (DAq  ! !!Q ' (  1 1s 'C  Cc|}tj|jj|jjdz}t |t |}tjd5t |j|\}}dddt t f}t||D]\}} tj|| y#1swYJxYwry) r<rzr r{r*rr rrsrMrNr|s r test_divmod_seriesz-TestMultiplicationDivision.test_divmod_series!s (( 0@0@AAEVE]+ [[X & 1cjj%0HC 1#;s +) )DAq  " "1a ( )  1 1s 0CCrPigX9v@gQ ctjjdjd}d}||}t j |tj |z |||z t j tj ||z|||zt j |tj |z|||zt j tj ||z |||z y)Nrk)r'rlcHtj|tdgdS)NABCDE)jimjoejolier.)rr(rr2s r r4z?TestMultiplicationDivision.test_ops_np_scalar..0sbll T'],C r&)r<r~rrrMr)r )rorPvalsfr*s r test_ops_np_scalarz-TestMultiplicationDivision.test_ops_np_scalar-syy$$Q'77? tW b288E?2AdUlOD bhhuo2AdUlOD b288E?2AdUlOD bhhuo2AedlODr&cttjdtjt ddd}d|_t jd|i}tj||z||dzd tj||z||dzd tj||k||dkd tj||z ||dz d y) Nrar) 2020-01-01rfrxrJr}AFrN) r r<rr(r r}rr(rMrN)rorxr*s r test_operators_framez/TestMultiplicationDivision.test_operators_frame<s  IIb +\26   \\3) $ rBwRW %H r2vrRW}%H rBwRW %H rBwRW %Hr&ctjd5tjgdgdd}|d|dz}t |dj |dj zd }tj |jd d tj|||dd z}t tj |jd }tj|||jd}|d|dz}t |dj |dj z}tj|||jd}|d|dz}|d|dz}|j|rJ dddy#1swYyxYw) Nrrrrr&rrr(r)rrlr) r<rrr(r r rr rMrNrJrrK)roprprAr3s r test_modulo2z'TestMultiplicationDivision.test_modulo2Ns^ [[X & . ||LMAwZ!H+-Faj//!H+2D2DDIVH!#HMM!A   " "68 4wZ!^FbffAGG'BH  " "68 4#AwZ!H+-Faj//!H+2D2DDEH  " "68 4#AwZ!H+-FkAgJ.G}}W- ---) . . .s EE>>Fchtjd5tddg}|dz}ttjtjg}t j ||d|z}ttjdg}t j ||dddy#1swYyxYw)Nrrrrjrm)r<rr rrMrN)rosrprAs r test_modulo_zero_intz/TestMultiplicationDivision.test_modulo_zero_intes [[X & 51vAUFrvvrvv./H  " "68 4UFrvvsm,H  " "68 4 5 5 5s BB((B1N)#r1rrrLrQrSrrrrEmulrrmulrHrVrZr\r_rcrirlrFrDrorqrwr}rr<rrrrrrrr&r rJrJs* 10 [[THLL#((H.s fqjr&rc d|zSrrr2s r r4zDTestAdditionSubtraction.test_series_frame_radd_bug..s FQJr&rar)rrfrxrrrzConcatenation operationr)r rtrmaprMrNrr(r)r<rr(r rrrrr) rorwirrprAframerxfix_nowrs r test_series_frame_radd_bugz2TestAdditionSubtraction.test_series_frame_radd_bugsCuQx0!s1v01$8801 vx0 fd^,%<<2F)G HI fh/  IIb +\26 ,,.hh*)  ]]9C 0  bL ]]9C 0  L  912    sE$,E)E5)E25E>cttjjdj d}||j j z }||j z }tj||ttddtdd}||j j z }||j z }tj||d}tjt|5||j jz }dddtjtjjdj dtdd}tj d |d <|d |j j z |d <|d |j z |d <tj|d |d d y#1swYxYw)Nrkr'rerfrz.cannot subtract PeriodArray from DatetimeArrayr)r'rk20130102daterArpFrN)r r<r~rrrJ to_seriesrMrNr rrr to_periodrr(r)rorrArprr*s r test_datetime64_with_indexz2TestAdditionSubtraction.test_datetime64_with_indexsRYY**1-==a@A,,..syy vx0 z1 -Z3 ,,..syy vx0> ]]9C 0 1399..00F 1\\ II ! !! $ 4 4V <Z3 \\*-6 Fbhh&8&8&:::&zBHH,8  r(|R ^O 1 1s <GG(c|}tjjdjd}t|tj|j }||z}||z}|j D]\\}}|j D]D\} } ||| dz} tj| s| | k(r,Jtj| rDJ^|j D]_\}}|j D]G\} } ||| ||z} tj| s| | k(r/Jtj| rGJay)Nrkrr)r<r~rr r r/itemsisnan) ro float_framergarbage colSeriesidSum seriesSumcolrOrvalorigVals r test_frame_operatorsz,TestAdditionSubtraction.test_frame_operatorss3))''*11!47"((5==*AB  I%  ;;= -KC"LLN -S*S/A-xx}'>)>88G,,,  - -%??, -KC"LLN -S*S/IcN:xx}'>)>88G,,,  - -r&cvtj|gd}||z}|dz}tj||y)N)rCBr)r/rk)rr(rMr))rorframe2addedrAs r test_frame_operators_col_alignz6TestAdditionSubtraction.test_frame_operators_col_aligns5k3GHA: eX.r&c tjdgdi}tj||ztjddtj dgiy)Nr)rNraabb)rr(rMr)r<r)ror*s r test_frame_operators_none_to_nanz8TestAdditionSubtraction.test_frame_operators_none_to_nansC \\3 01 2 b2gr||S4:N4O'PQr&r*)r-r+ctj|tjdg|tjdg|g}|D]1}||zj|sJtj||z|3y)Nr)r)r/r*rrJr*)rr(rKrMr))ror*framesr*s r test_frame_operators_empty_likez7TestAdditionSubtraction.test_frame_operators_empty_likest LLu % LL#e 4 LLs% 0   /BG##B' ''  ! !"r'2 . /r&funcc |dzSrarr2s r r4z TestAdditionSubtraction. 1q5r&c|dddSrarr2s r r4z TestAdditionSubtraction.AccFr&cyrsrr2s r r4z TestAdditionSubtraction.r&)multiplysliceconstantrc|}ttjdtjt ddd}||}t |||yNrar)rrfrxrr r<rr(r rU)roall_arithmetic_functionsrrQrOrPs r test_series_operators_arithmeticz8TestAdditionSubtraction.test_series_operators_arithmeticsI & IIb +\26  V 65"%r&c |dzSrUrr2s r r4z TestAdditionSubtraction.!s 1q5r&cyrsrr2s r r4z TestAdditionSubtraction.!rr&addrc|}ttjdtjt ddd}||}t |||yrr)ro comparison_oprrQrOrPs r test_series_operators_comparez5TestAdditionSubtraction.test_series_operators_compare sI IIb +\26  V 65"%r&c |dzSrarr2s r r4z TestAdditionSubtraction./rr&c|dddSrarr2s r r4z TestAdditionSubtraction./rr&cyrsrr2s r r4z TestAdditionSubtraction./rr&crttjdtjt ddd}||}t ||}t |tjrQt|t|k7r:g}|D]2}|j||jtj4n|}tj|}tjd5t |jtj|}dddt|D]\}} t!j"tj|| |j$|j$k(sJt!j&|j(|j(j+dy#1swYxYw) Nrar)rrfrxrrr)r r<rr(r rrIrIterablerappendrasarrayrr rsrMassert_almost_equalr}rrJrL) rorrOrPresultsother_npr expectedsrprAs r test_divmodz#TestAdditionSubtraction.test_divmod-sW  IIb +\26  V ' eS\\ *s6{c%j/HH ("' (H::h' [[X & Dv}}bjj.BCI D!$GY 7 O FH  " "2::f#5x @;;&++- --  ! !&,, 0G0G0M N  O D Ds )*F--F6cttjddtjt ddd}|d z}t ||}ttj gt|z|jd}ttjgt|z|jd}tj|d |tj|d|y) Nrj r)rrarfrxrr) r r<rr(r rrrrJrrMrN)rotserrPrpexp1exp2s r test_series_divmod_zeroz/TestAdditionSubtraction.test_series_divmod_zeroNs IIa2:: .\26  qe$rvvhT*$**4HrvvhT*$**4H vay$/ vay$/r&N)r1rrrrrr rr<rrrr(rrrrrrrrrrrrr&r rrss [[!yU #>yU #>S"&&"&&1fCP  yU #>|4d6lS   c9-T%[A c<0V E cAq!RVV#45T&\J  88 DP@-2/ R [[W&89 /: / [[ *K8 - &  & [[+.UJ4G&& [[ *K8 - O  O80r&rcleZdZejj deeegejj de je je jgdZ ejj deegejj de je je jgdZejj deegejj de je je jgdZdZy)TestUFuncCompatholderr*c|turtnt}|tur;|tjk7rt j d|dtddd}n|tjd|d}tj|}|tjtjd|d}tj||y)Nzdtype z not relevant for RangeIndexrr'foor|r)) r rrr<r+rrrsinrMr)rorr*rrrprAs r test_ufunc_compatz!TestUFuncCompat.test_ufunc_compatfs&(fe Z   fUG+GHIQ.C1E2?Crvvbii78uE )r&c|gd|d}|turtnt}tj|}|jdk(r t ||sJttjtj gdtjd}tj||}tj||tj|d}|jdk(r t ||sJtgdtjd}tj||}tj|||dz}|jdk(r t ||sJtgd tjd}tj||}tj|||dz }|jdk(r t ||sJtgd tjd}tj||}tj|||d z}|jdk(r t ||sJtgd tjd}tj||}tj|||dz }|jdk(r t ||sJtgdtjd}tj||}tj||y) N)rjrkrlrr'r3rr`r)r|r)g?rg?rg@)rr@g@g@)grmrrrr)rrrrr) r rr<sqrtr*rIr r(rMrurdivide)rorr*rrrpexps r test_ufunc_coercionsz$TestUFuncCompat.test_ufunc_coercionsvs<_E<&(fe||t# 63(???BGGBHH_BJJGHsSooc3' $3$||t# 63(???-RZZcJooc3' $s||t# 63(???-RZZcJooc3' $s||t# 63(???.bjjsKooc3' $s||t# 63(???-RZZcJooc3' $s||t# 63(???-RZZcJooc3' $r&c|gd|d}|turtnt}tj|}t |t sJtgdtj d}tgdtj d}tj|dtj||tj|dtj||y)Nrir3r)rmrmrm)rrrrrj) r rr<modfrItupler(rMrru)rorr*ryrrprrs r !test_ufunc_multiple_return_valuesz1TestUFuncCompat.test_ufunc_multiple_return_valuessYe#6&(fe&%(((_BJJSA_BJJSA q 2??4#=> q 2??4#=>r&ctgdgdd}tjj|ddgdtgdgdd}t j ||y) Nrnrir3rrrkra)rarj )r r<ratrMrN)rorrAs r test_ufunc_atzTestUFuncCompat.test_ufunc_atsF 9IC 8  !aVR +YSA q(+r&N)r1rrrrrrrr r<r+r,r(rrrr rr&r rrds  [[Xz6'BC [[WrxxBJJ&GH *ID * [[Xv7 [[WrxxBJJ&GH'%I8'%T [[Xv7 [[WrxxBJJ&GH ?I8 ?,r&rcNeZdZejj ddegdZejj ddegdZejj de je je je je jgdZy)TestObjectDtypeEquivalencer*Nc|}tgd|}ttjtjtjg|}tj||}tj||}tj|z}tj |||tjz}tj ||y)Nrir))r r<rrMrurror*rvrrrArps r test_numarr_with_dtype_add_nanz9TestObjectDtypeEquivalence.test_numarr_with_dtype_add_nansYe,2662662662%@ooc3'??8S1# )rvv )r&c|}tgd|}tgd|}tj||}tj||}d|z}tj|||dz}tj||y)Nrir))rkrlrrj)r rMrurr s r test_numarr_with_dtype_add_intz9TestObjectDtypeEquivalence.test_numarr_with_dtype_add_intsmYe,)51ooc3'??8S1S )q )r&rQcBttjjdj dtj dt }|d|}|d|jt}tj|jt|y)Nrkrarr) r r<r~rrrobjectrr-rMrN)rorQrrprAs r test_operators_reverse_objectz8TestObjectDtypeEquivalence.test_operators_reverse_objectst  II ! !! $ 4 4R 8))B-  Cc3::e,- v}}U3X>r&)r1rrrrrrrrrErsubrrGrHrrr&r r r s [[WtVn5 *6 * [[WtVn5 *6 * [[ x||X\\83C3CXEVEVW ?  ?r&r ceZdZejj dejejejejejgejj de ddde ddde ddde d d d gejj d e ddde ddde ddde d d d gd Z ejj dejejejejejgejj de ddde ddde ddde d d d gejj dgddZejj de ddde dddgejj d e ddde dddgdZejj de ddde dddgejj dddgdZejj dejejejejejej"ej$gdZdZejj de dddde dddfe dddde dddfe ddddee dddj,dzfe ddddee dddj,dzfe dd e dfe dd!dd"e dddfe d dd#d!e d$d dfe d%d&d"de dfgd'Zejj d(ej2ej4gejj d)gd*d+Zd,Zy-).TestNumericArithmeticUnsortedrQidx1rrarjrdrkir'r;idx2c|jd}|jd}|||}|t|jt|j}tj||dyNrbarequivexact)_renamerto_numpyrMr)rorQrrrprAs r test_binops_indexz/TestNumericArithmeticUnsorted.test_binops_indexs_:||E"||E"D$eDMMO,eDMMO.DE fhg>r&rscalar)r;rjrkc|||}|t|j|}tj||dyNrr)rr!rMr)rorQrr#rprAs r test_binops_index_scalarz6TestNumericArithmeticUnsorted.test_binops_index_scalars8*CeCLLN+V4 fhg>r&c|jd}|jd}t||}tt|jt|j}t j ||dyr)r rFrr!rMr)rorrrprAs r test_binops_index_powz3TestNumericArithmeticUnsorted.test_binops_index_pow(s_ ||E"||E"T4uT]]_-uT]]_/EF fhg>r&ct||}tt|j|}tj||dyr%)rFrr!rMr)rorr#rprAs r test_binops_index_scalar_powz:TestNumericArithmeticUnsorted.test_binops_index_scalar_pow3s9 S&!uS\\^,f5 fhg>r&ctd}ttjj dj d}|t||}|||}t j||tjtjj dj d}|tj||g|}|||}t j||y)Nr'rk)rkr') rr r<r~rrrMrNrr(r))rorQrJrPrArps r $test_arithmetic_with_frame_or_serieszBTestNumericArithmeticUnsorted.test_arithmetic_with_frame_or_series=s1 ryy,,Q/??BCfUmU+E5! vx0 RYY2215EEfMNbllE5>2E:E5! fh/r&cLtddd}|dz}tddd}tj||d|dz}tddd}tj||d|dz }td d d}tj||d|dz }tdd d jd }tj||d|dz }tddddz }tj||d|d z}|}tj||d||z}t |j |j z}tj||dtddd}|dz}t |j dz}tjt |j |dy)NrrarkrdrTrrrr'rjr()rrMrrrr _values)rorrprAs r test_numeric_compat2z2TestNumericArithmeticUnsorted.test_numeric_compat2XsB"qaQ' fhd;qaQ' fhd;qb!Q' fhd;qaA&--i8 fhd;qaQ'!+ fhd; fhd;scjj01 fhd;D!$a%* eFMM2HDIr&zidx, div, expectedr/iii7!Cdrrrrlir.ii8c:tj||z|dy)NTrrb)rorrPrAs r test_numeric_compat2_floordivz;TestNumericArithmeticUnsorted.test_numeric_compat2_floordivs0 cSj($?r&r*delta)rjrr;c||}tgd|}||z}t|j|z|}tj||||z }t|j|z |}tj||tj||zd|ztj||z d|z||z jrJy)N)rarrr)rkr)rr rMrempty)ror*r8rJrprAs r test_addsub_arithmeticz4TestNumericArithmeticUnsorted.test_addsub_arithmeticse l%0-U; fh/-U; fh/ eemQY7 eemQY7EM(((((r&cbttjtjtjg}tgd}tgd}tj||}tj||}tj||}||z}tj ||y)N)rrr)rrr)rr<rrMrur)rorvrRrSrArps r test_pow_nan_with_zeroz4TestNumericArithmeticUnsorted.test_pow_nan_with_zeroszbffbffbff-.i )t^4~6??8^<u )r&N)r1rrrrrrErrrrHrGrr"r&r(r*rFrtr,r1rr0r7r<r+r(r;r=rr&r rrs_ [[ LL LL LL          [[ q"a q"a sB " q"b !   [[ q"a q"a sB " q"b !  ? 8? [[ LL LL LL          [[ q"a q"a sB " q"b !   [[Xz2?3 (?  [[VjB&:Jq"a T2 &Jr2q,A B1dA&jD!,445:  1c1%jC+334;  ]B 1 . 1a !Z1a%8 9 C $aBA)> ? dA &:a= 9# ,@-,@ [[Wrxx&<= [[Wj1)2>)" *r&rc\tjgdgdd}tjdgdigd}|j|d }tjtjd d d gd tj d tj gd}t j||y) Nrn)皙?Nr?)rrr)r?g333333?g?)rrkrlrrj fill_valuerrm)rr( rfloordivr<rrrMr))r*rPrprAs r test_fill_value_inf_maskingrCs I,<= >B LL#/y AE \\%A\ .F||vvsC%S"&&#rvv,FGH&(+r&c$tjtjdtjddddgdztjgdztjddt dt d }tjtj jdjd t d t d  }tjd5|j|d dddy#1swYyxYw)Nrarjrkrlr)rrrr abcdefghijrr.)rar abcdefghjkABCXrr@) rr(r<rrrr~rrrMassert_produces_warningrP)pdf1pdf2s r test_dataframe_div_silencedrKs <<2&&!Q1%)&&B2  < V  D << a 009< V  D # #D )% !$%%%s )DDzdata, expected_datarn)rrkrct|d}||}|||z}|||z}t||fvrt}nt||fvrt}nt}||d} tj|| tj|| y)NInt64r))r r rrMr) r%r9r expected_datar containerrRrSclsrAs r test_integer_array_add_list_likerQs G $C#C(I |D) )D   *E , 344 H&(+r&ctgd}tgdd}||z}tgdd}tj||||z }tgdd}tj||y)Nri)rkrjrlUInt64r))rlrlrSFloat64)r;rjr)r rMrN)series1series2rprAs r test_series_add_sub_with_UInt64rfsdYGYh/G w Fiy1H68, w Fj 2H68,r&)> __future__r collectionsrdatetimerdecimalrrEnumpyr<rpandasrrrr r r r r pandas._testing_testingrM pandas.corerpandas.core.computationrrpandas.tests.arithmetic.commonrrfixturer!to_arrayr%rr6rr9rBrU_ldtypesrc__annotations__extendrgrrrJrrr rrCrKrrrQr[r`rfr)s0r rws# 7 a\ 87LMN vr{{345 ibii+, ibii)* ibii*+1   #   62;;$ 7=Q 4 N)"b"566 X FEf\/ FG H V5QU eL. VW 33t@5@5NX8X8vb5b5Jn0n0bO,O,d0?0?fO*O*d ,%*% %, ,), 5,6-, -S-G Vs%I9 I>I>