
&]\c        G   @` s	  d  Z  d d l m Z m Z m Z d d l Z d d l Z d d l Z d d l Z d d l	 Z	 d d l
 m Z m Z m Z m Z m Z m Z m Z d d l Z d d l m Z d d l m Z d d l Z d d l Z d d l m Z m Z d d l m Z d d	 l m Z d d
 l m  Z  d d l! j" Z" d d l# m$ Z$ d d l% Z d d l& m' Z' d d l( m) Z) e j* j+ d k Z, d d d d d d d d d d d d d d d d d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. d/ d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d: d; d< d= d> d? d@ dA dB dC dD dE dF dG dH dI dJ dK dL dM dN dO dP dQ dR dS dT dU gG Z- e. dV  Z/ dW   Z0 dX   Z1 dY   Z2 e j3 j4 dZ e2    d[    Z5 d\   Z6 d]   Z7 d^   Z8 d_   Z9 d`   Z: e j3 j4 da d d! d db d6 dc dd de df dg dh d d) di d? dj g  dk    Z; dl e< f dm     YZ= dn e< f do     YZ> dp e< f dq     YZ? dr e< f ds     YZ@ dt e< f du     YZA dv e< f dw     YZB dx e< f dy     YZC dz e< f d{     YZD d| e< f d}     YZE d~ e< f d     YZF d e< f d     YZG d e< f d     YZH d e< f d     YZI d e< f d     YZJ d e< f d     YZK d e< f d     YZL d e< f d     YZM d e< f d     YZN d e< f d     YZO d e< f d     YZP d e< f d     YZQ d e< f d     YZR d e< f d     YZS d e< f d     YZT d   ZU d   ZV d e< f d     YZW d e< f d     YZX d e< f d     YZY d e< f d     YZZ d e< f d     YZ[ d e< f d     YZ\ d e< f d     YZ] d e< f d     YZ^ d e< f d     YZ_ d e< f d     YZ` d e< f d     YZa d e< f d     YZb d e< f d     YZc d e< f d     YZd d e< f d     YZe d e< f d     YZf d e< f d     YZg d   Zh d e< f d     YZi d e< f d     YZj d e< f d     YZk d e< f d     YZl d e< f d     YZm d e< f d     YZn d e< f d     YZo d e< f d     YZp d e< f d     YZq d e< f d     YZr d e< f d     YZs d e< f d     YZt d   Zu d   Zv d   Zw d   Zx e j3 jy e, d d d    Zz d   Z{ d   Z| d   Z} d   Z~ d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d e" j f d     YZ d e" j f d     YZ d e" j f d     YZ d e" j f d     YZ d e< f d     YZ d e< f d     YZ e j3 jy e, d d d    Z d  Z d  Z d  Z d  Z d  Z d  Z d  Z d  Z d	  Z d
  Z d  Z d  Z de< f d    YZ d S(  s"    Test functions for stats module

i    (   t   divisiont   print_functiont   absolute_importN(   t   assert_equalt   assert_array_equalt   assert_almost_equalt   assert_array_almost_equalt   assert_allcloset   assert_t   assert_warns(   t   raises(   t   suppress_warnings(   t	   typecodest   array(   t   rec_append_fields(   t   special(   t   IntegrationWarning(   t
   argsreduce(   t   xlogyi   (   t   distcontt   uniformt   normt   lognormt   expont   betat   powerlawt   bradfordt   burrt   fiskt   cauchyt
   halfcauchyt
   foldcauchyt   gammat   gengammat   loggammat   alphat   anglitt   arcsinet	   betaprimet   dgammat   moyalt	   exponnormt	   exponweibt   exponpowt	   frechet_lt	   frechet_rt   gilbratt   ft   ncft   chi2t   chit   nakagamit	   genparetot
   genextremet   genhalflogistict   paretot   lomaxt   halfnormt   halflogistict   fatiguelifet   foldnormt   ncx2t   tt   nctt   weibull_mint   weibull_maxt   dweibullt   maxwellt   rayleight   genlogistict   logistict   gumbel_lt   gumbel_rt   gompertzt	   hypsecantt   laplacet
   reciprocalt   trapzt   triangt   tukeylambdat   vonmisest   vonmises_linet   pearson3t   gennormt   halfgennormt   ricet   kappa4t   kappa3t	   truncnormt   argust   crystalballc         C` s<   | d  k r d |  | f } n  t t |  |  d | d  S(   Ns   %s does not have attribute %st   msg(   t   NoneR   t   hasattr(   t   at   bR[   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   _assert_hasattr6   s    c           C` s   t  t j j d  d  S(   Nt   f_gen(   R`   t   scipyt   statst   distributions(    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_api_regression<   s    c         C` s   t     } | j d t d d  t j |  d d | d d \ } } | | k  r t j |  d d | d d \ } } t | | k d d	 j | | | |  n  Wd  QXd  S(
   Nt   categoryt   messages
   .*frechet_t    t   argst   Ni  R[   s(   D = {}; pval = {}; alpha = {}; args = {}(   R   t   filtert   DeprecationWarningRc   t   kstestR   t   format(   t   distRi   R#   t   supt   Dt   pval(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   check_distributionB   s    $$c          c` sk  t  j j d  xTt D]L}  t t |   } | j } d } |  d k rP d } n  |  d k r t t  j t  j j |    } n |  d k r t t  j j |   } n |  d k s |  d k r t  j j |  } | d	 d
 | d <t |  } nc |  d k r9|  d | f V|  d | f Vt d
 t  j j |   } n t d
 t  j j |   } |  | | f Vq Wd  S(   Ni  g{Gz?R;   gMbP?RM   RN   RL   RX   i    g      ?i   RP   i
   ie   (   i
   (   ie   (	   t   npt   randomt   seedt   distst   getattrRc   t   numargst   tuplet   sort(   Ro   t   distfunct   nargsR#   Ri   t   vals(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   cases_test_all_distributionsO   s*    		$s   dist,args,alphac         C` s   t  |  | |  d  S(   N(   Rs   (   Ro   Ri   R#   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_all_distributionsk   s    c         C` sM   t  j |  d | d | } t | j |  | j | d t j |   d  S(   Nt   loct   scalei   (   Rc   RP   R   t   pdft   numpyt   pi(   t   kt   lt   st   xt   vm(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   check_vonmises_pdf_periodicp   s    c         C` sU   t  j |  d | d | } t | j |  d | j | d t j |  d  d  S(   NR   R   i   i   (   Rc   RP   R   t   cdfR   R   (   R   R   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   check_vonmises_cdf_periodicu   s    c          C` s   x d d d g D] }  x d d t  j d d g D]x } t |  d d |  t |  d d |  t |  d d |  t |  d d |  t |  d d |  t |  d d |  q/ Wq Wd  S(   Ng?i   ie   i    i
   id   (   R   R   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_vonmises_pdf_periodicz   s    c           C` s1   t  t j j t j  t  t j j t j  d  S(   N(   R   Rc   RQ   R^   Rt   R   R_   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_vonmises_line_support   s    c          C` s)   t  j d  }  t |  j d  d  d  S(   Ni   i    g      ?(   Rc   RP   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_vonmises_numerical   s    Ro   t   burr12t   invgammat   invgausst
   invweibullt	   johnsonsbt   levyt   levy_lt   powerlognormt   waldc         C` s   t  t  } | |  } t t |   }  t |  j |  j |  d  t |  j |  j |  t	 j
  t |  j |  j |  d  t |  j |  j |  t	 j
  d S(   s   gh-6235i    N(   t   dictR   Rx   Rc   R   R   R^   R   t   logpdfRt   t   infR_   (   Ro   t   dctRi   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_support   s    
 t   TestRandIntc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   t   self(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   setup_method   s    c         C` s;  t  j j d d d d } t t j | d k   t j | d k  @ t t |  d k  t  j j d d d d } t t j |  d k  t | j j	 t
 d k  t  j j d d	  } t | d k | d	 k  @ t t | t j  d
 t t |   t  j d d	  j d  } t | j j	 t
 d k  d  S(   Ni   i   t   sizeid   i   i2   t
   AllIntegeri   i.   R[   i   (   i   i2   (   i   i2   (   Rc   t   randintt   rvsR   R   t   allt   lent   shapet   dtypet   charR   t
   isinstancet
   ScalarTypet   reprt   type(   R   R~   t   val(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rvs   s    ,(c         C` sb   t  j d d !} t  j | d k | d k  @d d d  } t j j | d d  } t | |  d  S(   Ni    i$   i   i   g      ?i   (   R   t   r_t   whereRc   R   t   pmfR   (   R   R   t   outR~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pdf   s    )c         C` s   t  j d d d  } t j |  } t j | d k | d k g d | d d d g d  } t j j | d d  } t | | d	 d
 d  S(   Ni    i$   id   i   i   g      ?g      @i   t   decimali   g      9@(	   Rt   t   linspaceR   t   floort   selectRc   R   R   R   (   R   R   R   R   R~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf   s
    9(   t   __name__t
   __module__R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s   			t	   TestBinomc           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s    c         C` s   t  j j d d d d	 } t t j | d k  t j | d k  @ t t j |  d
 k  t | j j t	 d k  t  j j d d  } t t
 | t   t  j d d  j d  } t t
 | t j   t | j j t	 d k  d  S(   Ni
   g      ?R   i   i2   i    R   i   (   i   i2   (   i   i2   (   Rc   t   binomR   R   R   R   R   R   R   R   R   t   intt   ndarray(   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s    ,c         C` sf   t  j j d d d  } t  j j d d d  } t | d d d d d t | d d d d d d  S(   Nid   i   i    g      ?t   rtolgV瞯<t   atol(   Rc   R   R   R   (   R   t   vals1t   vals2(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pmf   s    c         C` s   t  j d d  } t j d d d g  } t t | |   } | j   } t | |  t  j d d  } | j   } t | d  t  j d d  } | j   } t | d  d  S(   Ni   g      ?g      ?g        g      ?(	   Rc   R   Rt   R   t   sumR   t   entropyR   R   (   R   R_   t
   expected_pt
   expected_ht   h(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy   s    c      
   C` sq   t  j   _ t  j d t  t t j d d d d  j   d  t t j d d d d  j   d  Wd  QXd  S(   Nt   errort   ni   t   pi    (	   t   warningst   catch_warningst   simplefiltert   RuntimeWarningR   Rc   R   t   meant   std(   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_warns_p0   s    %(   R   R   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s
   				t   TestBernoullic           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s    c         C` s   t  j j d d d	 } t t j | d k  t j | d k  @ t t j |  d
 k  t | j j t	 d k  t  j j d  } t t
 | t   t  j d  j d  } t t
 | t j   t | j j t	 d k  d  S(   Ng      ?R   i   i2   i    i   R   i   (   i   i2   (   i   i2   (   Rc   t	   bernoulliR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s    ,c         C` s   t  j d  } d t j d  d t j d  } | j   } t | |  t  j d  } | j   } t | d  t  j d  } | j   } t | d  d  S(   Ng      ?g      пg      ?g        g      ?(   Rc   R   Rt   t   logR   R   R   (   R   R_   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s    $(   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR      s   		t   TestBradfordc           B` s   e  Z d    Z RS(   c         C` sS   d } t  j d d  } t j j | |  } t j j | |  } t | |  d  S(   Ng?ii(   Rt   t   logspaceRc   R   R   t   ppfR   (   R   t   cR   t   qt   xx(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_ppf  s
    (   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s   t
   TestNBinomc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   t  j j d d d d	 } t t j | d k   t t j |  d
 k  t | j j t	 d k  t  j j d d  } t t
 | t   t  j d d  j d  } t t
 | t j   t | j j t	 d k  d  S(   Ni
   g      ?R   i   i2   i    R   i   (   i   i2   (   i   i2   (   Rc   t   nbinomR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sf   t  t j t j j d d d   t j j d d d   t j j j d d d  } t | d  d  S(   Ni  i  gp=
ף?i    i   (	   R   Rt   t   expRc   R   t   logpmfR   Rb   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   '  s    !(   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s   		t   TestNormInvGaussc           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   1  s    c         C` sq   t  j d d d d d g  } t  j d d d d	 d
 g  } t j j | d d d d } t | | d d d  S(   Ngp~٧>g @X>g}e?g{)߳?gwH?iii    i   i   R^   i   R_   g      ?R   g&.>(   Rt   R   Rc   t   norminvgaussR   R   (   R   t   r_cdft   x_testt   vals_cdf(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_cdf_R4  s
    c         C` sq   t  j d d d d d g  } t  j d d d d	 d
 g  } t j j | d d d d } t | | d d d  S(   Ngp϶>g\H55$?geСt&?go NiH?g]u>iii    i   i   R^   i   R_   g      ?R   g&.>(   Rt   R   Rc   R   R   R   (   R   t   r_pdfR   t   vals_pdf(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_pdf_R@  s
    c         C` s   d	 \ } } t  j | d | d  } | | | d | d d | | t  j |  d d d | d | d | f } t | t j j | | d d  d  S(
   Ni   g      ?i   i   g      @i   t   momentst   mvsk(   i   g      ?(   Rt   t   sqrtR   Rc   R   (   R   R^   R_   R    t   v_stats(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_statsH  s
    .%c         C` s_   d \ } } t  j d d d g  } t j j | | |  } t | t j j | | |   d  S(   Ni   g      ?gMbP?g+?(   i   g      ?(   Rt   R   Rc   R   R   R   R   (   R   R^   R_   R   R~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ppfO  s    (   R   R   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   0  s
   				t   TestGeomc           B` sP   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   W  s    c         C` s   t  j j d d d } t t j | d k   t t j |  d	 k  t | j j t	 d k  t  j j d  } t t
 | t   t  j d  j d  } t t
 | t j   t | j j t	 d k  d  S(
   Ng      ?R   i   i2   i    R   i   (   i   i2   (   i   i2   (   Rc   t   geomR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   Z  s    c         C` s8   t  j j d d d g d  } t | d d d g  d  S(   Ni   i   i   g      ?g      ?g      ?(   Rc   R   R   R   (   R   R~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   e  s    c         C` s   t  j t j j d d d g d   } t j j d d d g d  } t | | d d d d t j j d d  } t | d	  d  S(
   Ni   i   i   g      ?R   gV瞯<R   i    g        (   Rt   R   Rc   R   R   R   R   R   (   R   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logpmfi  s
    'c         C` ss   t  j j d d d g d  } t  j j d d d g d  } t d d d g  } t | |  t | d |  d  S(   Ni   i   i   g      ?g      ?g      ?(   Rc   R   R   t   sfR   R   (   R   R~   t   vals_sft   expected(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_sfs  s
    c         C` s   t  j j d d d g d  } t  j j d d d g d  } t d d d g  } t | t j |   t | t j |   d  S(   Ni   i   i   g      ?g      ?g      ?(	   Rc   R   t   logcdft   logsfR   R   Rt   R   t   log1p(   R   R~   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logcdf_logsfz  s
    c         C` sD   t  j j d d d g d  } t d d d g  } t | |  d  S(   Ng      ?g      ?g      ?g      ?g       @g      @(   Rc   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s&   t  t j j d d  d d d d  S(   Ng#B;g      ?R   g+=(   R   Rc   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ppf_underflow  s    (
   R   R   R   R   R   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   V  s   				
			t
   TestPlanckc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sD   t  j j d d d g d  } t d d d g  } t | |  d  S(   Ni   i   i   g      @g|dy?g8'\>ggrU!>(   Rc   t   planckR   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_sf  s
    c         C` sD   t  j j d d d g d  } t d d d g  } t | |  d  S(   Ng     @@g     @@g     p@g    P.g    h>g    TF(   Rc   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_logsf  s    (   R   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s   		t   TestGennormc           B` s   e  Z d    Z d   Z RS(   c         C` sG   d d d g } t  j j | d  } t  j j |  } t | |  d  S(   Ni   i   i   (   Rc   RS   R   RK   R   (   R   t   pointst   pdf1t   pdf2(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_laplace  s    c         C` sM   d d d g } t  j j | d  } t  j j | d d } t | |  d  S(   Ni   i   i   R   g      g;f?(   Rc   RS   R   R   R   (   R   R  R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_norm  s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestHalfgennormc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` sG   d d d g } t  j j | d  } t  j j |  } t | |  d  S(   Ni   i   i   (   Rc   RT   R   R   R   (   R   R  R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_expon  s    c         C` sM   d d d g } t  j j | d  } t  j j | d d } t | |  d  S(   Ni   i   i   R   g      g;f?(   Rc   RT   R   R9   R   (   R   R  R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_halfnorm  s    c         C` sN   d d d g } t  j j | d  } t  j j | d  } t | d |  d  S(   Ni   i   i   g
(?(   Rc   RT   R   RS   R   (   R   R  R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gennorm  s    (   R   R   R
  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR	    s   		t   TestTruncnormc           B` sS   e  Z d    Z d   Z d   Z d   Z e j j d d  d    Z	 d   Z
 RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s{   t  j j d d d d d d d g d d d	 d
 g d d d } t j t j d d d
 d d t j g  } t | |  d  S(   Ng      i    g-C6?g      ?i   i   g      g      ?R   i   i   R   gfO?gl@i   gH.?(   Rc   RX   R   Rt   R   t   nanR   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ppf_ticket1131  s    **c         C` s{   t  j j d d d d d d d g d d d	 d
 g d d d } t j t j d d d
 d d t j g  } t | |  d  S(   Ng      i    g-C6?g      ?i   i   g      g      ?R   i   i   R   i   gl@gfO?gH.?(   Rc   RX   t   isfRt   R   R  R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_isf_ticket1131  s    **c         C` s   d \ } } t  j j | | d d d d } t | | j   k  o^ | j   k  o^ | k  n  d	 \ } } t  j j | | d d d d } t | | j   k  o | j   k  o | k  n  d  S(
   Niii    i   R   i
   i   (   ii(   i
   i   (   Rc   RX   R   R   t   mint   max(   R   t   lowt   highR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gh_2477_small_values  s    !7!t   reasons.   truncnorm rvs is know to fail at extreme tailsc         C` s   d	 \ } } t  j d d  & t j j | | d d d d } Wd  QXt | | j   k  ow | j   k  ow | k  n  d  S(
   Nid   ie   t   dividet   ignorei    i   R   i
   (   id   ie   (   Rt   t   errstateRc   RX   R   R   R  R  (   R   R  R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gh_2477_large_values  s    'c         C` sh   d \ } } t  j j | | d d d d } t | | j   k  o^ | j   k  o^ | k  n  d  S(   Ni
   i   i    i   R   (   i
   i   (   Rc   RX   R   R   R  R  (   R   R  R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gh_1489_trac_962_rvs  s    !(   R   R   R   R  R  R  t   pytestt   markt   xfailR  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   				
t   TestHypergeomc           B` sP   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   t  j j d d d d d	 } t t j | d k  t j | d k  @ t t j |  d
 k  t | j j t	 d k  t  j j d d d  } t t
 | t   t  j d d d  j d  } t t
 | t j   t | j j t	 d k  d  S(   Ni   i
   i   R   i   i2   i    R   (   i   i2   (   i   i2   (   Rc   t	   hypergeomR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sM   d } d } d } | } | } t  j j d | | |  } t | d d  d  S(   Ni	  i2   i  i   gkㅒP?i   (   Rc   R!  R   R   (   R   t   MR   Rj   t   tott   goodt   hgpmf(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_precision  s    c         C` s   t  t j j d d d d  d d  t  t j j d d d d  d d  t  t j j d d d d  d d  t  t j j d d d d  d d  d  S(   Ni    i   i   g      ?i   g        (   R   Rc   R!  R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_args  s    %%%c         C` s9   t  d t j j d d d d  k o/ d k n  d  S(   Ni    i   io i  if0  g      ?(   R   Rc   R!  R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_above_one  s    c         C` s  d } d } t  j d d d d d d d	 g  d
 } d } g  } x4 | D], } | j t j j | | | | |   qG Wt  j d d d d d d d g  } t | | d d d d d d d d g } t j j | | | | d  }	 d d d d g }
 t |	 |
 d d d d d  S(   Ng    +@g     @i   gffffff@g333333@i   gffffff@g@i   g     @g     @i    gpR(g㘍R2gJޱ p9g?Mf=g
G?i   R   R   gƠ>g     @g     @g     @g     @g)9g"1(   Rt   R   t   appendRc   R!  R   R   (   R   t   orangest   pearst   fruits_eatent   quantilet   rest   eatenR   t	   quantilest   res2t	   expected2(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_precision2  s    (c         C` s   t  j d d d  } | j   } t j d d g  } t j t | |   } t | |  t  j d d d  } | j   } t | d  d  S(   Ni   i   g      ?g      ?g        (	   Rc   R!  R   Rt   R   R   R   R   R   (   R   t   hgR   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   (  s    c         C` sP   d } d } d } d } t  j j | | | |  } d } t | | d d d  S(   Ng     @g    cAg    .Ag     j@goR   i   (   Rc   R!  R   R   (   R   R   R"  R   Rj   t   resultt	   exspected(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  4  s    (
   R   R   R   R   R&  R'  R(  R3  R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s   			
					t   TestLoggammac           B` s   e  Z d    Z RS(   c         C` s   t  j d d d d d d d d d	 d
 d d d d d g  j d d  } xT | D]L \ } } } } } t j j | d d } t | | | | | g d d qO Wd  S(   Ng      ?g"~jg46<@g oŏg      @g      ?g	h"lxgQ?gZd;g333333@g      (@g{/L@g??gгYҿgh|?5?ii   R   t   msvkR   i   (   Rt   R   t   reshapeRc   R"   R   (   R   t   tableR   R   t   vart   skewt   kurtt   computed(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   F  s    (   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR7  D  s   t   TestLogisticc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` sG   t  j d d  } t j j |  } t j j |  } t | |  d  S(   Nii   (   Rt   R   Rc   RF   R   R   R   (   R   R   t   yR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   X  s    c         C` sG   t  j d d  } t j j |  } t j j |  } t | |  d  S(   Nii   (   Rt   R   Rc   RF   R   R  R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_sf_isf^  s    c         C` sF   d } d } t  t j j d |  |  t  t j j |  |  d  S(   Ng      <gg|EA@i   (   R   Rc   RF   R   R  (   R   R   t   desired(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_extreme_valuesd  s    (   R   R   R   RA  RC  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR?  V  s   		t
   TestLogserc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   m  s    c         C` s   t  j j d d d } t t j | d k   t t j |  d	 k  t | j j t	 d k  t  j j d  } t t
 | t   t  j d  j d  } t t
 | t j   t | j j t	 d k  d  S(
   Ng      ?R   i   i2   i   R   i   (   i   i2   (   i   i2   (   Rc   t   logserR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   p  s    c         C` s&   t  j j d d  } t | d  d  S(   Ni   g#B;g&Y3(   Rc   RE  R   R   (   R   t   m(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pmf_small_p{  s    c         C` s#   t  j j d  } t | d  d  S(   Ng:0yE>gW  ?(   Rc   RE  R   R   (   R   RF  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_mean_small_p  s    (   R   R   R   R   RG  RH  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRD  l  s   			t
   TestParetoc           B` s   e  Z d    Z d   Z RS(   c      
   C` s  t  j   t  j d t  t j j d d d \ } } } } t | t j  t | t j  t | t j	  t | t j	  t j j d d d \ } } } } t | t j  t | t j  t | t j	  t | t j	  t j j d d d \ } } } } t | d  t | t j  t | t j	  t | t j	  t j j d d d \ } } } } t | d  t | t j  t | t j	  t | t j	  t j j d	 d d \ } } } } t
 | d  t
 | d	 d  t | t j	  t | t j	  t j j d d d \ } } } } t
 | d  t
 | d
  t | t j	  t | t j	  t j j d d d \ } } } } t
 | d  t
 | d d  t
 | d t j d   t | t j	  t j j d d d \ } } } } t
 | d  t
 | d  t
 | d d d  t j d"   t | t j	  t j j d d d \ } } } } t
 | d#  t
 | d d%  t
 | d' t j d(   t
 | d d) d* d+ d d-  Wd  QXd  S(.   NR   g      ?R   R   g      ?g      ?g      @g       @g      @g      ?g      @i   g      @g      @g      2@i   i   g      @i   g?g      @g      ?gffffff?g      @g     "@g      "@g      2@g۶m۶m?gUUUUUU?gqq?g      @g      ?g       @g      ?g%I$I?g     (@g     >@g      &@gUUUUUU@grq?g     V@g     @4@g      ;@g      @g      @(   R   R   R   R   Rc   R7   R   Rt   R   R  R   R   (   R   RF  t   vR   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s^    $$$$$$$$"$c         C` sR   d } d } d } t  j j | | d d d | } | | | } t | |  d  S(   Ng    eAi   g      ?R   i    R   (   Rc   R7   R   R   (   R   R   R_   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    !(   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRI    s   	<t   TestGenparetoc           B` sY   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   c         C` s   x_ d d g D]Q } t  j |  } t j j |  t t j j d  t t  j t j j	   q Wt  j d  } t j j |  t
 t j j t j j	 g d d g  d  S(   Ng      ?g        g       g      ?(   Rt   t   asarrayRc   R4   t	   _argcheckR   R^   R   t   isposinfR_   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ab  s    c         C` s   t  j d d  } t j d d d  } t | j |  t  j j |   t | j |  t  j j |   t | j |  t  j j |   t j d d d  } t | j	 |  t  j j	 |   d  S(   NR   g        i    g      $@i   g      ?i
   (
   Rc   R4   Rt   R   R   R   R   R   R   R   (   R   t   rvR   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_c0  s    """c         C` s   t  j d d  } t j d d d  } t | j |  t  j j |   t | j |  t  j j |   t | j |  t  j j |   t j d d d  } t | j	 |  t  j j	 |   t | j
 d	  d  d  S(
   NR   g      i    g      $@i   g        g      ?i
   i   (   Rc   R4   Rt   R   R   R   R   R   R   R   R   (   R   RP  R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cm1  s    """"c         C` s*  t  j d d  } t | j t j  | j t j  g d d g  t t j | j	 t j    t  j d d  } t | j t j  | j t j  g d d g  t t j | j	 t j    t  j d d  } t | j t j  | j t j  g d d g  t t j | j	 t j    d  S(   NR   g?g        g      ?g      (
   Rc   R4   R   R   Rt   R   R   R   t   isneginfR   (   R   RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_x_inf  s    111c         C` s   t  j d d d  } x d d g D] } t j j | |  } x@ d d g D]2 } t j j | | |  } t | | d d qJ Wt j j | |  } x@ d d g D]2 } t j j | | |  } t | | d d q Wq" Wd  S(	   Ni    i
   i   ig+=g+R   g-q=(   Rt   R   Rc   R4   R   R   R   (   R   R   R   t   pdf0t   dct   pdfct   cdf0t   cdfc(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_c_continuity  s    c      	   C` s   t  j t  j d d d d t  j d d d d t d t  j d d d d f } xl d	 d
 g D]^ } t j j | |  } x@ d d g D]2 } t j j | | |  } t | | d d q Wq` Wd  S(   Ng-q=g{Gz?t   baseg?i   i   t   endpointg      ?g        g      g+=g+R   (	   Rt   R   R   R   t   FalseRc   R4   R   R   (   R   R   R   t   ppf0RV  t   ppfc(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_c_continuity_ppf  s     c      	   C` s   t  j t  j d d d d t  j d d d d t d t  j d d d d f } xl d	 d
 g D]^ } t j j | |  } x@ d d g D]2 } t j j | | |  } t | | d d q Wq` Wd  S(   Ng-q=g{Gz?R[  g?i   i   R\  g      ?g        g      g+=g+R   (	   Rt   R   R   R   R]  Rc   R4   R  R   (   R   R   R   t   isf0RV  t   isfc(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_c_continuity_isf'  s     c      	   C` s   t  j t  j d d d d t  j d d d d t d t  j d d d d f } xK d	 d
 d d g D]7 } t t j j t j j	 | |  |  | d d qf Wd  S(   Ng-q=g{Gz?R[  g?i   i   R\  g      ?g:0yE>gC]r2gV瞯<gV瞯ҼR   (
   Rt   R   R   R   R]  R   Rc   R4   R   R   (   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_ppf_roundtrip1  s     $c         C` s,   t  j j d d d d  } t | d  d  S(   Ng    _Bg{Gz?i    i   gpEȜ(   Rc   R4   R   R   (   R   t   logp(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  :  s    (   R   R   RO  RQ  RR  RT  RZ  R`  Rc  Rd  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRK    s   						
	
		t   TestPearson3c           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   @  s    c         C` s   t  j j d d d } t t j |  d	 k  t | j j t d k  t  j j d  } t t	 | t
   t  j d  j d  } t t	 | t j   t | j j t d k  t t |  d k  d  S(
   Ng?R   i   i2   t   AllFloatg      ?i   (   i   i2   (   i   i2   (   Rc   RR   R   R   R   R   R   R   R   R   t   floatR   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   C  s    c         C` s   t  j j d d d d g  } t | t j d d d g  d d	 t  j j d
 d  } t | t j d g  d d	 t  j j d
 d d d d g d  } t | t j d d d d d g  d d	 d  S(   Ni   g        g?g?gtT?g+q?g?R   gư>igND}i?iii    i   gj?gdC?gs?g'M?(   Rc   RR   R   R   Rt   R   (   R   R~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   N  s    $c         C` s   t  j j d d d d g  } t | t j d d d g  d d	 t  j j d
 d  } t | d g d d	 t  j j d
 d d d d g d  } t | d d d d d g d d	 d  S(   Ni   g        g?g?grE?gTp]0?g~?R   gư>ig E&"J?iii    i   giZ*J?gh+8w?gcK?g|<x6?gG?(   Rc   RR   R   R   Rt   R   (   R   R~   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   X  s    $(   R   R   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRf  ?  s   			
t
   TestKappa4c           B` sG   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c      
   C` s   d d d d g } d } xg d d d d	 d
 d d d d d g
 D]A } t  j j | | |  } t  j j | |  } t | |  q= Wd  S(   Ng        g?g?g      ?g      ?gffffffg      g      gɿggffffff?(   Rc   RV   R   R4   R   (   R   R   R   R   R~   t	   vals_comp(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_genparetod  s    c         C` sn   t  j d d d  } d } t  j d d d  } t j j | | |  } t j j | |  } t | |  d  S(   Nii   i
   g        ii   (   Rt   R   Rc   RV   R   R5   R   (   R   R   R   R   R~   Rj  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_genextremeo  s    c         C` s\   t  j d d d  } d } d } t j j | | |  } t j j |  } t | |  d  S(   Ni    i
   g      ?g        (   Rt   R   Rc   RV   R   R   R   (   R   R   R   R   R~   Rj  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_exponx  s    c         C` s\   t  j d d d  } d } d } t j j | | |  } t j j |  } t | |  d  S(   Nii   i
   g        (   Rt   R   Rc   RV   R   RH   R   (   R   R   R   R   R~   Rj  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_gumbel_r  s    c         C` s\   t  j d d d  } d } d } t j j | | |  } t j j |  } t | |  d  S(   Nii   i
   g      g        (   Rt   R   Rc   RV   R   RF   R   (   R   R   R   R   R~   Rj  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_logistic  s    c         C` s\   t  j d d d  } d } d } t j j | | |  } t j j |  } t | |  d  S(   Nii   i
   g      ?(   Rt   R   Rc   RV   R   R   R   (   R   R   R   R   R~   Rj  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_uniform  s    c         C` s   t  j d d  d  S(   Ni   i   (   Rc   RV   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_integers_ctor  s    (	   R   R   Rk  Rl  Rm  Rn  Ro  Rp  Rq  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRi  c  s   											t   TestPoissonc           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sY   t  j d  } t j j d d d g |  } d | d | d d g } t | |  d  S(   Ni   i    i   g      ?i   (   Rt   R   Rc   t   poissonR   R   (   R   t   ln2R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pmf_basic  s    c         C` s`   t  j j d d d g d  } d d d g } t | |  t  j j d d  } t | d  d  S(   Ni    i   i   gffffff?(   i    i    (   Rc   Rs  R   R   t   intervalR   (   R   R~   R   Rv  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_mu0  s
    c         C` s   t  j j d d d } t t j | d k   t t j |  d	 k  t | j j t	 d k  t  j j d  } t t
 | t   t  j d  j d  } t t
 | t j   t | j j t	 d k  d  S(
   Ng      ?R   i   i2   i    R   i   (   i   i2   (   i   i2   (   Rc   Rs  R   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   d } t  j j  | d d } t | | | t j d |  d | g  t j d d d g  } t  j j  | d d } | | t j d d t j d  g t j d d	 g f } t | |  d  S(
   Ng      0@R   R   g      ?g        g       @i   i   g      ?(   Rc   Rs  R   Rt   R   R   R   (   R   t   muR5  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    *7(   R   R   R   Ru  Rw  R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRr    s
   					t   TestZipfc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   t  j j d d d } t t j | d k   t t j |  d	 k  t | j j t	 d k  t  j j d  } t t
 | t   t  j d  j d  } t t
 | t j   t | j j t	 d k  d  S(
   Ng      ?R   i   i2   i   R   i   (   i   i2   (   i   i2   (   Rc   t   zipfR   R   R   R   R   R   R   R   R   R   R   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   t  j j  d d  \ } } t t j |   t | t j  t  j j  d d d d  \ } } t t j | | g  j    d  S(   NR^   gffffff@g333333@R   t   sk(   Rc   Rz  R   Rt   t   isfiniteR   R   R   (   R   RF  RJ  R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_moments  s
    !(   R   R   R   R   R}  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRy    s   		t   TestDLaplacec           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   t  j j d d d } t t j |  d	 k  t | j j t d k  t  j j d  } t t	 | t
   t  j d  j d  } t t	 | t j   t | j j t d k  t t  j j d  d  k	  d  S(
   Ng      ?R   i   i2   R   i   g?(   i   i2   (   i   i2   (   Rc   t   dlaplaceR   R   R   R   R   R   R   R   R   R   R\   (   R   R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s   d } t  j |  } | j  d  \ } } } } d } t j | | d  } | j |  }	 t j |	 | d  t j |	 | d  }
 } t | | f d  t | | f |
 | |
 d d f d	 d
 d d d  S(   Ng      ?R   i%   i   i   i   i    g      @R   g+=R   g:0yE>(   i    i    (   Rc   R  Rt   t   arangeR   R   R   R   (   R   R^   t   dlRF  RJ  R   R   Rj   R   t   ppt   m2t   m4(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    /c         C` sc   t  j d  } t j |  } | j d  \ } } } } t | | f d  t | | f d  d  S(   Ng       @R   g        g      @g      
@(   g        g        (   g      @g      
@(   Rt   R   Rc   R  R   R   (   R   R^   R  RF  RJ  R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_stats2  s
    (   R   R   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR~    s   			t   TestInvGammac           B` s#   e  Z d    Z d   Z d   Z RS(   c      
   C` s   t  j    t  j d t  t j j d d d d  } d d d d	 g } t | |  d
 d d g } t j j d | d d  } d d d g t j d d g t j	 d d g t j	 t j	 d g f } x* t
 | |  D] \ } } t | |  q WWd  QXd  S(   NR   R^   g(\O3@R   R   g~?gCX&?g*7gS?gBqFq @g?g@gffffff@g      $@gEy?gў3oz?g^Yb?g,r?gOD@g2*Z@gFN8@(   R   R   R   R   Rc   R   R   Rt   R   R  t   zipR   (   R   R   R   R^   R   R@  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_invgamma_inf_gh_1866
  s    		c         C` sM   t  j d d  } t j j | d  } t j j | d  } t | |  d  S(   Ngi    i   (   Rt   R   Rc   R   R   R   R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sw   t  j d k r$ t j d d  } n t j d d  } t j j | d  } t j j | d  } t | | d d d  S(	   Ni   i    id   i   i   R   g      ?I       (	   t   syst   maxsizeRt   R   Rc   R   R   R  R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRA  $  s    (   R   R   R  R   RA  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s   		t   TestFc           B` s8   e  Z d    Z d   Z e j j d d  d    Z RS(   c         C` sx   t  j j  d d d d \ } } } } t t j |   t t j |   t t j |   t t j |   d  S(   Ni   g      @R   R   (   Rc   R/   R   Rt   R|  (   R   RF  RJ  R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_f_moments3  s
    'c         C` sY   t  j   G t  j d t  t j j d d g d d d d d d g d	 d
  Wd  QXd  S(   NR   t   dfni   i   t   dfdi   i   i   R   R   (   R   R   R   R   Rc   R/   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_moments_warnings;  s    R  s#   f stats does not properly broadcastc         C` s%   t  j j  d d d d d g  } d  S(   NR  i   R  i   (   Rc   R/   (   R   t   mv(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_stats_broadcastA  s    (   R   R   R  R  R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  2  s   		c           C` s)   t  t j j d d g  d d g  d  S(   Ni   i   g?g?(   R   Rc   R>   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rvgeneric_stdG  s    c           C` s  t  t j j d d d d  t j t j t j t j f  t  t j j d d d d  d t j t j t j f  t  t j j d d d d  d t j t j t j f  t  t j j d d d d  d d d t j t j f  t  t j j d d
 d d  t j t j f  t  t j j d d d d  d t j f  t  t j j d d d d  d t j f  t  t j j d d d d  d d d f  d  S(   Nt   dfi   R   R   g)\(?g        i   gGz @g       @i   R{  gGz@i   g
ףp=
@g      @g      @g Gz?g Gz?(   R   Rc   R>   Rt   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_moments_tL  s    .++t   TestRvDiscretec           B` sY   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   ]  s    c         C` s   d d d d d d g } d d d	 d d d g } d
 } t  j d d d | | f  } | j d |  } t t | t j   xM t | |  D]< \ } } t t t	 | | k  t
 |  |  d k   q W| j   } t t | t   d  S(   Nii    i   i   i   i   g        g333333?g?i  t   namet   samplet   valuesR   g?(   Rc   t   rv_discreteR   R   R   R   R   R  t   absR   Rh  R   (   R   t   statest   probabilityt   samplest   rR   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   `  s    4c         C` s   t  j d d d g  } t j d d d d g | f  } t t | |   } | j   } t | |  t j d d d d g d d d g f  } | j   } t | d	  d  S(
   Ng      ?g?g333333?R  i    i   i   g      ?g        (	   Rt   R   Rc   R  R   R   R   R   R   (   R   t   pvalsR   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   n  s    !*c         C` s   d d d g } d d d g } t  j d | | f  } d d	 g d
 d g g } t | j |  d d g d d g g d d d  S(   Ni   i   i   g      ?g333333?g?R  g      ?g      @g      @g        R   g+=(   Rc   R  R   R   (   R   t   xkt   pkRP  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   z  s    		c         C` s   d d d g } d d d g } t  j d | | f  } d d	 d
 d d d d d g } d d d d d d d d g } t | j |  | d d t g  | D] } | j |  ^ q | d d d  S(   Ni   i   i   g      ?g333333?g?R  ig      ?g?g      ?g       @g      @i   i    g?R   g+=(   Rc   R  R   R   (   R   R  R  RP  t   x_valuesR   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    "c         C` s   d d d g } d d d g } t  j d | | f  } d d d	 d
 d d g } d d d d d d g } t | j |  | d d t g  | D] } | j |  ^ q | d d d  S(   Ni   i   i   g      ?g333333?g?R  g?g333333?g?g?g      ?R   g+=(   Rc   R  R   R   (   R   R  R  RP  t   q_valuesR   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    "c         C` sq   d d d d d g d d d d d g f } t  j d	 |  } t | j | j | j d
   d  | j d  d  S(   Ni   i   i   i   i   g?g?g333333?R  ig:0yE>(   Rc   R  R   R   R   R  (   R   R~   RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_ppf_next  s    *#c         C` sx   d d d d d d g } d d d d d d g } t  j d	 | | f  } t | j   t j | j | j  d
 d d  S(   Ni   i   i   i   i   i   g?g?R  R   g+=(   Rc   R  R   t   expectRt   R   R  R  (   R   R  R  RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_expect  s    c         C` sr   d d d g } d d g } t  t t j t d | | f   d d d g } t  t t j t d | | f   d  S(   Ni   i   i   g      ?R  (   t   assert_raisest
   ValueErrorRc   R  R   (   R   R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_bad_input  s
    "(   R   R   R   R   R   R   R   R   R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  \  s   								t   TestSkewNormc           B` s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sD   t  j d d d  } t t j j | d d t j j |   d  S(   Nii   id   R^   i    (   Rt   R   R   Rc   t   skewnormR   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_normal  s    c         C` s`   d } t  j j d d d |  } t | | j  t  j j d d d |  } t | | j  d  S(	   Ni   i   i   R^   g      ?R   i(   i   i   i   (   Rc   R  R   R   R   (   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s
    c      	   C` s>  t  j j d d d t d  d d d d  } t j |  t j |  t  j |  t  j |  g } t  j j  d d d d d d d	 d
  } t	 | | d d t  j j d d d t d  d d d d  } t j |  t j |  t  j |  t  j |  g } t  j j  d d d d d d d	 d
  } t	 | | d d d  S(   NR^   i   R   g    .AR   i   R   i   R   R   R   i(
   Rc   R  R   R   Rt   R   R;  R<  t   kurtosisR   (   R   t   XR   R>  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR}    s    -6'-6'c         C` sf   t  j j d d d g d  } t | t j d  d d t  j j d d	  } t | d
 d d d  S(   Ni
   i   i   ii   R   g+=i   g      @g      ?(   Rc   R  R   R   Rt   t   ones(   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_large_x  s    c         C` s   d d d g d d d g d d d	 g d
 d d g d d d g g } xi | D]a \ } } } t  j j | |  } t | | d d t  j j | |  } t | | d d qI Wd  S(   Nii   gzbLe9ii   gn'/2;ii   g::iig|<igOul2;R   g:0yE>(   Rc   R  R   R   R   (   R   t   cdfvalsR   R^   t   cdfvalR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_sf_small_values  s    (   R   R   R   R  R   R}  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   						t	   TestExponc           B` s   e  Z d    Z d   Z RS(   c         C` s   t  t j j d  d  d  S(   Ni    i   (   R   Rc   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_zero  s    c         C` sB   t  t j j d  d  t  t j j t j j d   d  d  S(   NgC]r2<i(   (   R   Rc   R   R   R  R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_tail  s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestExponNormc           B` s   e  Z d    Z d   Z RS(   c         C` su  d   } d \ } } } d | | } t  j j  | d | d | d d } t | | | | |   d \ } } } d | | } t  j j  | d | d | d d } t | | | | |   d \ } } } d | | } t  j j  | d | d | d d } t | | | | |   d \ } } } d | | } t  j j  | d | d | d d } t | | | | |   d  S(   Nc         S` sr   d d |  | d } d |  | d | d } d d |  | d d } | d |  | | d |  |  | | g S(   Ng      ?i   i   i   g      g      @i(    (   t   lamt   sigRx  t   opK2t   exp_skewt   exp_kurt(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   get_moms  s    i    i   g      ?R   R   R   R   ii   g?i   ii   g      @(   i    i   i   (   ii   g?(   i    i   i   (   ii   g      @(   Rc   R)   R   (   R   R  Rx  R  R  t   Kt   sts(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR}    s"    	$$$$c         C` s=   t  t j j d d  d  t  t j j d 
d  d  d  S(   Ni|i   g        i  (   R   Rc   R)   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_extremes_x  s    (   R   R   R}  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestGenExponc           B` s   e  Z d    Z d   Z RS(   c         C` sZ   d d l  m } t j j t j d d d  d d d  } t | | d d d d  d  S(	   Ni    (   t   simpsi
   g{Gz?g      ?g       @t   dxi   (   t   scipy.integrateR  Rc   t   genexponR   R   R  R   (   R   R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pdf_unity_area  s    *c         C` sQ   t  j j t j d d d  d d d  } t t j d | k | d k @  d  S(   Ni    i
   g{Gz?g      ?g       @i   (   Rc   R  R   R   R  R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_bounds!  s    *(   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestExponpowc           B` s   e  Z d    Z RS(   c         C` sK   t  t j j d d  d  t  t j j t j j d d  d  d  d  S(   Ng|=g       @g#B;i   g?(   R   Rc   R+   R   R  R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  (  s    $(   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  '  s   t   TestSkellamc           B` s   e  Z d    Z d   Z RS(   c         C` s   t  j d d  } d \ } } t  j d d d d d	 d
 d d d d d d d d d d d d d d d d d d d g  } t t j j | | |  | d d d  S(    Nii   i
   i   gYjP'?g$S?gQ`s2?gC/qF?gD<]Y?g/Xj?g86y?g]a¨?g:?g?gQ>?g?g:?g]a¨?g96?g0X?gA<]?gB/q?gQ`s?g$S?gYjP'?gX_?g+rx?gfSr?gJXx~?R   (   i
   i   (   R   R  R   R   Rc   t   skellamR   (   R   R   t   mu1t   mu2t   skpmfR(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   /  s"    c         C` s   t  j d d  } d \ } } t  j d d d d d	 d
 d d d d d d d d d d d d d d d d d d d g  } t t j j | | |  | d d d  S(    Nii   i
   i   gƃQ?gS`X'?gVy)>?g:	 S?gei.f?gȼJ]x?g)?g{^'+i?gLIg>?gnZ?g?rvͪ?gA?g0?g#J?gqSm
.?g~B?gd?gFBD?gQ9?gmF^?gcMy?gGJq?gC^c?g.){?gñݸ?R   (   i
   i   (   R   R  R   R   Rc   R  R   (   R   R   R  R  t   skcdfR(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   D  s"    (   R   R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  .  s   	t   TestLognormc           B` s   e  Z d    Z d   Z RS(   c      	   C` s[   t  j   I t  j d t  t j j d d d g d  } t | d d d g  Wd  QXd  S(   NR   i    g      ?i   g        g~r?g e3E?(   R   R   R   R   Rc   R   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   [  s    c         C` s   d \ } } } t  t j j | | d | t j j t j | |  |   t  t j j | | d | t j j t j | |  |   d  S(   Ng(\5i@i   gOn?R   (   g(\5i@i   gOn?(   R   Rc   R   R   R   Rt   R   R   (   R   t   x2Rx  t   sigma(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logcdfc  s
    $(   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  Z  s   	t   TestBetac           B` s   e  Z d    Z d   Z RS(   c         C` sQ   t  j j d d d  } t | d  t  j j d d d  } t | t j  d  S(   Ni    i   g      ?g;B.(   Rc   R   R   R   Rt   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logpdfm  s    c         C` s~   d \ } } t  j d d d g  } t j | |  } t | j |  j   d  t | j |  t  j | j |    d  S(   Ni  i  g?g      ?g333333?gƒ(   i  i  (	   Rt   R   Rc   R   R   R   R   R   R   (   R   R#   R   R   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logpdf_ticket_1866t  s
    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  l  s   	t   TestBetaPrimec           B` s   e  Z d    Z d   Z RS(   c         C` s   d \ } } t  j d d d g  } t j | |  } t t  j | j |   j    t | j	 |  t  j
 | j |    d  S(   Ni  i  g?g      ?g333333?(   i  i  (   Rt   R   Rc   R&   R   R|  R   R   R   R   R   (   R   R#   R   R   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  }  s
    "c         C` s   t  j j d d d  } t | d  d \ } } t j d d d g  } t  j j | | |  } t t j |  j    t  j	 j
 } g  | D] } | t  j | | |  ^ q } t | | d	 d d
 d d  S(   Ni    g?g333333?g        i  i  g      ?g333333?R   R   g-=(   i  i  (   Rc   R&   R   R   Rt   R   R   R|  R   t   rv_continuoust   _cdf_singleR   (   R   R   R#   R   t   cdfst   gen_cdfR   t   cdfs_g(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    +(   R   R   R  R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  |  s   	t	   TestGammac           B` s   e  Z d    Z d   Z RS(   c         C` sT   t  j j d d d d
 } t | d  t  j j d d d d } t | d	  d  S(   NiZ   i  R   g      ?i   g
CTb?i   i
   gBΖ?g?g?(   Rc   R    R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s&   t  j j d d  } t | d  d  S(   Ni    i   (   Rc   R    R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestChi2c           B` s   e  Z d    Z RS(   c         C` sH   t  t j j d d  d d d t  t j j d d  d d d d  S(   Ni  gޞw1D?R   i   id   g6:֜?(   R   Rc   R1   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR&    s    (   R   R   R&  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   t   TestGumbelLc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` sG   t  j d d  } t j j |  } t j j |  } t | |  d  S(   Nii(   Rt   R   Rc   RG   R   R   R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sf   t  j d d  } t j j |  } t j j |  } t  j |  } t j |  } t	 | |  d  S(   Nii(
   Rt   R   Rc   RG   R   R   R   R   t   expm1R   (   R   R   R@  t   zt   uRJ  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` sG   t  j d d  } t j j |  } t j j |  } t | |  d  S(   Nii   (   Rt   R   Rc   RG   R   R  R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRA    s    (   R   R   R   R   RA  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   		t   TestLevyStablec           B` sM   e  Z d    Z e j j d    Z e j j d    Z d   Z d   Z	 RS(   c         C` s!  d d d d d d d d d d d d d d d d d d d d d g } t  j j |  \ } } } } t | d d d d	 d
 t | d d  t | d d  t | d d  | d d d d d g } t  j j |  \ } } }	 }
 t | d  t | d  t |
 d d  t |	 d d  d  S(   Ngwgg        g u?g67',?gtA}˜.?gGz?R   i    R   g{Gz?g)\(̿i   gۧ1?i   g9]c?igv?(   Rc   t   levy_stablet	   _fitstartR   R   R   (   R   R   t   alpha1t   beta1t   loc1t   scale1R  t   alpha2t   beta2t   loc2t   scale2(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fit  s     c         ` sJ  t  j t j j t j j t j j t  d    } t  j j	 j
 | j d d } t t  d  rl t  j n t  j   d d" d d" g d d" d   f d   g d	 d" d d
   g d	 d" d d   g d	 d" d d   g d d d d   g d d d d   g d d d d   g g } x5t |  D]'\ } \ } } } } | t j _ | t j _ | d" k	 rg| | |  n | } t    }	 |	 j t d  |	 j t d  t j j | d | d | d d d d d }
 t | d |
  } | t  j |
 | d  d d | k t  j |
  B} t |
 | d | d  | | | f d! t Wd" QXqWd" S(#   s!   Test pdf values against Nolan's stablec.exe output
            see - http://fs2.american.edu/jpnolan/www/stable/stable.html

            There's a known limitation of Nolan's executable for alpha < 0.2.

            Repeat following with beta = -1, -.5, 0, .5 and 1
                stablec.exe <<
                1 # pdf
                1 # Nolan S equivalent to S0 in scipy
                .25,2,.25 # alpha
                -1,-1,0 # beta
                -10,10,1 # x
                1,0 # gamma, delta
                2 # output file
        s   data/stable-pdf-sample-data.npyt   namess   x,p,alpha,betat   isint   besti   t
   quadraturec         ` s.   |  d d k   |  d d d d d d g  @S(	   NR#   g      ?R   iii    i   i
   (    (   R  (   t   npisin(    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   <lambda>  s    t	   zolotarevc         S` s   |  d d k S(   NR#   i   (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    c         S` s   |  d d k |  d d k @S(   NR#   i   R   i    (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    i   c         S` s   |  d d k |  d d k @S(   NR#   i   R   i    (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    t   ffti    i   c         S` s   |  d d k S(   NR#   i   (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    i   c         S` s   |  d d k  |  d d k @S(   NR#   i   g      ?(    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    c         S` s   |  d d k |  d d k @S(   NR#   g      ?R   i    (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    s6   Density calculation unstable for alpha=1 and beta!=0.*s2   Density calculations experimental for FFT method.*R   R#   R   R   R   t   calcR   g      ?g      $@s&   pdf test %s failed with method '%s'
%st   verboseN(   Rt   t   loadt   ost   patht   abspatht   joint   dirnamet   __file__t   coret   recordst
   fromarrayst   TR]   R  t   in1dR\   t	   enumerateRc   R  t   pdf_default_methodt   pdf_fft_min_points_thresholdR   t   recordR   R   R   R  t   isnanR   R]  (   R   t   datat   testst   ixt   default_methodt   fft_min_pointst   decimal_placest   filter_funct   subdataRp   R   t   subdata2t   failures(    (   R  sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pdf_nolan_samples  s.    '!%"07c         C` s  t  j t j j t j j t j j t  d    } t  j j	 j
 | j d d } d d d d g d d d d	   g g } x-t |  D]\ } \ } } } } | t j _ | t j _ | d k	 r | | |  n | } t    }	 |	 j t d
 d d  t j j | d | d | d d d d d }
 t | d |
  } | t  j |
 | d  d d | k t  j |
  B} t |
 | d | d | | | f d t Wd QXq Wd S(   s!   Test cdf values against Nolan's stablec.exe output
            see - http://fs2.american.edu/jpnolan/www/stable/stable.html

            There's a known limitation of Nolan's executable for alpha < 0.2.

            Repeat following with beta = -1, -.5, 0, .5 and 1
                stablec.exe <<
                2 # cdf
                1 # Nolan S equivalent to S0 in scipy
                .25,2,.25 # alpha
                -1,-1,0 # beta
                -10,10,1 # x
                1,0 # gamma, delta
                2 # output file
        s   data/stable-cdf-sample-data.npyR  s   x,p,alpha,betaR  i   R  i    i   c         S` s   |  d d k S(   NR#   i   (    (   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  .  s    s   FFT method is considered s)   experimental for cumulative distribution s   function evaluations.*R   R#   R   R   i   R   R  R   g      ?g      $@s&   cdf test %s failed with method '%s'
%sR  N(   Rt   R  R  R  R  R  R  R  R  R   R  R  R\   R  Rc   R  R  R  R   R  R   R   R   R  R  R   R]  (   R   R	  R
  R  R  R  R  R  R  Rp   R   R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_cdf_nolan_samples  s"    '%"	07c   
      C` s  t  j d d d d d d d d d d d d d d d d d d d d g  } t  j d d d d	 d
 d d d d d d d d d d d d d d d g  } t  j d d d d d d d d d d d d d d d d d d d d g  } d d% d g d d% d g g } t  j d d   t    } | j d  t d! d"  xf | D]^ \ } } } | t j _	 | t j _
 t j j | d | d# d d$ d }	 t |	 | | |  q;WWd% QXWd% QXd% S(&   s    sample points extracted from Tables and Graphs of Stable Probability
            Density Functions - Donald R Holt - 1973 - p 187.
        i    i   i   i   i   gtF_?gܵ|?gQ?g@?gec]?gHP?gPkw?g!rh?gTN?g?gDioɴ?g r?gH?g+?gHPs?gX ?g&?g0*?gv/?ga2U0*?g      ?g      ?R  R  R   R  Rf   Rg   s   Density calculation unstable.*R   R   N(   Rt   R   R\   R  R   Rk   R   Rc   R  R  R  R   R   (
   R   t   xst   densityt   betasR
  Rp   R  R  R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt'   test_pdf_alpha_equals_one_beta_non_zero=  s2     $c      
   C` s   d d t  j t  j t  j f g d d g g } xX | D]P \ } } t j j | d | d d
 | d d | d d d } t | |  q4 Wd  S(   NgGz?g)\(̿i    i   i   g?i
   g      ?g      @R   R   i   R   R   (   gGz?g)\(̿i    i   (   i   g?i
   g      ?(   i
   g      @i    i    (   Rt   R   t   NaNRc   R  R   (   R   t
   param_setsRi   t	   exp_statst
   calc_stats(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   `  s
    7(
   R   R   R  R  R  t   slowR  R  R  R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s
   	7*	#t   TestArrayArgumentc           B` s   e  Z d    Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   j  s    c         C` sG   t  j j d t j d  d t j d  d d  } t | j d  d  S(   NR   i   R   R   i
   (   i
   i   (   i
   i   (   Rc   R   R   Rt   R  R  R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_noexceptionm  s    *	(   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  i  s   	t   TestDocstringc           B` s   e  Z d    Z d   Z RS(   c         C` sf   t  j j d  k	 r1 t d t  j j j   k  n  t  j j d  k	 rb t d t  j j j   k  n  d  S(   NRD   R   (   Rc   RD   t   __doc__R\   R   t   lowerR   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_docstringst  s    c         C` s   t  j   t  j   d  S(   N(   Rc   R  R  (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_no_name_arg{  s    
(   R   R   R#  R$  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   s  s   	t   TestEntropyc           B` s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C` sf   d d d g } d d d g } t  j | |  } t  j | |  } t d | k  t | d k  d  S(   Ng      ?g?g333333?g?g      ?g?g        (   Rc   R   R   (   R   R  t   qkt   eselft   edouble(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy_positive  s    c         C` s   t  j d t  } t j | d d } t t | d  d k   t  j d t  } d | d *t j | |  } t j | | d d } t t | | t  j d   d k   d  S(   Ni   R[  g       @g      @gh㈵>i   (   Rt   R  Rh  Rc   R   R   R  R   (   R   R  t   SR&  t   S2(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy_base  s    
c         C` s)   t  t j d d d g  d d d d  S(   Ni    i   i   g R^?R   i   (   R   Rc   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy_zero  s    c         C` se   d d g d d g d d g g } d d g d d g d d g g } t  t j | |  d d g  d  S(   Ng?g?g333333?g333333?g      ?gN!0?g2?(   R   Rc   R   (   R   R  R&  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy_2d  s    !!c         C` s   d d g d d g d d g g } d d g d d g d d g g } t  t j | |  t j d g  d | d d <t  t j | |  d	 d g  d  S(
   Ng?g?g333333?g333333?g      ?g        g2?i    g^fTF?(   R   Rc   R   Rt   R   (   R   R  R&  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_entropy_2d_zero  s    !!(   R   R   R)  R,  R-  R.  R/  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR%    s
   					c          C` s  t  d d d d d d d g  }  t |  d k |  d  \ } } t | d d d d d g  t | d d d d d g  t d d k |  d  \ } } t | |  d  t | d g  t |  d k |  d  \ } } t | |   t | d g t j |    d  S(   Ni   i   i   i    (   R   R   R   R   R   (   R^   R_   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   TestArgsreduce  s    !t   TestFitMethodc           B` s   e  Z d  g Z d   Z e j j e j j d e    d     Z	 e j j e j j d e    d     Z
 d   Z d   Z d   Z d   Z d	   Z d
   Z d   Z d   Z d   Z RS(   R0   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    s   dist,args,alphac   	      C` s   | |  j  k r# t j  d |  n  t t |  } t j d d  j t   Z } | j d t d d  | j	 | i d d 6  } | j
 |  } | j
 | d	 d
 } Wd  QXWd  QXt t |  d t |  k  t t |  d t |  k  d  S(   Ns   %s fit known to failR   R  Rf   Rg   s
   .*frechet_i   R   t	   optimizert   powelli   (   t   skipR  Rx   Rc   Rt   R  R   Rk   Rl   R   t   fitR   R   (	   R   Ro   Ri   R#   R|   Rp   R.  R~   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s     ! c         C` s[  | |  j  d g k r* t j  d |  n  t t |  } t j d d  
t   } | j d t d d  | j	 | i d d	 6  } | j
 | d
 d } | j
 | d d } t t |  d t |  k  t | d d k  t | d d k  t t |  d t |  k  t |  d k r| j
 | d | d }	 t t |	  d t |  k  t |	 d | d k  n  t |  d k r| j
 | d | d }
 t t |
  d t |  k  t |
 d | d k  n  t |  d k rK| j
 | d | d } t t |  d t |  k  t | d | d k  n  Wd  QXWd  QXd  S(   Nt   frechets   %s fit known to failR   R  Rf   Rg   s
   .*frechet_i   R   t   floci    t   fscalei   i   iit   f0t   f1t   f2(   R4  R  Rx   Rc   Rt   R  R   Rk   Rl   R   R5  R   R   (   R   Ro   Ri   R#   R|   Rp   R.  R~   R   t   vals3t   vals4t   vals5(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fix_fit  s2          c         C` s   t  j j d  t  j d d   t j j d d d d d } t  j t  j |  t  j d  d	 j	    } t
 t  j t j j | d
 d d d  | d d g d d Wd  QXd  S(   Ni90  R   R  g      ?g        g      4@R   i   i   R7  i    R8  R   g:0yE>(   Rt   Ru   Rv   R  Rc   R   R   R   R   R   R   R   R5  (   R   R   t   expected_shape(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fix_fit_2args_lognorm  s    /'c         C` s   t  j d d  } t j j |  \ } } t | d  t | t  j d   t j j | d d \ } } t | d  t | t  j d   t j j | d d \ } } t | d  t | d  d  S(   Ni   i   i   i   R7  R8  (   Rt   R  Rc   R   R5  R   R   R   (   R   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fix_fit_norm  s    c         C` s  t  j d d  } t  j |  j   } d } t j j | d | \ } } } t  j | j    | } t t  j |  t j	 |  | d d t
 | |  t | | j   | d d d } d } t j j | d | d | \ } } } t
 | |  t
 | |  t | | j   | d d d	 } d } t j j | d | d | \ } } } t
 | |  t
 | |  t | | j   | d d d } d	 }	 t j j | d | d
 |	 \ } } } t
 | |  t
 | |	  | t  j |	  }
 t t j	 |  |
  d  S(   Ni   i   i    R7  R   i   i   R9  i   R8  (   Rt   R  R   R   Rc   R    R5  R   R   t   digammaR   (   R   R   t   meanlogR7  R^   R   R   R   R9  R8  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fix_fit_gamma	  s6    !)'''c         C` s  d   } t  j d d d g  } t j j | d d d d \ } } } } t | d  t | d  t | | | |  d d g d	 d
 t  j d d d g  } t j j | d d d d d d \ } } } } t | d  t | d  t | d  | | | |  \ } } t | d d	 d d | }	 t j j |	 d d d d d d \ }
 } } } t | d  t | d  t | d  | |
 | |	  \ } } t | d d	 d t |
 |  t t	 t j j | d d d d t  j d d d g  } t t	 t j j | d d d d t t	 t j j | d d d d d d t t	 t j j | d d d d d d t t	 t j j | d d d d d d d d d  S(   Nc         S` s   t  |  } t j |  j   } t j d |  j   } t j |  |  } | | | t j |   | | | t j |  g } | S(   Ni   (   R   Rt   R   R   R   t   psi(   R^   R_   R   R   t   s1t   s2t   psiabt   func(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   mlefunc2  s    g      ?g      ?g      ?R7  i    R8  i   R   gư>R9  i   gh㈵>R:  i   (
   Rt   R   Rc   R   R5  R   R   R   R  R  (   R   RK  R   R^   R_   R   R   t   dat   dbR  t   a2t   b2R  R  R@  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fix_fit_beta/  s8    	*%0
0""((!c      	   C` s   t  j d d d d d d d d g  } t j j |  \ } } t | d  t | d  t j j | d d \ } } t | d  t | d  t j j | d d \ } } t | d  t | d  d  S(   Ni   i   i   R8  i   R7  i    (   Rt   R   Rc   R   R5  R   (   R   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_expon_fitf  s    'c         C` sx  t  j d d d d d d g  } t  j | d  } t j j | d d \ } } } t | | j   d	 d
 t | d  t | t  j	 | j
    d	 d
 t j j | d d d d \ } } } t | t  j | t  j d  d j
    d	 d
 t | d  t | d  t j j | d d d d \ } } } t | d  t | d  t | t  j	 | j
    d	 d
 d  S(   Ng      ?i   i
   i   i   i;   i   R7  R   g-q=R8  i   i   t   fix_sg      ?(   Rt   R   R   Rc   R   R5  R   R   R   R   R   R   (   R   R   t   lnxm1R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_lognorm_fitu  s    !!"','c         C` s  t  j d d d d g  } t j j |  \ } } t | | j    t | | j    t j j | d d \ } } t | d  t | | j    t j j | d d \ } } t | d  t | d  t	 t
 t j j | d d	 t	 t
 t j j | d d
 d  S(   Ng      ?g?g333333?g      "@R7  i    R8  i
   g       @g      @(   Rt   R   Rc   R   R5  R   R  t   ptpR  R  R  (   R   R   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_uniform_fit  s    c         C` s  d \ } } t  j j | | d d d d } t  j j | d d } t  j j | d d } t | | d	 d
 d d
 t  j j | d d } t | | d	 d
 d d
 t  j j | d d } t  j j | d d } t | | d	 d
 d d
 t  j j | d d } t | | d	 d
 d d
 t t t  j j | d d d d t t t  j j | d d d d d d d d t  j j | d d d d d d } | \ }	 }
 } } t |	 | | g d d d g  d } t  j j | d d } t  j j | d | \ }	 } } t |	 |  d  S(   Ng      @g      @R   id   t   random_statei  R9  t   faR   g-q=R   t   fix_aR:  t   fbt   fix_bi   i   i    R7  R8  i   (   g      @g      @(	   Rc   R   R   R5  R   R  R  R   R    (   R   R^   R_   R   t   res_1t   res_2t   res_3t   res_4t   res_5t   aat   bbt   llt   ssR	  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_fshapes  s,    !"!$!c         C` sJ   t  j } | j d d d d  } t d d  } t t | j | |  d  S(   NR  i   R   id   t   enikibenikii(   Rc   R)   R   R   R  t	   TypeErrorR5  (   R   Ro   R	  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_extra_params  s    	(   R   R   R4  R   R  R  R  t   parametrizeR   R  R?  RA  RB  RE  RP  RQ  RT  RV  Re  Rh  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR1    s   			$	$				&	7				&t
   TestFrozenc           B` sY   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    c         C` s  t  j } t  j d d d d  } | j d  } | j d d d d d } t | |  | j d  } | j d d d d d } t | |  | j d  } | j d d d d d } t | |  | j d  } | j d d d d d } t | |  | j d  } | j d d d d d } t | |  | j   } | j d d d d  } t | |  | j	   } | j	 d d d d  } t | |  | j
   } | j
 d d d d  } t | |  | j   } | j d d d d  } t | |  | j   } | j d d d d  } t | |  | j d  } | j d d d d d } t | |  t | j | j  t | j | j  d  S(   NR   g      $@R   g      @g      4@g      ?i   (   Rc   R   R   R   R   R   R  R   t   medianR   R;  R   R   t   momentR^   R_   (   R   Ro   t   frozent   result_fR5  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    sJ    	c         C` s*  d } t  j } t  j |  } | j d  } | j d |  } t | |  | j d  } | j d |  } t | |  | j d  } | j d |  } t | |  | j d  } | j d |  } t | |  | j d  } | j d |  } t | |  | j   } | j |  } t | |  | j	   } | j	 |  } t | |  | j
   } | j
 |  } t | |  | j   } | j |  } t | |  | j   } | j |  } t | |  | j d  } | j d |  } t | |  t | j | j j  t | j | j j  d  S(   Ng       @g      4@g      ?g      $@i   (   Rc   R    R   R   R   R   R  R   Rk  R   R;  R   R   Rl  R^   Ro   R_   (   R   R^   Ro   Rm  Rn  R5  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_gamma  sL    	c         C` sN   t  j d  } | j d  } | j  d d  | j d  } t | |  d  S(   Ni   i   R   R   (   Rc   R   Rl  R   (   R   Rm  t   m1R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_ticket_12939  s
    c         C` s   t  j d d  } | j j | j j } } t | | g d d g  t | j | j g d d g  t  j j d d d t | j j | j j g | | g  t | j | j g | | g  t  j d d  } t | j | j k	  d  S(   NR   gg        g      $@i    g?(   Rc   R4   Ro   R^   R_   R   R   R   (   R   RP  R^   R_   t   rv1(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRO  H  s    	%c         C` s   t  t t j d   d  S(   Nt	   rv_frozen(   R   R]   Rc   Rd   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rv_frozen_in_namespace]  s    c         C` s|   t  j   } t t | d   d | _ t | j j   t j j	 d  j    t j j	 d  } | j
 d d d |  d  S(   NRW  i*   i  R   i   (   Rc   R   R   R]   RW  R   t	   get_stateRt   Ru   t   RandomStateR   (   R   Rm  t   rndm(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_random_statea  s    	c   
      C` s1  t  j d d  } t  j d  } t  j d d d d d g d	 d
 d d g f  } x | | | g D] } d | _ | j d d  t j |  } | j d d  } t j |  } | j d d  } t	 | |  | j
 d  | j
 d  g }	 t	 |	 d |	 d  t	 | j |	 d  | j |	 d   qa Wd  S(   Ngdsz@g@e?g      @R  i    i   i   i   g?g?g333333?g?i  R   i   g      ?(   Rc   R   Rs  R  RW  R   t   picklet   dumpst   loadsR   R   R   (
   R   R   t   poissR  t   distfnR   t   r0t	   unpickledt   r1t   medians(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_picklingo  s     	c         C` s   d   } t  j d d d d d d  } | j | d d	 d
 d d t } t  j j | d d d d d d d d	 d
 d d t } t | |  t  j d d d } | j |  } t  j j | d d d d } t | |  d  S(   Nc         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRJ    s    R^   i   R   i   R   i   t   lbi   t   ubt   conditionalRi   (   i   (   i   (   Rc   R    R  t   TrueR   Rs  (   R   RJ  t   gmt   gm_valt	   gamma_valR   t   p_valt   poisson_val(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    	!!(   R   R   R   R  Ro  Rq  RO  Rt  Rx  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRj    s   		3	4					t
   TestExpectc           B` st   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z RS(   c         C` s.  t  j j d   d d d d } t | d d d t  j j d	   d d d d } t | d d d t  j j d
 d d d d } t  j j d d d d d } t  j j d   d d d d d | d | } t | d d d t  j j d   d d d d d | d | d t } t | d d d d  S(   Nc         S` s   |  d |  d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R   i   R   i   i   R   i   c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    g?gffffff?c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R  R  g?c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R  g      ?(   Rc   R   R  R   R   R  (   R   RJ  RF  R  R  t   prob90t   prob90c(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    !!-*	c         C` sX  t  j j d   d d d d d d } t | d d
 d t  j j d   d d d d d d } t | d d
 d t  j j d d d d d d d } t  j j d d d d d d d } t  j j d   d d d d d d d | d | d t } t | d d
 d t  j j d   d d d d d d d | d | d t } t | d d
 d d  S(   Nc         S` s   |  d |  d S(   Ni   g      @gUUUUUU@gUUUUUU@(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    Ri   i
   i   R   R   i   g      ?g      2@R   i   c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    g      @g       @i   g      @gffffff?g?c         S` s   d S(   Ng      ?(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R  R  R  g?c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   i
   i   gqq?(   i
   i   gUUUUUU@(   i
   i
   (   i
   i
   (   Rc   R   R  R   R   R]  R  (   R   RJ  RF  R  R  R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_beta  s    '$$c   
      C` s  t  j j  d d d d d \ } } t  j j d   d d d d } t | | d d	 t  j j d
   d d d d } t | | d d t  j j d   d d d d d d d d	 } t | | d d d t  j j d d	 g d d d d d j   } t  j j d   d d d d d d d d } t | | d d	 t  j j d   d d d d d d d d d t } t | d d d t  j j d   d d d d d d }	 t |	 d d d	 d  S(   Ni   i
   i   R   g      @c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    Ri   R   i   c         S` s   |  d d S(   Ng      "@i   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    i   c         S` s   |  d d S(   Ng      "@i   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R  i   R  i   c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    i   i   c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    R  c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    i    (   i   i
   i   (   i   i
   i   (   i   i
   i   (   i   i
   i   (   i   i
   i   (   i   i
   i   (   Rc   R!  R  R   R   R   R  (
   R   t   m_truet   v_trueRF  RJ  t   v_boundst	   prob_truet   prob_boundst   prob_bct   prob_b(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_hypergeom  s(    $!	1c         C` s   t  j j d   d d d d d t } d t  j j d d  } t | | d d	 t  j j d
   d d d d d t } t | d d d	 d  S(   Nc         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    Ri   i   R  i   R  i   R   i   c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   i   (   i   (   Rc   Rs  R  R]  R   R   R  (   R   R  t   prob_b_truet   prob_lb(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_poisson  s    		c         C` sT   t  j } | j d d  } | j d d  | j d d  } t | | d d d  S(	   NRi   g      ?g      ?R   i   (   g      ?(   g      ?(   g      ?(   Rc   R6   R  R   (   R   t   halflogt   res1R1  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_genhalflogistic  s
    	c         C` s   t  t j t j j d d    t  t j t j j d   d d   t  t j t j j d   d d   t  t j t j j d   d d	   d  S(
   Ni  gGz?c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    Ri   c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   gGz?(   gGz?(   gGz?(   R   Rt   R|  Rc   RU   R   R  (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rice_overflow  s    "((c         C` s   d
 \ } } t  j j d   d | f } t | | | d t j d |  d d t  j j d   d | f d	 | } t | | | d d d  S(   Ng333333?i   c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    Ri   g      ?R   gV瞯<c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  
	  s    R   (   g333333?i   (   Rc   RE  R  R   Rt   R   (   R   R   R   t   res_0t   res_l(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_logser	  s    &$c         C` s   d	 \ } } t  j j d   d | | f } t  j j d   d | | f } t | | | d d t | | d | | d d d  S(
   Ni   i   c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    Ri   c         S` s   |  d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    R   g-q=i   (   i   i   (   Rc   R  R  R   (   R   t   p1t   p2Rp  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_skellam	  s
    !!c         C` sb   d \ } } t  j j d   | | f  } t | t d   t | |  D  | | d d d  S(   Ni    iq   c         S` s   |  S(   N(    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    c         s` s   |  ] } | Vq d  S(   N(    (   t   .0t   _(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pys	   <genexpr>	  s    R   gV瞯<(   i    iq   (   Rc   R   R  R   R   t   range(   R   t   lot   hiR.  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_randint	  s    c         C` s    t  t t j j d   d  d  S(   Nc         S` s   |  d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  !	  s    i   (   i   (   R	   R   Rc   Rz  R  (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_zipf	  s    c      
   C` s_   t  j j d   d d } t  j j d   d d d d d d d	 d
 } t | | d d d  S(   Nc         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  %	  s    Ri   i   c         S` s   d S(   Ni   (    (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  &	  s    t   maxcounti  t	   chunksizei    t	   toleranceg:0yE>R   i   (   i   (   i   (   Rc   Rs  R  R   (   R   t   n0t   n1(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_discrete_kwds#	  s    c         C` sR   d   } xB d d g D]4 } t  j j d |  } t | | |  d d q Wd  S(   Nc         S` s0   |  d d |  d d |  d d |  d |  S(   Ni   i
   i   i   i   i   i   (    (   Rx  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   poiss_moment5-	  s    i   i   R   g|=(   Rc   Rs  Rl  R   (   R   R  Rx  t   m5(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_moment*	  s    	(   R   R   R  R  R  R  R  R  R  R  R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   			"		
								t   TestNctc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` sZ   t  j d d  } t | j d  d  t  j d d  } t | j d  d d d d  S(   Ni   i    g      ?ig K?R   i
   (   Rc   R?   R   R   R   (   R   RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_nc_parameter6	  s    c         C` s   t  j j d t j d d  d  d   d  f t j d d d   } t d d d d	 g d
 d d d g d d d d g g  } t | | d d d  S(   Ni   i   i   g?i   gMp^j?g6].ftv?gȳ'ς?gu?g!Y<a?g]d1p?go|?g?gHdY?g2Ԥg?g}o/u?g .mr?R   gh㈵>(	   Rc   R?   R   Rt   R  R\   R   R   R   (   R   R.  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_broadcasting>	  s    +c         C` s)   t  j d d  } t | j   d  d  S(   Ni   i    g       @(   Rc   R?   R   R;  (   R   RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_variance_gh_issue_2401F	  s    c         C` s   t  j j  d d d d d d  \ } } } } t t j |   t | | | g t j t j t j g  t  j j  d d d d d d  \ } } } } t t j | | | g  j    t | t j  d  S(   NR  gffffff?t   ncg333333?R   R   g@(	   Rc   R?   R   Rt   R|  R   R   R  R   (   R   RF  RJ  R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_nct_inf_momentsN	  s    -(-"(   R   R   R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  5	  s   			t   TestRicec           B` s   e  Z d    Z d   Z RS(   c         C` sj  d d d g } t  t j t j j | d d  j    t  t j t j j | d d  j    t  t j t j j | d d  j    t  t j t j j	 | d d  j    d d d d g } t  t j t j j
 | d d  j    t j j d	 d
 d } t  t j |  j    d } t t j j | d	  t j j | |  d | d d	 d  S(   Ng?g      ?g      @R_   g        g?g      ?g?i    R   R   g:0yE>R   R   (   R   Rt   R|  Rc   RU   R   R   R   R   R   R   R   (   R   R   R   R   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rice_zero_bZ	  s    +++++*c         C` sH   t  j j } t | d d  j d  t | d d d d  j d  d  S(	   NR_   g      @i   R   i   i   (   i   i   (   i   i   (   Rc   RU   R   R   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rice_rvso	  s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  Y	  s   	t
   TestErlangc           B` s   e  Z d    Z d   Z RS(   c         C` s   t  j j d  d  S(   Ni  (   Rt   Ru   Rv   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   v	  s    c         C` s   t  j    t  j d t  t t t j j d d d d d d d d	 d
 d d g } t j j | d d } t j	 j | d d } t
 | | d d Wd  QXd  S(   NR   g?R   i    R   i   R   i   g      ?g      ?g       @g      @R9  R   gMbP?(   R   R   R   R   R  Rc   t   erlangR   R5  R    R   (   R   R	  t   result_erlangt   result_gamma(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_erlang_runtimewarningy	  s    "(   R   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  u	  s   	t   TestRayleighc           B` s   e  Z d    Z d   Z RS(   c         C` s#   t  j j d  } t | d  d  S(   Ni2   g)Zx(   Rc   RD   R   R   (   R   R@  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    c         C` s#   t  j j d  } t | d  d  S(   Ni2   i(   Rc   RD   R   R   (   R   R@  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s   	t   TestExponWeibc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s_   d } d } d } t  j j | | |  } t  j j | | |  } t | | g d d g  d  S(   Ng?g      ?g      Y@g:23W+g~`9k(   Rc   R*   R   R   R   (   R   R   R^   R   R   Re  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_pdf_logpdf	  s    c         C` s   t  j d d d  } d } d } t j j | | |  } t j j | |  } t | |  t j j | | |  } t j j | |  } t | |  d  S(   Niii   i   id   (   Rt   R   Rc   R*   R   R@   R   R   (   R   R   R^   R   R   R   Re  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_a_is_1	  s    c         C` s   t  j d d d  } d } d } t j j | | |  } t j j |  } t | |  t j j | | |  } t j j |  } t | |  d  S(   Nii   i
   (   Rt   R   Rc   R*   R   R   R   R   (   R   R   R^   R   R   R   Re  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_a_is_1_c_is_1	  s    (   R   R   R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s   		t   TestWeibullc           B` s   e  Z d    Z d   Z RS(   c         C` s&   t  j j d d  } t | d  d  S(   Ni    i   (   Rc   R@   R   R   (   R   R@  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s    c   
      C` sB  d } d } d } t  j j | | d | } t | t j d  d  t  j j | | d | } t | d t j d   t  j j | | d | } t | t	 j
 d   t  j j | | d | } t | t j t	 j
 d    t  j j | | d | } t | t j d   t  j j | | d | }	 t |	 d  t  j j d d d d } t | t j d	   t  j j d d d d }	 t |	 d	  d
 } t  j j | | d | } t | t j d  d  t  j j | | d | } t | d t j d   t  j j | | d | } t | t j d   t  j j | | d | } t | d  t  j j | | d | } t | t	 j
 d   t  j j | | d | }	 t |	 t j t	 j
 d    t  j j d d d d } t | t	 j
 d   t  j j d d d d }	 t |	 t j t	 j
 d    d  S(   Ng      ?g       @g      @R   g      пi   i   i   ig      g&.iI  Pl|gCe gCe (   Rc   R@   R   R   Rt   R   R   R   R   R   R  R   R   R   RA   (
   R   R   R^   R_   R   t   lpR   t   lcR   t   ls(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_with_maxima_distrib	  sH      (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  	  s   	t	   TestRdistc           B` s   e  Z e j j d     Z RS(   c         C` sG   t  j } d d d g } t | j | j | d  d  | d d d  S(   NgMbP?g      ?g+?g     @R   i   (   Rc   t   rdistR   R   R   (   R   R}  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rdist_cdf_gh1285!
  s    	(   R   R   R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   
  s   t	   TestTrapzc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   d d d d g } xy | D]q } d | d g } t  t j j | | |  t j j | |   t  t j j | | |  t j j | |   q Wd  S(   Ni    g333333?g      ?i   (   R   Rc   RM   R   RN   R   (   R   t   modest   modeR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_reduces_to_triang+
  s    c         C` so   t  j d d d  } t t j j | d d  t j j |   t t j j | d d  t j j |   d  S(   Ni    i   i
   (   Rt   R   R   Rc   RM   R   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_reduces_to_uniform4
  s    +c         C` sx  t  t j j d d d  d  t  t j j d d d  d  t  t j j d d d  d  t  t j j d d d  d  t  t j j d	 d d  d
  t  t j j d d d  d  t  t j j d d d  d
  t  t j j d	 d d  d  t  t j j d d d  d  t  t j j d d d  d  t  t j j d d d  d  t  t j j d d d  d  d  S(   Ni    i   i   g      ?g?grq?g?g      ?g?g      ?g      ?g?g      ?g      ?g      ?(   R   Rc   RM   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt
   test_cases9
  s    c         C` s5  t  j d d d g  } t  j d d g  d  d   d  f } t  j d d d g  } t j j | | |  } t  j | | |  \ } } } t  j | j d	 | j	 } t  j
 | j  }	 xW t |	 | j   | j   | j    D]. \ }
 } } } t j j | | |  | |
 <q Wt | | j | j  d
 d d  S(   Ng?g?g333333?g      ?g333333?g333333?g      ?g?R   R   gV瞯<(   Rt   R   R\   Rc   RM   R   t   broadcast_arrayst   emptyR   R   R  R  t   ravelR   R9  R   (   R   R   t   dR   RJ  t   cct   ddR   R.  t   indt   it   x1t   c1t   d1(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_trapz_vectM
  s    %: (   R   R   R  R  R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  *
  s   				t
   TestTriangc           B` s   e  Z d    Z RS(   c         C` sm  t  j d d  Ut t j j d d  d  t t j j d d  d  t t j j d d  d  t t j j d d  d  t t j j d d  d  t t j j d d  d	  t t j j d d  d  t t j j d d  d
  t t j j d d  d  t t j j d d  d  t t j j d d  d  t t j j d d  d  Wd  QXd  S(   NR   t   raisei    g       @g      ?g      ?i   g        i   g      ?g      ?(   Rt   R  R   Rc   RN   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_edge_cases_
  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  ^
  s   c           C` s   t  t j j d  d d d d d t  t j j d  d d d d d t  t j j d	 d
 d d d d d d d d d  S(   Ng2g?R   i
   t   err_msgt   test_540_567g2gk?g;B.?R   gͣh?R   gHŎ*?g.y?(   R   Rc   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  r
  s    c          C` s   t  j j d d  }  d  S(   NR  R    (   Rc   t   _continuous_distnst	   gamma_gen(   t   g(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_ticket_1316~
  s    c           C` s#   t  t j j d d  d d  d  S(   Ng        i   g      ?i   (   R   Rc   R1   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_ticket_1326
  s    c          C` su  t  j d d d  }  t  j d d  } z xz d d d t  j d g d g d g g  g D]K } t j j |  |  } t | d k j    t t  j	 |  j    qX Wt  j d g d g d	 g g  } t j j |  |  } Wd  t  j |   Xt t  j	 |  j    t | d
 d k j    t | d d k j    t | d d k j
    t | d d k j
    d  S(   Ng      g      @ie   R  R  g        g      g       g       @i    i   i   (   Rt   R   t   seterrR   Rc   RO   R   R   R   R  t   any(   R   t   olderrR  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_tukey_lambda
  s    4!R  s   docstrings strippedc           C` s0   t  d t j j k  t  d t j j k  d  S(   Ns   pdf(x, mu, loc=0, scale=1)s   pmf(x,(   R   Rc   Rs  R!  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_ticket_1421
  s    c        	   C` sm  t  j d d  Ut t  j t j j d t  j    t t  j t j j d t  j    t t  j t j j	 d t  j    t t  j t j j
 d t  j    t t  j t j j d t  j    t t  j t j j d t  j    t t  j t j j d t  j    t t  j t j j d t  j    t t  j t j j t  j d    t t  j t j j t  j d    t t  j t j j	 t  j d    t t  j t j j
 t  j d    t t  j t j j t  j d    t t  j t j j t  j d    t t  j t j j t  j d    t t  j t j j t  j d    Wd  QXd  S(   Nt   invalidR  i   g      ?(   Rt   R  R   R  Rc   R>   R   R  R   R   R   R   R   R   R  R   R   R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt    test_nan_arguments_gh_issue_1362
  s"    %%%%%%%%%%%%%%%c          C` s  t  j j d  t  j d d d g  }  t j j |  d |  d |  d d d	 } t  j d
 d  } z% t  j t j j | d d  } Wd  t  j |   Xt	 | |  d d t  j t j j | d d d d  } t	 | |  d d t  j t j j | d d d d  } t	 | |  d d t  j t j j | d d d d  } t	 | |  d d t  j j d  d } d } t j
 j | d d d	 } t  j t j
 j | d |  } t  j | t  j | | d j    g  } t	 | | d d d  S(   Ni.  g      ?g        g      ?i    i   i   R   id   R  R  R7  R   R8  R   R9  g?g       @i   (   Rt   Ru   Rv   R   Rc   R   R   R  R5  R   R   R   R   (   t   trueR   R  t   paramsR   R7  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_frozen_fit_ticket_1536
  s*    *%'''!,c          C` sT   t  j j d  t j j d d  }  t j j |   } d } t | | d d d  S(	   Ni	 R   id   g
ףp=
?gʡE?R   i   (   g
ףp=
?gʡE?(   Rt   Ru   Rv   Rc   R   R   R5  R   (   R   R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_regression_ticket_1530
  s
    c          C` sy   t  j j d  t  j j d  }  xP d D]H } t j j |  |  \ } } t | | d d t | d d d q) Wd  S(	   Ni  i*   g     @g   6AR   g      ?g333333?(   g     @g   6A(   Rt   Ru   Rv   t   randnRc   R   R5  R   (   R   t   offsetR   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gh_pr_4806
  s    c          C` s   t  j j  d d d }  d t j d d d d g } t |  | d d t  j j  d	 d d }  d d
 d d g } t |  | d d t  j j  d d d }  d d d d g } t |  | d d d  S(   Ni    R   R   i   i   g333333?R   i
   g
ףp=
	@gz5v?gRTgQ?gNg @gJFٻ(   Rc   RO   Rt   R   R   (   R  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt"   test_tukeylambda_stats_ticket_1545
  s    c           C` s&   t  t j t j j d d    d  S(   Ni  i   (   R   Rt   R|  Rc   Rs  R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_poisson_logpmf_ticket_1436  s    c          C` sp   d d d d d f f d d d d	 d
 f f g }  x9 |  D]1 \ } } t  j j  | d d } t | |  q7 Wd S(   s  Test the powerlaw stats function.

    This unit test is also a regression test for ticket 1548.

    The exact values are:
    mean:
        mu = a / (a + 1)
    variance:
        sigma**2 = a / ((a + 2) * (a + 1) ** 2)
    skewness:
        One formula (see https://en.wikipedia.org/wiki/Skewness) is
            gamma_1 = (E[X**3] - 3*mu*E[X**2] + 2*mu**3) / sigma**3
        A short calculation shows that E[X**k] is a / (a + k), so gamma_1
        can be implemented as
            n = a/(a+3) - 3*(a/(a+1))*a/(a+2) + 2*(a/(a+1))**3
            d = sqrt(a/((a+2)*(a+1)**2)) ** 3
            gamma_1 = n/d
        Either by simplifying, or by a direct calculation of mu_3 / sigma**3,
        one gets the more concise formula:
            gamma_1 = -2.0 * ((a - 1) / (a + 3)) * sqrt((a + 2) / a)
    kurtosis: (See https://en.wikipedia.org/wiki/Kurtosis)
        The excess kurtosis is
            gamma_2 = mu_4 / sigma**4 - 3
        A bit of calculus and algebra (sympy helps) shows that
            mu_4 = 3*a*(3*a**2 - a + 2) / ((a+1)**4 * (a+2) * (a+3) * (a+4))
        so
            gamma_2 = 3*(3*a**2 - a + 2) * (a+2) / (a*(a+3)*(a+4)) - 3
        which can be rearranged to
            gamma_2 = 6 * (a**3 - a**2 - 6*a + 2) / (a*(a+3)*(a+4))
    g      ?g      ?i   g        g333333g       @i   i$   g^cQg333333R   R   NgUUUUUU?gUUUUUU?gqq?(   Rc   R   R   (   t   casesR^   t
   exact_mvskR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_powerlaw_stats  s
    c          C` s&   t  j j d d  }  t |  d  d  S(   Ni    i   g        (   Rc   R   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_powerlaw_edge,  s    c          C` s   t  j j d d  }  t |  d  t  j j d d d d g  }  t |  t j d d g  t  j j d d d d g  }  t |  t j d t j g  d  S(   Ni    i   g        g      ?g      ?g      ?(   Rc   R+   R   R   R   Rt   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_exponpow_edge2  s    c          C` ss   t  j j d d d  }  t |  d  t  j j d d d  }  t |  d  t  j j d d d  }  t |  d  d  S(   Ni    i   g      ?ii   i   i   i
   i	   i   ggв9t?g>gqq?gqq?(   Rc   R!   R   R   t   _munpR   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gengamma_edge>  s    c       1   C` s  t  j d d d d d d d d d	 d
 d d d d d d d d d d d d d d d d d d d d d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. d/ d0 g0  }  zX t  j d1 d2  } t   7 } | j t d3  | j t d4  t j j	 |   Wd  QXWd  t  j |   Xd  S(5   Ng>X*ȿgPix#?g=?g&^?goϿg뵏˿gO_ZQ?g\?g~?g)/?gRܶ?g핚οgH߃[g?gS"gm_ пg7k?g#BF?gKU=?gT?gZg[Qs?g2?g6Hwƭ8?g*-
?ga]?g'?g޻?g?J_ ?g~sw?g0FfͿgg"@ӿg?%:˿g&zM?g?Gg	F?g~,g HgW2ҿgTzy?gwmǿg @gW=ֿg	't?g".v1glg.Hꮿg,?g*˿R  R  s:   The maximum number of subdivisions .50. has been achieved.s-   floating point number truncated to an integer(
   Rt   R   R  R   Rk   R   R   Rc   t   ksoneR5  (   R  R  Rp   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ksone_fit_freezeK  s(    		c          C` s,  t  j t t d d d    }  d d d d d d	 d
 d d d d d d d d d d d d d d d d d d d d d d  d! g } t t j   j |   | d" d# t t j   j |  d$  j | d" d# t j j |  d%  d& j	 } t  j
 t j j |   t j j |    } t | | d" d& d  S('   Ni    ix   i   gDB.g8_$g%`OAgjhwHRgWMB@v`g7VY}igۦx\Arg	xg#g/dg3$gegd)gNq{3gيGǓgr4g37'
gfFg?dJgضg2,
gm%gӅJgz;pgɿ{gk2gij<%giVSͶgBR4g
Q/MR   g:0yE>y        +=y        |=g|=(   Rt   RL  t   listR  R   Rc   R   R   t   realt   imagR   R   (   R   R   t   derivt   deriv_expected(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_norm_logcdff  s    "")+c          C` s   t  j d d d d d d g  }  t  j d d d	 d
 d d g  } t j j |   } t | | d d t j j |  } t | |  d d d  S(   Ni  g      ?g      ?g?g{Gz?gMbP?g~V1?g|N?gba"?g܄4ťY?gOul2;g$%+IR   g|=gvIh%<=(   Rt   R   Rc   R   R   R   R   (   R   R   R@  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_levy_cdf_ppf  s    !	c           C` s   t  t j j d d d d  d  t  t j j d d d d  d  t  t j j d d d d  d  t  t j j d d d d  d  t  t j j d d d d  d  d  S(   Ngffffff?i i  i  g      c@g     h@g=
ףp=?gGz?g      c@g     h@g{Gz?id   i   i   (   g      c@g     h@(   g      c@g     h@(   g      c@g     h@(   R   Rc   R!  Rv  R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_hypergeom_interval_1802  s    "c          C` s  t  j j d  t  j d d d d }  t t t j j |  d d d d	 t t t j j |  d d d
 d d	 t t t j j |  d d d
 d  t t t j j |  d d d d	 d d t t t j j	 d d d d	 d d t t t j j
 |  d d d d	 d d t t t j j |  d d d d	 d d t t t j j d d d d	 d d t t t j j d d d d	 d d t t t j j |  d d d d	 d d t j j |  d d  t j j |  d d d
  t j j d d  t j j d d d
  t j j d d d
 d  t j j	 d d d
 d  t j j t j j	 d d d d  t j j |  d d d t t t j j |  d d d
  t t t j j |  d d d d
 t t t j j |  d d d	 t t t j j |  d d
 d d d	 t t t j j |  d d
 d d d  t t t j j |  d d
 d d d d	 t t t j j |  d d
 d d d	 d d t j j |  d d
 d d d	  d  S(   Ni  g?gffffff?t   numi   i   i   R   g      ?i   R   g      ?g       @R  R   i   i   (   Rt   Ru   Rv   R   R  Rg  Rc   R    R   R   R   R   R   R5  R   R   R   R*   R0   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_distribution_too_many_args  s8    "%"(%((%%(%"%%(+c          C` sk   t  j j t j d d d  d d  }  t  j j t j d d d  d d  } t |  | d d d d	 d  S(
   Ni   i   g?i   gYZ@R   gMbP?R   i    (   Rc   R=   R   Rt   R  t   _cdfvecR   (   R^   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ncx2_tails_ticket_955  s    ''c       
   C` s   t    f }  |  j t d  t t j j d t j d d  d  d  t j j	 d t j d d  d  } Wd  QXt
 t j |  j    d  S(   Ns!   divide by zero encountered in logi   iT  i^  i   i    (   R   Rk   R   R   Rc   R=   R   Rt   R  R   R   RS  R   (   Rp   t   logval(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_ncx2_tails_pdf  s
    +*c          C` s/   t  j d d d }  t |  j d  d  d  S(   Ni    R   i   (   Rc   R<   R   R   (   RP  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_foldnorm_zero  s    c          C` s   t  j j  d d d g d d  }  t  j j  d d g d d  } t d   | D  } t | |   t  j j  d d d g  }  t  j j  d d g  } t d	   | D  } t | |   d  S(
   Ng        g      ?g      ?i   c         s` s%   |  ] } t  j t  j | f Vq d  S(   N(   Rt   R   R  (   R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pys	   <genexpr>  s    i   g333333@ic         s` s%   |  ] } t  j | t  j f Vq d  S(   N(   Rt   R   R  (   R  R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pys	   <genexpr>  s    (   Rc   R   Rz   R   R   (   t   mv3t   mv2t   mv2_augmented(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_stats_shapes_argcheck  s    !t
   _distr_genc           B` s   e  Z d    Z RS(   c         C` s   d S(   Ni*   (    (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   _pdf  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   t   _distr2_genc           B` s   e  Z d    Z RS(   c         C` s   d | | S(   Ni*   (    (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   _cdf  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   t   _distr3_genc           B` s   e  Z d    Z d   Z RS(   c         C` s   | | S(   N(    (   R   R   R^   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    c         C` s   d | | S(   Ni*   (    (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  
  s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   _distr6_genc           B` s   e  Z d    Z d   Z RS(   c         C` s   | | | S(   N(    (   R   R   R^   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    c         C` s   d | | S(   Ni*   (    (   R   R   R^   R_   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R  R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s   	t   TestSubclassingExplicitShapesc           B` s   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C` s5   t  d d d d  } t | j d d d d  d  S(   NR  t   dummyt   shapesR^   i   i*   (   R  R   R   (   R   t   dummy_distr(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_correct_shapes  s    c         C` s8   t  d d d d  } t t | j d t d d   d  S(   NR  R  R   t   Ai   R^   (   R  R  Rg  R   R   (   R   R!  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_wrong_shapes_1   s    c         C` sJ   t  d d d d  } t d d d d d	 d
  } t t | j d |  d  S(   NR  R  R   s   a, b, cR^   i   R_   i   R   i   (   R  R   R  Rg  R   (   R   R!  R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_wrong_shapes_2$  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   i*   (   R   R  Rg  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_string)  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   (!)(   R   R  t   SyntaxErrorR  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_identifiers_1.  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   t   4chan(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_identifiers_23  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   m(fti)(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_identifiers_37  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   a=2(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt"   test_shapes_identifiers_nodefaults;  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   *args(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_args?  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   **kwargs(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_kwargsC  s    c         C` s)   t  d d d d  } t t t |  d  S(   NR  R  R   s   a, b, c, lambda(   R   R  R'  R  (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_keywordsG  s    c         C` sX   d t  j f d     Y} | d d  } t | j d d d t  j j d  d  d  S(   Nt	   _dist_genc           B` s   e  Z d    Z RS(   c         S` s   t  j j |  | S(   N(   Rc   R   R  (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  O  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0  N  s   R   R^   g      ?i   (   Rc   R  R   R   R   (   R   R0  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_shapes_signatureL  s    c      	   C` sQ   d t  j f d     Y} | d d  } t t | j d t d d d d	   d  S(
   NR0  c           B` s   e  Z d    Z RS(   c         S` s   t  j j |  | S(   N(   Rc   R   R  (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  X  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0  W  s   R   s   a, bg      ?R^   i   R_   i   (   Rc   R  R  Rg  R   R   (   R   R0  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt"   test_shapes_signature_inconsistentU  s    c         C` s   d t  j f d     Y} | d d  } t | j d d d t  j j d  d  t | j d d  t  j j d  d  t t | j d t d d   d  S(   NR0  c           B` s   e  Z d    Z RS(   c         W` s   | d } t  j j |  | S(   Ni    (   Rc   R   R  (   R   R   Ri   t   extra_kwarg(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  b  s    
(   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0  a  s   R   R3  g      ?i!   t   xxx(   Rc   R  R   R   R   R  Rg  R   (   R   R0  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_star_args^  s
    ,)c         C` s   d t  j f d     Y} | d d  } t | j d d d d d	 t  j j d  d	 d  t | j d d d	  t  j j d  d	 d  d  S(
   NR0  c           B` s   e  Z d    Z RS(   c         W` s"   | d } t  j j |  | | S(   Ni    (   Rc   R   R  (   R   R   R  Ri   R3  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  o  s    
(   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0  n  s   R   s   offset, extra_kwargg      ?R  io   R3  i!   (   Rc   R  R   R   R   (   R   R0  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_star_args_2k  s    c         C` sT   d t  j f d     Y} | d d  } t | j d d d t  j j d   d  S(   NR  c           B` s   e  Z d    Z RS(   c         _` s&   | j  d d  } t j j |  | S(   NR3  i   (   t   popRc   R   R  (   R   R   Ri   t   kwargsR3  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  }  s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR  |  s   R   R3  i   i   (   Rc   R  R   R   R   (   R   R  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_extra_kwargy  s    c         C` sN   d t  j f d     Y} | d d  } t | j d  t  j j d   d  S(   NR0  c           B` s   e  Z d    Z RS(   c         S` s   t  j j |  S(   N(   Rc   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0    s   R   Rh   g      ?(   Rc   R  R   R   R   (   R   R0  Ro   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   shapes_empty_string  s    (   R   R   R"  R$  R%  R&  R(  R*  R+  R,  R-  R.  R/  R1  R2  R5  R6  R9  R:  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s"   																		t   TestSubclassingNoShapesc           B` s   e  Z d    Z d   Z e j j e d d d    Z e j j e d d d    Z	 d   Z
 d   Z d   Z d	   Z RS(
   c         C` s/   t  d d  } t | j d d d d  d  S(   NR  R  i   R^   i*   (   R  R   R   (   R   R!  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_only__pdf  s    c         C` s/   t  d d  } t | j d d d d  d  S(   NR  R  i   R^   (   R  R   R   (   R   R!  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_only__cdf  s    R  s   docstring strippedc         C` s^   t  d d  } t | j d  t | j d  t j d | j  } t t |  d k  d  S(   NR  R  i   R^   s   logpdf\(x, a, loc=0, scale=1\)(	   R  R   Ry   R   t   ret   findallR!  R   R   (   R   R!  R.  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_signature_inspection  s    	c         C` s^   t  d d  } t | j d  t | j d  t j d | j  } t t |  d k  d  S(   NR  R  i   s   a, bs!   logpdf\(x, a, b, loc=0, scale=1\)i   (	   R  R   Ry   R   R>  R?  R!  R   R   (   R   R!  R.  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_signature_inspection_2args  s    	c         C` s   t  t t d d d  S(   NR  R  (   R  Rg  R  (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt0   test_signature_inspection_2args_incorrect_shapes  s    c         C` s6   d t  j f d     Y} t t | t d d   d  S(   NR0  c           B` s   e  Z d  d  Z RS(   i*   c         S` s   d S(   Ni*   (    (   R   R   R^   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0    s   R  R  (   Rc   R  R  Rg  R   (   R   R0  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_defaults_raise  s    c         C` s6   d t  j f d     Y} t t | t d d   d  S(   NR0  c           B` s   e  Z d    Z RS(   c         W` s   d S(   Ni*   (    (   R   R   R^   Ri   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0    s   R  R  (   Rc   R  R  Rg  R   (   R   R0  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_starargs_raise  s    c         C` s6   d t  j f d     Y} t t | t d d   d  S(   NR0  c           B` s   e  Z d    Z RS(   c         [` s   d S(   Ni*   (    (   R   R   R^   R8  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR    s    (   R   R   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR0    s   R  R  (   Rc   R  R  Rg  R   (   R   R0  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_kwargs_raise  s    (   R   R   R<  R=  R  R  t   skipift   DOCSTRINGS_STRIPPEDR@  RA  RB  RC  RD  RE  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR;    s   		!!
			s   docstring strippedc          C` s   d d d g }  xn t  j D]c } t t  |  } t | t  j t  j f  r x0 |  D]% } t t j | | j	  d  k  qP Wq q Wd  S(   Ns   ,\s*,s   \(\s*,s   ^\s*:(   Rc   t   __all__Rx   R   R  R  R   R>  t   searchR!  R\   (   t   badonest   distnameRo   t   regex(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR#    s    c           C` sH   t  t j j t j d d  d  t  t j j t j d d  d  d  S(   Ni
   i   i    i   g?i   (   R   Rc   R  R   Rt   R   R=   R  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_infinite_input  s    "c          C` s5   t  j j t  j j d d  d  }  t |  d  d  S(   Ng0.++i   (   Rc   R8   R   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_lomax_accuracy  s    $c          C` s5   t  j j t  j j d d  d  }  t |  d  d  S(   Ng0.++i   (   Rc   RI   R   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_gompertz_accuracy  s    $c          C` s5   t  j j t  j j d d  d  }  t |  d  d  S(   Ng0.++i   (   Rc   t
   truncexponR   R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_truncexpon_accuracy  s    $c          C` s;   t  j j t  j j d d  d  }  t |  d d d d  S(   Ni	   i   g      "@R   i   (   Rc   RD   R  R   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_rayleigh_accuracy  s    $c          C` s   t  j d t   }  t  j d  t j j d d  } t j j d d  } t j j d d  } t j j	 t
 j d  } t |   } t | d  Wd QXd S(   s   regression test for gh-6219R  t   alwaysg      ?i    g        N(   R   R   R  R   Rc   R5   R   R   R   R   Rt   R   R   R   (   t   wR   t   number_of_warnings_thrown(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt    test_genextreme_give_no_warnings  s    c          C` s  d }  t  j j d  } t | d |  d d d t  j j d  } t | |  d d d t  j j d  } t | d  t  j j d	 d
 d } t | |  d t j d  d d d t  j j d  } t | d |  d d d t  j j d  } t | d |  d d d d  S(   Ngox?g      i   i   R   g+=i    g      ?g       R   i
   i   iii   (   Rc   R5   R   R   R   Rt   R   (   t   euler_gammaR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_genextreme_entropy  s    (c          C` s   d }  t  j j |  d  } t | d  t  j j | d  } t | |   d }  t  j j |  d  } t | d  t  j j | d  } t | |   d }  t  j j |  d  } t | d  t  j j | d  } t | |   d  S(	   Ng    חAg      g'b%4gQ@g      ?gؗҜ;i    g.l6?(   Rc   R5   R   R   R  (   R   R   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_genextreme_sf_isf  s    c          C` s/   d }  t  j j |  d d  } t | d  d  S(   NgؗҜ<i   i   gH&8>(   Rc   R   R   R   (   t   probR-  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_burr12_ppf_small_argD  s    	c          C` s  t  j d d d  d  }  t j j |  d d d d } t  j d	 d
 d d d d d d d d d d d d d d d d d d g  } t | | d d t j j |  d d d d } t  j d d d  d! d" d# d$ d% d& d' d( d' d& d% d$ d) d* d+ d, d- g  } t | | d d t j j |  d d d d d. d/ d0 d } t  j d1 d2 d3 d4 d5 d6 d7 d8 d9 d: d; d< d; d: d9 d8 d7 d6 d5 d4 g  } t | | d d t j j |  d d d d } t  j d= d> d? d@ d dA dB dC dD dE dF dG dH dI dJ dK dL dM dN dO g  } t | | d d t j j |  d d d d } t  j dP dQ dR dS dT d# dU dV dW dX dY dZ d[ d\ d] d^ d_ d` da dO g  } t | | d d t j j |  d d d d d. d/ d0 d } t  j db d# dc dU dd dV de dW df dX dg dY dh dZ di d[ dj d\ dk d] g  } t | | d d dl S(m   s   
    All values are calculated using the independent implementation of the
    ROOT framework (see https://root.cern.ch/).
    Corresponding ROOT code is given in the comments.
    g      g      @i   iR   g      ?RF  g       @gC,d	Ɣ?gH㸘?g5?gM"M#w?gɫs^?g @?gƴ?g@w?gɫs^?g|?q ?g C?gJó?g,BV\ۤ?g;?g#ek?g%ǓE?g(Ȍx?g>J>R   gMbP?g      @g#{`?gdf?g Jq?gSS){?g'	w?guL?g T)?gcAJ?gGTn?gR1#?gA]P?gvӢ?gKq?gL?g
	N<!?gAw>R   g      ?R   g=aO}?gI8?g#T?gaW)?gǓI?g
J?gE?d۳?gGTn?g8?gR1#?gkP?g(*T?gD
)?g:3P?g9?g?S[?gOqx?gD
)?g9?gɫs^?gK?gX?g3<֌?gM+?gyS
c?gI`s?g辜?g{i ?g^0?g?g#c?g%r?gc@v?ghtj}?g(˔^?gHK4U?gğ@ _?gy}D?gRr/?gN?gYjhG?ga0L?g4f?g<@?g@CH?g	ސF?g5+-#?g?g?q ?g}'v?g*V?gr/0+?g[8	?gΥ?gY?g#)a?g?̔?g]ؚ?g|c ?N(   Rt   R   Rc   RZ   R   R   R   R   (   R  t
   calculatedR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_crystalball_functionR  sR    **c          C` sv  t  j d d d d d g  }  t  j d d d d d g  } t  j d d d d d g  } t j j d |  |  } t | | d d t  j d	 d
 d d d g  } t  j d d t  j d d g  } | | } t j j d |  |  } t | | d d t  j t  j t  j t  j d d g  } | | } t j j d |  |  }	 t | |	 d d t  j t  j t  j t  j t  j d g  } | | }
 t j j d |  |  } t |
 | d d t  j t  j t  j t  j t  j d g  } | | } t j j d |  |  } t | | d d t  j t  j t  j t  j t  j d g  } | | } t j j d |  |  } t | | d d d S(   sg   
    All values are calculated using the pdf formula and the integrate function
    of Mathematica
    g       @g      ?g      @g      @g      "@i    R   gMbP?gԚh@g[&@gͪ@g2dQ@gn6-@g?ޫV&̿g BgQCRgQF\ ji   g
@gn(@i   g?Җ)i   gMg'#@i   g('UHi   N(   Rt   R   Rc   RZ   R  R   R   (   R   RF  t   expected_0th_momentt   calculated_0th_momentR   R^   t   expected_1th_momentt   calculated_1th_momentt   expected_2th_momentt   calculated_2th_momentt   expected_3th_momentt   calculated_3th_momentt   expected_4th_momentt   calculated_4th_momentt   expected_5th_momentt   calculated_5th_moment(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt!   test_crystalball_function_moments  s4    !
'
*
*
*
c       	   C` sI  x t  d d  D] }  x t  d d  D] } t t j j |  d d | d |  d  t t j j |  d d | d |  d k  t t j j d d | d |  d  t t j j d 
d | d |  d k  q& Wq Wxk t  d d  D]Z }  t t j j d d |  d  t t j j d d |  d t j j d d |   q Wd  S(	   Ni   i
   gMbP?R2   R   g        gMbPg      ?(   R  R   Rc   RY   R   R   R   R   (   R  t   j(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   test_argus_function  s    ),%1t   TestHistogramc           B` s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C` s   t  j j d  t  j d d d d d d d d d d d d d d d d d d d d d d d	 d	 d
 g d d	 } t j |  |  _ t j j d d d d d d d d  } t  j | d d } t j |  |  _	 d  S(   Ni  i   i   i   i   i   i   i   i   i	   t   binsR   g      ?R   g      @R   i'  RW  i{   i2   (
   Rt   Ru   Rv   t	   histogramRc   t   rv_histogramt   templateR   R   t   norm_template(   R   Ro  R	  t   norm_histogram(    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    3-'c         C` sc  t  j d d d d d d d d d	 d
 d d d d d d d d d d g  } t  j d d d  d! d" d# d$ d% d& d' d( d) d* d+ d, d- d. d/ d0 d1 g  } t |  j j |  |  t |  j j d  d2  t |  j j d  d3  t |  j j d  d4  t |  j j d  d5  t  j d d d  } t |  j j |  t	 j
 j | d d d d d d d  S(6   Ng        g      ?g      ?g      ?g       @g      @g      @g      @g      @g      @g      @g      @g      @g      @g      @g      @g       @g      !@g      "@g      #@g      9@g      $@ii   i
   R   R   R   g?g        g        g{Gz?g{Gz?g{Gz?g{Gz?gQ?gQ?g{Gz?g{Gz?g?g?g{Gz?g{Gz?gQ?gQ?gQ?gQ?g        g        gQ?gQ?g        g        (   Rt   R   RL  R   Rq  R   R   R   Rr  Rc   R   (   R   R  t
   pdf_valuesR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s    $'c         C` s  t  j d d d d d d d d d	 d
 d d d d d d d d d d g  } t  j d' d( d) d* d+ d, d- d. d/ d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d: g  } t |  j j |  |  t |  j j | d d ! | d d ! t  j d d d   } t |  j j |  j j |   |  t  j d d d   } t |  j j |  j j |   |  t  j d! d d"  } t |  j j |  t	 j
 j | d# d d$ d d% d& d  S(;   Ng        g      ?g      ?g      ?g       @g      @g      @g      @g      @g      @g      @g      @g      @g      @g      @g      @g       @g      !@g      "@g      #@g      9@g      $@g      )@g      .@g      1@g      3@g     4@g      6@g     7@i   iid   ii
   R   R   R   g?g        g        g        g{Gz?g{Gz?g{Gz?gQ?g
ףp=
?gQ?g{Gz?g?g      ?g333333?g(\?gRQ?g=
ףp=?g)\(?gGz?g      ?g      ?(   Rt   R   RL  R   Rq  R   R   R   Rr  Rc   R   (   R   R  t
   cdf_valuesR   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s     $''%%c         C` s  d } |  j  j d | d d  } t t j | d k   d  t t j | d k  d# | d	 d
 t t j | d k  d$ | d	 d
 t t j | d k  d% | d	 d t t j | d k  d& | d	 d t t j | d k  d' | d	 d t t j | d k  d( | d	 d t t j | d k  d) | d	 d t t j | d k  d* | d	 d t t j | d k  d+ | d	 d t t j | d k  d, | d	 d t t j | d k  d- | d	 d t t j | d k  d. | d	 d t t j | d k  d/ | d	 d t t j | d  k  d0 | d	 d t t j | d" k  d1 | d	 d t t j | d" k  d2 | d	 d t t j | d" k  d  d  S(3   Ni'  R   RW  i{   g      ?g        g       @g      9@R   g?g      @g      @g?g      @g      @g      @g      @g       @g      @g      $@g?g      @g      )@g      .@g      @g      1@g      @g      3@g      @g     4@g      6@g      !@g     7@g      "@g{Gz?g{Gz?gQ?g
ףp=
?gQ?g{Gz?g?g      ?g333333?g(\?gRQ?g=
ףp=?g)\(?gGz?g      ?g      ?(   Rq  R   R   Rt   R   R   (   R   Rj   R  (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR     s(    &&&&&&&&&&&&&&&&c         C` sL   xE t  d  D]7 } t |  j j |  t j j | d d  d d q Wd  S(   Ni   g      ?g      @R   g?(   R  R   Rr  R  Rc   R   (   R   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt	   test_munp1  s    c         C` s5   t  |  j j   t j j d d d d  d d d  S(   NR   g      ?R   g      @R   g?(   R   Rr  R   Rc   R   (   R   (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyR   6  s    (   R   R   R   R   R   R   Rv  R   (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyRm    s   					(   R!  t
   __future__R    R   R   R   R>  R  Ry  R  t   numpy.testingR   R   R   R   R   R   R	   R  R
   R  t   scipy._lib._numpy_compatR   R   Rt   R   R   t   numpy.lib.recfunctionsR   Rb   R   R  R   t   scipy.statsRc   t!   scipy.stats._distn_infrastructureR   t   scipy.stats.distributionst   scipy.specialR   t   test_continuous_basicR   t   flagst   optimizeRG  Rw   R\   R`   Re   Rs   R   R  Ri  R   R   R   R   R   R   R   t   objectR   R   R   R   R   R   R   R   R  R	  R  R   R7  R?  RD  RI  RK  Rf  Ri  Rr  Ry  R~  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R  R   R%  R0  R1  Rj  R  R  R  R  R  R  R  R  R  R  R  R  R  R  RF  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#  RM  RN  RO  RQ  RR  RV  RX  RY  R[  R]  Rj  Rl  Rm  (    (    (    sC   lib/python2.7/site-packages/scipy/stats/tests/test_distributions.pyt   <module>   s0  4				!					.
&5)X(Fe$?*$)		[8	",	
+	 $,\
4				!					
			&								(				
	x;!
								,		G	.	