gL i9NddlmZddlZddlZddlZddlZddlmcm Z ddl Z ddl mZddlmZej$ej&ej(gdZej$ej,dej.j0dgd d g d Zej$d Zej.j7dej8ej:ej<gdZej.j7dddgddgdZ ej.j7dddgddgdZ!ej.j7dddgddgej.j7dddgddgdZ"ej.j7dddgdZ#ej.j7dejHgej.j7dddgej.jKddZ&dZ'dZ(dZ)ej$e jTgd ejV!e jTgd d"!e jTgd d#!e jTgd$d%!e jXgd&e jXgd&j[d'e jXgd&j]d()e j^gd*e j`e jbdd+e jbd,d-e jbd+d,gg d. d/Z2Gd0d1Z3ej.j7d2e4ee5gd3Z6d4Z7d5Z8d6Z9d7Z:e jvd8Z>'1#= > 2>>'1#= > D YYr %F EbJ5/K j) {+ yy +$7H K F68,rc|\}}|rBt|tjdd}t|tjdd}d}tj||}tj||j d}||f} ||f} |rt | } t | } tj|| |} || } tj| | yr9) rr(r)r-Indexastyper;r.r/r<s r test_binary_ufunc_with_indexrDRs %FB 2>>'1#= > 2>>'1#= > D YYr %F HHRd # * *7 3EbJ5/K j) {+ yy +$7H K F68,rshuffle unalignedalignedc|\}}|rBt|tjdd}t|tjdd}d}tj||}tj||} tj j djt|} |rQ| j| } |r| j|dj} n+|j| dj} n |j} ||f} || f} |r(tt| } tt| } tj|| | |}|| }tj||y)Nrrrr%r:rr&)rr(r)r-rrr permutationlentakealignr'tupler;r.r/)r5rErr r#r!r"r%r1r=idxr'r>r?r3r2s r test_binary_ufunc_with_seriesrOms8%FB 2>>'1#= > 2>>'1#= > D YYr %F IIbt $E ))   " . .s2w 7C 3 KK'*00ELL'*00E bJ5/K 8J/0 H[12 yy +5tDH K F68,rc(|\}}|r t|}d}tj|d}||f}||f} |r(tt |}tt | } tj|| d} ||} t j | | y)Nrr%r:)rr(r-rMr;r.r/) r rr5r#r0_r=r1r?r>r3r2s r test_binary_ufunc_scalarrRs %FC # E YYs (F5/KuJ H[12 8J/0 yy +&9H K F68,rz$ignore:divide by zero:RuntimeWarningcZ|\}}d||dk(<d||dk(<|rBt|tjdd}t|tjdd}tj|}tj|}|r|j d}|||}t |t sJ|||} t | t sJtj| dtj|dtj| dtj|dy)Nrrr)frac) rr(r)r-sample isinstancerMr.r/) r rrEr#r!r"s1s2r3r2s r "test_multiple_output_binary_ufuncsrZs%FBBrQwKBrQwK 2>>'1#= > 2>>'1#= > 2B 2B YYAY R}H h && & 2r]F fe $$ $6!9bii &<=6!9bii &<=rc|\}}|r t|}tj|d}tj|}tj|}t |t sJt |t sJtj|dtj|ddtj|dtj|ddy)Nr%r:rrT) rr(r-rmodfrWrMr.r/)rr#r0rQr1r2r3s r test_multiple_output_ufuncr]s%FC # YYs (F WWV_Fwws|H fe $$ $ h && &6!9bii &&IJ6!9bii &&IJrc|\}}tj|d}tj|d}|||}|jJy)Nar:b)r(r-r%)r rr#r!r"rXrYr2s r #test_binary_ufunc_drops_series_namerasF $FB 2C B 2C B 2r]F ;;  rc Gdd}tj|d|dg}tj|}t j tj ||tjtj ||t j tj ||dtjtj ||dy)NceZdZddZdZy)$test_object_series_ok..DummyNc||_yrvalueselfrgs r __init__z-test_object_series_ok..Dummy.__init__ DJrc4|j|jzSrrfrir=s r __add__z,test_object_series_ok..Dummy.__add__s:: + +rreturnN)__name__ __module__ __qualname__rjrnrr Dummyrds   ,rrurrT)rarrayr(r-r.r/add)rur0sers r test_object_series_okrys,, ((E!HeAh' (C ))C.C266#s+RYYrvvc37G-HI266#uQx0"))BFF3ars#agg,rc|jSrrr s r values_for_np_reducers ==rc$eZdZdZdZdZdZy)TestNumpyReductionscp|}|}tjd5||}dddt|tjj j r1tjjd}|j||jjdvrtjj}|tj ur)|j#d} tj$|| y|tj&ur!|j(j#} || k(sJ|j#} || k(sJyydj+gd} tj,t.| 5tjjdddy#1swY~xYw#1swYyxYw) NzSparseArray has no 'prod')reasoniufF numeric_only|)does not support reductionunsupported operand typez$ufunc 'multiply' cannot use operandsmatch)r.assert_produces_warningrWr(corearraysrpytestmarkxfail applymarkerrkindrmultiplyreduce DataFrameprodr/rB_valuesjoinraises TypeError) rirbox_with_arrayr boxvaluesobjrr2r3msgs r test_multiplyz!TestNumpyReductions.test_multiplysd%  ' ' - f+C  fbggnn88 9;;$$,G$HD    % <<   %[['',Fbll"8887&&vx8;;++-)))88:)))* ((Cy4 ( ""3' ( (7  6 ( (s F6 F,F),F5c|}|}tjd5||}ddd|jjdvrtj j }|tjur)|jd}tj||y|tjur!|jj}||k(sJ|j}||k(sJyydjgd}tjt |5tj j dddy#1swYxYw#1swYyxYw)NmiufFrr)rrzufunc 'add' cannot use operandsr)r.rrrrrwrr(rsumr/rBrrrrr) rirrrrrr2r3rs r test_addzTestNumpyReductions.test_add1s %  ' ' - f+C  <<   &VV]]3'Fbll"7776&&vx8;;??,)))779)))* ((Cy4 # c" # #/  . # #s E E E  Ec|}|}d}|tjur|jjdvrd}t j d5||}dddt jj}|tjur)|jd}t j||y|d}||k(sJ|rt|t|k(sJyy#1swYxYw)NTifFrrT) r(rBrrr.rrmaximumrrmaxr/type rirrrr same_typerr2r3s r test_maxzTestNumpyReductions.test_maxOs% "((?v||00J>I  ' ' - f+C ""3' ",, wwEw2H  " "68 4ayHX% %%F|tH~555    CC%c|}|}d}|tjur|jjdvrd}t j d5||}dddt jj}|tjur)|jd}t j||y|d}||k(sJ|rt|t|k(sJyy#1swYxYw)NTrFrr) r(rBrrr.rrminimumrrminr/rrs r test_minzTestNumpyReductions.test_mings% "((?v||00J>I  ' ' - f+C ""3' ",, wwEw2H  " "68 4ayHX% %%F|tH~555  rN)rqrrrsrrrrrtrr rr s (D#<606rrtype_ctjgdd}|gd}tj||}tjtj|j |d}t j ||y)NrTrrr%r:)rr)r(r-rrwto_numpyr.r/)rr_r`r2r3s r test_binary_ufunc_other_typesrs\ )&)A iA VVAq\Fyy a0v>H68,rcGfddtjddg}tj|d}tjddg}t j ||y)Nc8eZdZddZdZdeffd ZdefdZy)#test_object_dtype_ok..ThingrpNc||_yrrfrhs r rjz,test_object_dtype_ok..Thing.__init__rkrcXt|d|}t||j|zS)Nrg)getattrrrgrms r rnz+test_object_dtype_ok..Thing.__add__s*E7E2E4:djj501 1rcTt|uxr|j|jk(Sr)rrg)rir=Things r __eq__z*test_object_dtype_ok..Thing.__eq__s$;%'EDJJ%++,E Erc"d|jdS)NzThing()rf)ris r __repr__z,test_object_dtype_ok..Thing.__repr__sDJJ.add3s1uqyrrrTrrrzTCannot apply ufunc to mixed DataFrame and Series inputs.r) r frompyfuncr(r-objectr.r/rrrrreescape)rr rxr2r3dfrs r $test_array_ufuncs_for_many_argumentsrs MM$1 %E ))QF C 3Q Fyy!Qv.H68, 1vh B 0 *"))C. A c3s 7 C  Cctjgd}tj|}tjgd}t j ||y)N)ggg?g?)gggg?)r(r-rfixr.r/)rxr2r3s r test_np_fixrs? ))* +C VVC[Fyy/0H68,r)= collectionsrrr+numpyrrpandas.util._test_decoratorsutil_test_decoratorstdpandasr(pandas._testing_testingr. pandas.arraysrfixturerw logaddexpr r rfails_arm_wheelsrr# parametrizepositivefloorexpr4r@rDrOrRdivmodfilterwarningsrZr]raryrvr to_datetime tz_localize to_period to_timedelta IntervalIndexIntervalrrr*rMrrrrr&skip_copy_on_write_not_yet_implementedrrtrr r s  ))% -./  FLLV[[%A%A BE J 7 2;;"&&"AB -C - $Y 4KL-M-.$Y 4KL-M-4T5M Y7OP$Y 4KL#-MQ#-L$/-0-.299+.T5M2BC>D3/><K& T"((+'*),=1/0/0<  Aq@QRS     p6p6f4"67-8--*$,.**-+-r