ó
áp7]c           @   s¬  d  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
 d d l Z d d l j j Z d d l m Z d d l m Z y d d l j Z Wn e k
 r¶ n Xd 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 „  ƒ  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 „  ƒ  YZ% d  „  Z& 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+ „  Z, d, e f d- „  ƒ  YZ- d. e f d/ „  ƒ  YZ. d0 „  Z/ e j0 j1 d1 d2 ƒ d3 „  ƒ Z2 d S(4   sž   Tests for statistical power calculations

Note:
    tests for chisquare power are in test_gof.py

Created on Sat Mar 09 08:44:49 2013

Author: Josef Perktold
iÿÿÿÿN(   t   assert_almost_equalt   assert_allcloset   assert_raisest   assert_equalt   assert_warns(   t   Holder(   t   HypothesisTestWarningt   CheckPowerMixinc           B   s8   e  Z d  „  Z d „  Z d „  Z e j j d „  ƒ Z RS(   c         C   s|   t  j  |  j ƒ } | d =| j |  j ƒ t |  d ƒ rD |  j } n d } |  j ƒ  } t | j |   |  j	 j d | ƒd  S(   Nt   powert   decimali   (
   t   copyt   kwdst   updatet
   kwds_extrat   hasattrR	   t   clsR    R   t   res2(   t   selfR   R	   t   res1(    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt
   test_power    s    c   	      C   sé   |  j  ƒ  } t j |  j ƒ } | d =| j |  j ƒ t |  d ƒ rP |  j } n' d | k rb d n d } d | d g } g  | D] } | j | ƒ ^ q~ } t |  d ƒ r´ |  j } n d } | j	 | | Ž  } t
 | |  j j	 d | ƒd  S(	   NR   t
   args_namest   nobst   nobs1t   effect_sizet   alphaR	   i   (   R   R
   R   R   R   R   R   t   popR	   R   R    R   (	   R   R   R   R   t   nobs_t   argt   argsR	   t   res(    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_positional,   s    "c      	   C   sŠ   t  j  |  j ƒ } | j |  j ƒ xa |  j D]V } | | } d  | | <|  j ƒ  j |   } t | | d d d | d ƒ| | | <q, Wd  S(   Nt   rtolgü©ñÒMbP?t   err_msgs    failed(   R
   R   R   R   t   NoneR   t   solve_powerR   (   R   R   t   keyt   valuet   result(    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt
   test_rootsG   s    

c         C   s  |  j  t j k r" t j d ƒ n  t j ƒ  } | j d d d ƒ } |  j  ƒ  j d d d t	 j
 d d ƒ d t	 j d d	 d
 d d g ƒ d | d d |  j  } | j d d d ƒ } |  j  ƒ  j d d d t	 j d d d d d d g ƒ d t	 j d d d ƒ d | d d |  j  d  S(   Ns   skip FTestPower plot_poweri   i   t   dep_varR   id   R   gš™™™™™¹?gš™™™™™É?g333333Ó?g      à?t   axt   titles   Power of t-Testt   esi
   i   i   i2   iF   g{®Gáz„?i3   t    (   R   t   smpt
   FTestPowert   pytestt   skipt   pltt   figuret   add_subplott
   plot_powert   npt   aranget   arrayR   t   linspace(   R   t   close_figurest   figR(   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_power_plotX   s    	!	(	   t   __name__t
   __module__R   R   R&   R.   t   markt
   matplotlibR:   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyR      s   			t   TestTTPowerOneS1c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s›   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i  |  _
 t j |  _ d  S(   Ni   i   gš™™™™™©?g4ÒÎlüï?s	   two.sidedt   NULLs#   One-sample t test power calculationR   R   R   R   (   R   t   nt   dt	   sig_levelR   t   alternativet   notet   methodR   R   R   R,   t
   TTestPowerR   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   setup_class{   s    										(   R;   R<   t   classmethodRH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyR?   y   s   t   TestTTPowerOneS2c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s›   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i  |  _
 t j |  _ d  S(   Ni   gš™™™™™É?gš™™™™™©?gOÓøgÁ?s	   two.sidedR@   s#   One-sample t test power calculationR   R   R   R   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RG   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ’   s    										(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRJ      s   t   TestTTPowerOneS3c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   i   gš™™™™™©?g¹“k‡ÿï?t   greaterR@   s#   One-sample t test power calculationR   R   R   R   t   largerRD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RG   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ¨   s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRK   ¦   s   t   TestTTPowerOneS4c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d 6| j d	 6| j d
 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   gš™™™™™©?gwï®oÆ”³?RL   R@   s#   One-sample t test power calculationR   R   R   R   RM   RD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RG   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ¾   s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRN   ¼   s   t   TestTTPowerOneS5c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   gš™™™™™É?gš™™™™™©?g ùæ‡~Öx?t   lessR@   s#   One-sample t test power calculationR   R   R   R   t   smallerRD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RG   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   Õ   s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRO   Ò   s   t   TestTTPowerOneS6c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   gš™™™™™É¿gš™™™™™©?g%í›ÉË?RP   R@   s#   One-sample t test power calculationR   R   R   R   RQ   RD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RG   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ì   s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRR   é   s   t   TestTTPowerTwoS1c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i  |  _
 t j |  _ d  S(   Ni   i   gš™™™™™©?g?'Ow÷î?s	   two.sideds   n is number in *each* groups#   Two-sample t test power calculationR   R   R   R   t   ratio(   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   t   TTestIndPowerR   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH     s    									!	(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRS     s   t   TestTTPowerTwoS2c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i  |  _
 t j |  _ d  S(   Ni   gš™™™™™¹?gš™™™™™©?g€|Í6¯?s	   two.sideds   n is number in *each* groups#   Two-sample t test power calculationR   R   R   R   i   RT   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RU   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH     s    									!	(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRV     s   t   TestTTPowerTwoS3c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s©   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   i   gš™™™™™©?gE¥Ââˆï?RL   s   n is number in *each* groups#   Two-sample t test power calculationR   R   R   R   RT   RM   RD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RU   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   /  s    									!(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRW   -  s   t   TestTTPowerTwoS4c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   g{®Gáz„?gš™™™™™©?g}üB_—¯«?RL   s   n is number in *each* groups#   Two-sample t test power calculationR   R   R   R   RM   RD   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   RU   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   F  s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRX   C  s   t   TestTTPowerTwoS5c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s©   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   i   gš™™™™™¹?gš™™™™™©?gèÛ§÷4°?s	   two.sideds   t test power calculationR   R   R   R   g      ø?RT   s	   two-sidedRD   (   R   t   n1t   n2RB   RC   R   RD   RF   R   R   R   R,   RU   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ]  s    									!(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRY   Z  s   t   TestTTPowerTwoS6c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s©   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni   i   gš™™™™™¹?gš™™™™™©?g ºSê¢¸?RL   s   t test power calculationR   R   R   R   g      ø?RT   RM   RD   (   R   RZ   R[   RB   RC   R   RD   RF   R   R   R   R,   RU   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   t  s    									!(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyR\   q  s   c    
   	   C   s_  d }  d } d } d } t  j | | d d ƒ } t  j ƒ  j | | d ƒ } t  j ƒ  j d d d d d d d	 d  ƒ } d
 } t | | d d ƒt | | d d ƒt | | d d ƒt  j 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 }	 t | |	 d d ƒd  S(   Ni   g333333Ó?iP   gš™™™™™©?g       @R   R   R   R   gkGZ{hÞ?R	   i   g{®Gáz„¿g—ä”¬Õ©?i   g{®Gáz„?RD   RM   gJyÖð ­?g›Þ7!n¦?(   R,   t   normal_powert   NormalIndPowerR   R"   R!   R    (
   t   sigmaRB   R   R   R   R   t   res3t   res_Rt   norm_powt
   norm_pow_R(    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_normal_power_explicitŠ  s,    *		t   TestNormalIndPower1c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6d d 6|  _	 i  |  _
 t j |  _ d  S(   NiP   g333333Ó?gš™™™™™©?gkGZ{hÞ?s	   two.sidedR@   s   two sample power calculationR   R   R   R   i   RT   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   R^   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ®  s    									!	(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRe   ¬  s   t   TestNormalIndPower2c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s­   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d d | _ d | _ | |  _ i | j d	 6| j d
 6| j d 6| j d 6d d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ng{®Gáz„?iP   gš™™™™™©?g›Þ7!n¦?RP   s.   Difference of proportion power calculation fors/    binomial distribution (arcsine transformation)s   same sample sizesR   R   R   R   i   RT   RQ   RD   (   R   t   hRA   RC   R   RD   RF   RE   R   R   R   R,   R^   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   Ã  s    						
		!(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRf   Á  s   t   TestNormalIndPower_onesamp1c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¢   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i d d 6|  _
 t j |  _ d  S(   Ni(   g333333Ó?gš™™™™™©?gkGZ{hÞ?s	   two.sidedR@   s   two sample power calculationR   R   R   R   i    RT   (   R   RA   RB   RC   R   RD   RE   RF   R   R   R   R,   R^   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   Ú  s    									(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRh   Ø  s   t   TestNormalIndPower_onesamp2c           B   s   e  Z e d  „  ƒ Z RS(   c         C   s    t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d 6| j d	 6| j d
 6|  _ i d d 6d d 6|  _	 t
 j |  _ d  S(   Ng{®Gáz„?i(   gš™™™™™©?g›Þ7!n¦?RP   sB   Mean power calculation for normal distribution with known varianceR   R   R   R   i    RT   RQ   RD   (   R   RB   RA   RC   R   RD   RF   R   R   R   R,   R^   R   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   ó  s    								(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRi   ð  s   t   TestChisquarePowerc           B   s    e  Z e d  „  ƒ Z d „  Z RS(   c         C   s©   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d	 6| j d
 6| j d 6|  _	 i | j d d 6|  _
 t j |  _ d  S(   Ngš™™™™™¹?i   i   gš™™™™™©?gÞ¢}ÎáÜª?s   Chi squared power calculations   N is the number of observationsR   R   R   R   i   t   n_bins(   R   t   wt   Nt   dfRC   R   RF   RE   R   R   R   R,   t   GofChisquarePowerR   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH     s    									c         C   s«   |  j  ƒ  } d d d d g } t j |  j ƒ } | d =| j |  j ƒ g  | D] } | | ^ qN } t |  d ƒ r |  j } n d } t | j | Œ  |  j	 j d | ƒd  S(   NR   R   R   Rk   R   R	   i   (
   R   R
   R   R   R   R   R	   R    R   R   (   R   R   R   R   R   R   R	   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   _test_positional!  s    (   R;   R<   RI   RH   Rp   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRj   
  s   c       	   C   sB  xf d d d d d g D]O }  t  j d d |  ƒ } t  j d d d d	 |  d
 d ƒ} t | | d d ƒq Wt  j d d d d d ƒ} d } t | | d d ƒt ƒ  } d | _ d | _ d | _ d | _	 d | _
 d | _ t  j t j | j ƒ | j | j d	 | j	 d
 d ƒ} t | | j
 d d ƒt ƒ  } d | _ d | _ d | _ d | _	 d | _
 d | _ t  j t j | j ƒ | j | j d	 | j	 d
 d ƒ} t | | j
 d d ƒt ƒ  } d | _ d | _ d | _ d | _	 d | _
 d | _ t  j t j | j ƒ | j | j d	 | j	 d
 d ƒ} t | | j
 d d ƒd  S(   Ng{®Gáz„?gš™™™™™©?gš™™™™™¹?gš™™™™™É?g      à?iÈ   iÇ   i   R   t   ncci    R	   i   g      Ð?g8øÂdª`Ä?t   k_groupsi
   gòAÏfÕçê?i   i   g\Á…ÃL©?s%   Multiple regression power calculationg
×£p=
·?gd)¹~é?i   gÅŒh,]#Î?(   R,   t   ttest_powert   ftest_powerR    t   ftest_anova_powerR   t   ut   vt   f2RC   R   RF   R4   t   sqrt(   R   t   res0R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_ftest_power1  sJ    !							$							$							$t   TestFtestAnovaPowerc           B   s   e  Z e d  „  ƒ Z RS(   c         C   s¥   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i | j d 6| j d 6| j d	 6| j d
 6|  _ i | j d 6|  _	 t
 j |  _ d |  _ d  S(   Ng      Ð?iÈ   i
   g8øÂdª`Ä?gòAÏfÕçê?s%   Multiple regression power calculationR   R   R   R   Rr   i   (   R   t   fRA   t   kR   R   RF   R   R   R   R,   t   FTestAnovaPowerR   R	   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   w  s    								(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyR|   u  s   t   TestFtestPowerc           B   s   e  Z e d  „  ƒ Z RS(   c         C   sÃ   t  ƒ  } d | _ d | _ d | _ d | _ d | _ d | _ | |  _ i t j	 | j ƒ d 6| j d 6| j d	 6| j d
 6| j d 6|  _
 i  |  _ d d d	 d
 g |  _ t j |  _ d |  _ d  S(   Ni   i   g
×£p=
·?gš™™™™™¹?gÅŒh,]#Î?s%   Multiple regression power calculationR   t   df_numt   df_denomR   R   (   R   Rv   Rw   Rx   RC   R   RF   R   R4   Ry   R   R   R   R,   R-   R   R	   (   R   R   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyRH   š  s    								 	(   R;   R<   RI   RH   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyR€   ˜  s   c          C   s—  t  j ƒ  }  d } |  j | d d d d d d  d d d	 d
 ƒ} t | d d d ƒ|  j d  d d d d d | d d d	 d
 ƒ} t | | d d ƒt |  j d d ƒ t t |  j ƒ d ƒ i d d 6d d 6|  j d <d |  j	 d <|  j d  d d d d d | d d d	 d
 ƒ} t | | d d ƒt |  j d d ƒ t t |  j ƒ d d t
 |  j ƒ ƒt j |  j	 d <|  j d  d d d d d | d d d	 d
 ƒ} t | | d d ƒt |  j d d ƒ t t |  j ƒ d ƒ |  j d d d d d d d d  ƒ } t | d ƒ t t |  j d  d d d d d d d d d	 d
 ƒt j t ƒ I t j t ƒ 3 |  j d d  d d d d d d d d d	 d
 ƒ Wd  QXWd  QXd  S(   Ngš™™™™™¹?R   i@  R   g{®Gáz„?R   RT   i   RD   RM   gíýlDt&æ?R	   i   i   i    i   iöÿÿÿt   uppiìÿÿÿt   lowR   gìQ¸…ëÁ?i   R    g{®Gázt?(   R,   R^   R"   R!   R    R   t   cache_fit_rest   lent   start_bqexpt	   start_ttpt   reprR4   t   nanR   t
   ValueErrorR.   t   warnsR   t   raises(   t   nipt   es0t   pow_R*   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_power_solver³  s>    $	$	$	%$	$t   reasons%   Known failure on modern SciPy >= 0.10c          C   sc  d }  t  j ƒ  } i d d 6d d 6| j d <| j d d d  d d	 d
 |  d d d d ƒ} t | d d d ƒt | j d d ƒ t t | j ƒ d ƒ t	 j
 | j d <d d l m } t | | j d d d  d d	 d
 |  d d d d ƒt j ƒ  i t j d ƒ | j d d d  d d	 d
 |  d d d d ƒ} t | j d d ƒ t t | j ƒ d ƒ Wd  QXd  S(   NgíýlDt&æ?i2   Rƒ   iìÿÿÿR„   R   gš™™™™™¹?R   g{®Gáz„?R   RT   i   RD   RM   i@  R	   i   i    i   iÿÿÿÿ(   t   ConvergenceWarningt   ignore(   R,   R^   R‡   R"   R!   R    R   R…   R†   R4   RŠ   Rˆ   t   statsmodels.tools.sm_exceptionsR“   R   t   warningst   catch_warningst   simplefilter(   R   RŽ   t   valR“   (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   test_power_solver_warnå  s$    $	$	(3   t   __doc__R
   R–   t   numpyR4   t   numpy.testingR    R   R   R   R   R.   t   statsmodels.stats.powert   statsR   R,   t(   statsmodels.stats.tests.test_weightstatsR   R•   R   t   matplotlib.pyplott   pyplotR0   t   ImportErrort   objectR   R?   RJ   RK   RN   RO   RR   RS   RV   RW   RX   RY   R\   Rd   Re   Rf   Rh   Ri   Rj   R{   R|   R€   R‘   R=   R/   Rš   (    (    (    sA   lib/python2.7/site-packages/statsmodels/stats/tests/test_power.pyt   <module>   sH   ([	"'	D#	2