+
    0iI                     n    ^ RI t^ RIHt ^ RIt^ RIHt ^ RIHtH	t	H
t
 ^ RIHt ^RIHt  ! R R4      tR# )	    N)assert_allclose)raises)binned_statisticbinned_statistic_2dbinned_statistic_dd)check_random_state)check_named_resultsc                   n  a  ] tR t^t o ]R 4       tR tR tR tR t	R t
R tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R t#R  t$R! t%R" t&R# t'R$ t(R% t)R& t*R' t+R( t,R) t-R* t.R+ t/R, t0]1Pd                  Pg                  R-]4Pj                  ]4Pl                  .4      ]1Pd                  Pg                  R.]4Pn                  ]4Pp                  ]4Pr                  ]4Pt                  ]4Pv                  ]4Px                  R/R0 R1 .	4      R2 4       4       t=R3t>V t?R4# )5TestBinnedStatisticc                >   \        R 4      pVP                  ^dR7      V n        VP                  ^dR7      V n        VP                  ^dR7      V n        VP                  RR7      V n        VP                  ^dR7      V n        VP                  ^dR7      R,           V n        R# )i&  sizeg    .AN)d      )r   uniformxyvXwu)clsrngs   & e/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/stats/tests/test_binned_statistic.pysetup_classTestBinnedStatistic.setup_class   s}     &%%%*%%+    c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        P                  ! V^
R7      w  rg\        W64       \        WG4       R# countbinsNr   r   r   np	histogramr   )selfr   r   count1edges1bccount2edges2s   &       r   test_1d_count!TestBinnedStatistic.test_1d_count   sI    FFFF-aG"Eab1''r   c                l    V P                   pV P                  p. ROpV F  p\        WV^
R7       K  	  R# )meanr!   N)r/   medianr    sum)r   r   r   )r&   r   r   
statistics	statistics   &    r   test_gh5927TestBinnedStatistic.test_gh5927"   s1     FFFF7
#IQ926 $r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       R# stdr!   N)r   r   r   r$   r8   r   r&   r   r   stat1r(   r)   stat2r+   s   &       r   test_big_number_std'TestBinnedStatistic.test_big_number_std+   sH     FFFF,Q5rBr,Q266Cr%r   c           	         V P                   pV P                  p\        \        WR RR7      4       \        WRRR7      w  r4p\        W\        P
                  RR7      w  rgp\        W64       R# )r    i  r!   r8   N)r   r   printr   r$   r8   r   r9   s   &       r   test_empty_bins_std'TestBinnedStatistic.test_empty_bins_std5   sX    FFFFqW489,Q5tDr,Q266Er%r   c           
     V   V P                   pV P                  P                  4       p\        P                  V^ &   \        \        \        W!R^
R7       \        \        \        W!R\        P                  ! ^
4      R7       \        P                  V^ &   \        \        \        W!R^
R7       R# )r   r8   r!   r    N)
r   r   copyr$   infassert_raises
ValueErrorr   int64nan)r&   r   r   s   &  r   #test_non_finite_inputs_and_int_bins7TestBinnedStatistic.test_non_finite_inputs_and_int_bins?   st     FFFFKKMvv!j"2A%bIj"2A%88B<	)vv!j"2A'Kr   c                l    V P                   pV P                  p\        WR ^
R7      pRp\        W44       R# r    r!   N)r3   	bin_edges	binnumber)r   r   r   r	   )r&   r   r   res
attributess   &    r   test_1d_result_attributes-TestBinnedStatistic.test_1d_result_attributesL   s/    FFFFqW26<
C,r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        P                  ! V^
VR7      w  rg\        W64       \        WG4       R# r1   r!   )r"   weightsNr#   )r&   r   r   sum1r(   r)   sum2r+   s   &       r   test_1d_sumTestBinnedStatistic.test_1d_sumT   sK    FFFF+A%bAb||AB:#'r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       \        WG4       R# r/   r!   N)r   r   r   r$   r/   r   r&   r   r   r:   r(   r)   r;   r+   s   &       r   test_1d_mean TestBinnedStatistic.test_1d_mean^   sN    FFFF,Q6Cr,Q277Dr%'r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       \        WG4       R# r7   )r   r   r   r$   r8   r   r\   s   &       r   test_1d_stdTestBinnedStatistic.test_1d_stdh   N    FFFF,Q5rBr,Q266Cr%'r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       \        WG4       R# minr!   N)r   r   r   r$   re   r   r\   s   &       r   test_1d_minTestBinnedStatistic.test_1d_minr   rb   r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       \        WG4       R# maxr!   N)r   r   r   r$   rj   r   r\   s   &       r   test_1d_maxTestBinnedStatistic.test_1d_max|   rb   r   c                    V P                   pV P                  p\        WR ^
R7      w  r4p\        W\        P                  ^
R7      w  rgp\        W64       \        WG4       R# r0   r!   N)r   r   r   r$   r0   r   r\   s   &       r   test_1d_median"TestBinnedStatistic.test_1d_median   sN    FFFF,Q8"Er,Q2992Fr%'r   c                D   V P                   R ,          pV P                  R ,          p\        WR^R7      w  r4p\        P                  ! . RO4      p\        P
                  ! V4       Uu. uF  quV8H  P                  4       NK  	  pp\        WV4       \        W4       R# u upi )N   Nr    r!   N)r         r   rt   r   r   r   r   ru   ru   r   r   ru   rt   r   ru   ru   rt   ru   )r   r   r   r$   arrayuniquer1   r   )	r&   r   r   r'   r(   r)   bc2ibcounts	   &        r   test_1d_bincode#TestBinnedStatistic.test_1d_bincode   s}    FF3KFF3K-aG!Dhh ! " ,.99R=9=a7--/=9 ' :s   (Bc                f   \         P                  P                  R 4      p\         P                  ! ^4      pVP                  ^4      p\	        VR,          VR,          4      w  rEp\	        W#R.R7      w  rxp\	        W#RR7      w  rp\        WG4       \        WX4       \        WI4       \        WZ4       R# )l    p- :N   NrangeN)r      )r$   randomdefault_rngaranger   r   )r&   r   r   datar/   r"   _
mean_range
bins_rangemean_range2bins_range2s   &          r   test_1d_range_keyword)TestBinnedStatistic.test_1d_range_keyword   s    ii##J/IIbMzz"~(3c;A$4QWI$N!
&6qg&N#!))**r   c                0   V P                   pV P                  pV P                  p\        WR ^
R7      w  rEp\        WR ^
R7      w  rxp	\        WV.R ^
R7      w  rp\	        V
^ ,          V4       \	        V
^,          V4       \	        W[4       \	        Wl4       R# r[   )r   r   r   r   r   )r&   r   r   r   stat1vedges1vbc1vstat1wedges1wbc1wr;   r+   rx   s   &            r   test_1d_multi_values(TestBinnedStatistic.test_1d_multi_values   s    FFFFFF 0vB G 0vB G-aQbIsa&)a&)("r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        P
                  ! W^R7      w  rp
\        WH4       \        WY4       \        Wj4       R# r   r   r   r   r   r$   histogram2dr   )r&   r   r   r   r'   binx1biny1r)   r*   binx2biny2s   &          r   test_2d_count!TestBinnedStatistic.test_2d_count   sb    FFFFFF#6!W1$& u!~~a;u'%%r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      pRp\	        WE4       R# )r    r!   N)r3   x_edgey_edgerN   )r   r   r   r   r	   )r&   r   r   r   rO   rP   s   &     r   test_2d_result_attributes-TestBinnedStatistic.test_2d_result_attributes   s:    FFFFFF!!7;C
C,r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        P
                  ! W^VR7      w  rp
\        WH4       \        WY4       \        Wj4       R# rT   r   )r&   r   r   r   rV   r   r   r)   rW   r   r   s   &          r   test_2d_sumTestBinnedStatistic.test_2d_sum   sa    FFFFFF!4Q1e!!LU^^Aq!DU#%%r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# r[   r   r   r   r   r$   r/   r   r&   r   r   r   r:   r   r   r)   r;   r   r   s   &          r   test_2d_mean TestBinnedStatistic.test_2d_mean   sc    FFFFFF"5aAvA"Ne"5aArwwQ"Oe%%%r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# r[   r   r   s   &          r   test_2d_mean_unicode(TestBinnedStatistic.test_2d_mean_unicode   sf    FFFFFF"5!V!#%e"5aArwwQ"Oe%%%r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# r7   )r   r   r   r   r$   r8   r   r   s   &          r   test_2d_stdTestBinnedStatistic.test_2d_std   c    FFFFFF"5aAu1"Me"5aArvvA"Ne%%%r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# rd   )r   r   r   r   r$   re   r   r   s   &          r   test_2d_minTestBinnedStatistic.test_2d_min   r   r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# ri   )r   r   r   r   r$   rj   r   r   s   &          r   test_2d_maxTestBinnedStatistic.test_2d_max  r   r   c                    V P                   pV P                  pV P                  p\        WVR ^R7      w  rErg\        WV\        P
                  ^R7      w  rr\        WH4       \        WY4       \        Wj4       R# rn   )r   r   r   r   r$   r0   r   r   s   &          r   test_2d_median"TestBinnedStatistic.test_2d_median  sk    FFFFFF"5!XA#'e"5!RYYQ#(e 	%%%r   c                   V P                   R ,          pV P                  R ,          pV P                  R ,          p\        WVR^R7      w  rErg\        P
                  ! . RO4      p\        P                  ! V4       U	u. uF  qV	8H  P                  4       NK  	  p
p	\        Wx4       WDP                  4       ,          p\        W4       R# u up	i )rr   r    r!   N)            r   r      r   r      r   r   r   r   r   r   r   r   r      )
r   r   r   r   r$   rv   rw   r1   r   nonzero)r&   r   r   r   r'   r   r   r)   rx   ry   rz   	count1adjs   &           r   test_2d_bincode#TestBinnedStatistic.test_2d_bincode%  s    FF3KFF3KFF3K#6!W1$& uhh 0 1 ,.99R=9=a7--/=9 >>+,	*	 :s   <Cc                f   V P                   pV P                  pV P                  pV P                  p\	        WVR ^R7      w  rVrx\	        WVR ^R7      w  rr\	        WW4.R ^R7      w  rpp\        V^ ,          V4       \        V^,          V	4       \        Wn4       \        W4       \        VV4       R# r[   )r   r   r   r   r   r   )r&   r   r   r   r   r   binx1vbiny1vr   r   binx1wbiny1wr   r;   r   r   rx   s   &                r   test_2d_multi_values(TestBinnedStatistic.test_2d_multi_values5  s    FFFFFFFF':!V!(%$':!V!(%$#61&&q$* eS 	a&)a&)&&c"r   c           	     <   V P                   pV P                  pV P                  p\        WR ^R7      w  rEp\        W#R ^
R7      w  rGp\	        WVR RRR7      w  rr\
        P                  ! WQRR7      p\
        P                  ! WrRR7      pWVP                  4       8H  ;;,          ^,          uu&   WVP                  4       8H  ;;,          ^,          uu&   \        Wl^ ,          4       \        W^,          4       \        W^ ,          4       \        W^,          4       R# )r/   r!   Tr"   expand_binnumbersright)sideN)rs   
   )	r   r   r   r   r   r$   searchsortedrj   r   )r&   r   r   r   statedgesxbcxedgesybcyr;   edgesx2edgesy2rx   bcx3bcy3s   &              r   test_2d_binnumbers_unraveled0TestBinnedStatistic.test_2d_binnumbers_unraveledH  s    FFFFFF,Q6Cc,Q6Cc':!V(d(D$ vw7vw7 	!%%'\a!%%'\aV$V$!f%!f%r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        P                  ! V^R7      w  rg\        W64       \        WG4       R# r   )r   r   r   r$   histogramddr   )r&   r   r   r'   r(   r)   r*   r+   s   &       r   test_dd_count!TestBinnedStatistic.test_dd_count_  sI    FFFF0wQG2''r   c                l    V P                   pV P                  p\        WR ^R7      pRp\        W44       R# rL   )r   r   r   r	   )r&   r   r   rO   rP   s   &    r   test_dd_result_attributes-TestBinnedStatistic.test_dd_result_attributesi  s/    FFFF!!a8<
C,r   c                $   V P                   pV P                  p\        WR ^R7      w  r4p\        P                  ! V^VR7      w  rg\        W\        P
                  ^R7      w  rp\        W64       \        WG4       \        W84       \        WI4       R# rT   )r   r   r   r$   r   r1   r   )
r&   r   r   rV   r(   r)   rW   r+   sum3edges3s
   &         r   test_dd_sumTestBinnedStatistic.test_dd_sumq  sr    FFFF.qUCb~~aa;.qRVV!Db#'#'r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        W\        P                  ^R7      w  rgp\        W64       \        WG4       R# r[   )r   r   r   r$   r/   r   r&   r   r   r:   r(   r)   r;   r+   s   &       r   test_dd_mean TestBinnedStatistic.test_dd_mean~  sN    FFFF/f1Er/bggAFr%'r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        W\        P                  ^R7      w  rgp\        W64       \        WG4       R# r7   )r   r   r   r$   r8   r   r   s   &       r   test_dd_stdTestBinnedStatistic.test_dd_std  N    FFFF/e!Dr/bff1Er%'r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        W\        P                  ^R7      w  rgp\        W64       \        WG4       R# rd   )r   r   r   r$   re   r   r   s   &       r   test_dd_minTestBinnedStatistic.test_dd_min  r   r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        W\        P                  ^R7      w  rgp\        W64       \        WG4       R# ri   )r   r   r   r$   rj   r   r   s   &       r   test_dd_maxTestBinnedStatistic.test_dd_max  r   r   c                    V P                   pV P                  p\        WR ^R7      w  r4p\        W\        P                  ^R7      w  rgp\        W64       \        WG4       R# rn   )r   r   r   r$   r0   r   r   s   &       r   test_dd_median"TestBinnedStatistic.test_dd_median  sN    FFFF/hQGr/biiaHr%'r   c                p   V P                   R ,          pV P                  R ,          p\        WR^R7      w  r4p\        P                  ! . RO4      p\        P
                  ! V4       Uu. uF  quV8H  P                  4       NK  	  pp\        WV4       W3P                  4       ,          p	\        W4       R# u upi )rr   r    r!   N)?   !   V   S   X   C   9   r   *   )   R   r  \       $   [   +   W   Q   r  )	r   r   r   r$   rv   rw   r1   r   r   )
r&   r   r   r'   r(   r)   rx   ry   rz   r   s
   &         r   test_dd_bincode#TestBinnedStatistic.test_dd_bincode  s    FF3KFF3K0wQGhh 4 5 ,.99R=9=a7--/=9 >>+,	*	 :s   (B3c                   V P                   pV P                  pV P                  pR RRRRRR\        P                  3 F  p\        WV^R7      w  rVp\        WV^R7      w  rp
\        WV.V^R7      w  rp\        V^ ,          V4       \        V^,          V4       \        Wl4       \        W4       \        W}4       K  	  R# )	r    r1   r/   r8   re   rj   r0   r!   N)r   r   r   r$   r8   r   r   )r&   r   r   r   r   r   r   r   r   r   r   r;   r+   rx   s   &             r   test_dd_multi_values(TestBinnedStatistic.test_dd_multi_values  s    FFFFFFeVUE5(VVD$7d$K!FT$7d$K!FT!4QA1!ME3E!Hf-E!Hf-G,G,D&r   c                \   V P                   pV P                  p\        VR,          VR^R7      w  r4p\        VR,          VR^R7      w  r6p\        VR,          VR^
R7      w  r8p	\        WRR	RR7      w  rp\	        W\^ ,          4       \	        W|^,          4       \	        W^,          4       R# )
NNNr/   r!   Tr   N)r  r   )r  ru   )r  rt   )r~   rs   r   )r   r   r   r   r   )r&   r   r   r   r   r   r   r   edgeszbczr;   r+   rx   s   &            r   test_dd_binnumbers_unraveled0TestBinnedStatistic.test_dd_binnumbers_unraveled  s    FFFF,QtWabIc,QtWabIc,QtWabIc0&|tEs 	V$V$V$r   c                >   \         P                  P                  R 4      pVP                  R4      pVP                  R4      p\         P                  ! ^ ^^
4      pWDV3p\	        W#RVR7      pVP
                  p\	        W#RVR7      pVP
                  p\        Wg4       R# )l   g
F '  r/   r!   )binned_statistic_resultNr  r   )r$   r   r   linspacer   r3   r   )r&   r   r   r   r"   resultr   r;   s   &       r   test_dd_binned_statistic_result3TestBinnedStatistic.test_dd_binned_statistic_result  s    ii##J/JJz"JJu{{1a$D!$Q6=$Q6=CE  $r   c           	     v   \         P                  P                  R 4      pVP                  R4      pVP                  R4      p\         P                  ! ^ ^^
4      p\         P                  ! V^4      pWDV3p\        \        RR7      ;_uu_ 4        \        W#RVR7       RRR4       R#   + '       g   i     R# ; i)iCr  zdifference is numerically 0matchr/   r!   Nr  )r$   r   r   r  appendrE   rF   r   )r&   r   r   r   r"   s   &    r   test_dd_zero_dedges'TestBinnedStatistic.test_dd_zero_dedges  s    ii##J/JJz"JJu{{1a$yyq!D!:-JKKf48 LKKKs   B''B8	c           	     0   \        \        R R7      ;_uu_ 4        \        V P                  .V P                  ^^ ..R7       RRR4       \        \        RR7      ;_uu_ 4        \        V P
                  V P                  .V P                  ^^ .^ ^..R7       RRR4       \        \        RR7      ;_uu_ 4        \        V P
                  V P                  .V P                  ^ ^.^^ ..R7       RRR4       \        \        RR7      ;_uu_ 4        \        V P
                  V P                  .V P                  ^ ^..R7       RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)zIn range, start must be <= stopr$  r   Nz.In dimension 1 of range, start must be <= stopz.In dimension 2 of range, start must be <= stopz(range given for 1 dimensions; 2 required)rE   rF   r   r   r   r   )r&   s   &r   test_dd_range_errors(TestBinnedStatistic.test_dd_range_errors  s`    :!BD D$&&()1vh0D FH H   0$&&()1v1v&68H
 FH H   0$&&()1v1v&68H
 @B B   0$&&()1vh0B BD D DH H
H H
B B Bs/   'E
"5E85E12F
E	E.	1F	F	c                    \         P                  ! ^ R.\         P                  R7      p\        VRR^R7      w  p p\	        V\         P                  ! . RO\         P
                  R7      4       R# )r   ghw?)dtypeNr    r!   )ru   r   r   r   ru   )r$   rv   float32r   r   float64)r&   r   r   r   s   &   r   test_binned_statistic_float321TestBinnedStatistic.test_binned_statistic_float32  sI    HHa_BJJ7%awQ?
abhhbjjIJr   c                `   . p^p\        V4       F  pV^RV,          ,
          .,          pK  	  \        P                  ! ^ ^^4      p\        V\        P                  ! \        V4      4      V.RR7      w  rVp\        P                  ! WR7      w  r\        WX4       \        V^ ,          V	4       R# )rs   g?r1   )r"   r3   r!   N)r   r$   r  r   oneslenr%   r   )
r&   r   r   ry   r"   rV   r(   r)   rW   r+   s
   &         r   test_gh14332 TestBinnedStatistic.test_gh14332  s    tA!CF(OA  {{1Qr".q"''#a&/59FeMb||A1#q	6*r   r-  r3   r    c                0    V ^,          P                  4       # )rt   r1   r   s   &r   <lambda>TestBinnedStatistic.<lambda>&  s    adZZ\r   c                >    V ^,          P                  4       R,          # )rt                 ?r8  r9  s   &r   r:  r;  '  s    adZZ\B5Fr   c                *  a V3R  lp\         P                  P                  R4      p^
pVP                  VR7      pVR8  pVP                  VR7      pV\         P                  J d    WP                  VR7      R,          ,           p\	        WhS^R7      w  p	 p
\         P
                  ! V! W( ,          4      V! W,          4      .4      p\        W4       V	P                  \         P                  ! VP                  \         P                  4      8X  g   Q hR# )c                 8   < SR 8X  d   \        V 4      # S! V 4      # )r    )r4  )r   r3   s   &r   ref_statistic6TestBinnedStatistic.test_dd_all.<locals>.ref_statistic)  s    &'13q6Cy|Cr   l   #t%i r   g      ?r=  r!   N)
r$   r   r   
complex128r   rv   r   r-  result_typer/  )r&   r-  r3   r@  r   nr   ry   r   r   r   refs   &&f         r   test_dd_allTestBinnedStatistic.test_dd_all#  s    	D ii##$45JJAJHJJAJBMM!JJAJ&r))A(yqA
ahhae,mAD.ABC"zzR^^CIIrzzBBBBr    N)@__name__
__module____qualname____firstlineno__classmethodr   r,   r4   r<   r@   rI   rQ   rX   r]   r`   rf   rk   ro   r{   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r!  r'  r*  r0  r5  pytestmarkparametrizer$   r/  rB  r/   r0   r1   r8   re   rj   rF  __static_attributes____classdictcell__)__classdict__s   @r   r   r      ss    , ,(7&&L-(((((((+#&-
&
&	&
&
&
&&+ #&&.(-((((((+' %%"90.K
+ [[Wrzz2==&AB[[[277BIIrvvrvv+-662667+A+F+H IC	I C
Cr   r   )numpyr$   numpy.testingr   rN  r   rE   scipy.statsr   r   r   scipy._lib._utilr   common_testsr	   r   rH  r   r   <module>rY     s/     )  *. . / -kC kCr   