o
    '&i                     @   s   d dl Z d dlZd dlmZmZ d dlmZ e j	dddd dd dej
fd	d
d dejfgdd Zdd Zdd Zdd Zdd Zdd Zdd Ze j	dg ddd Zdd ZdS )    N)assert_allcloseassert_equal)relative_riskzGexposed_cases, exposed_total, control_cases, control_total, expected_rr)            gUUUUUU?)r   
         r   r	   r   r
      c                 C   s"   t | |||}t|j |dd d S )NgvIh%<=Zrtol)r   r   )exposed_casesexposed_totalcontrol_casescontrol_totalZexpected_rrresult r   OC:\wamp64\www\opt\env\Lib\site-packages\scipy/stats/tests/test_relative_risk.pytest_relative_risk	   s   	r   c                  C   sF   t ddddd} | j }| jdd}t|d t|j|jfd	d
d d S )N            r   r   r   r   gffffff?)Zconfidence_levelgUUUUUU?)g?ge[@gƠ>r   )r   confidence_intervalr   lowhighr   rrcir   r   r   &test_relative_risk_confidence_interval   s   
r!   c                  C   sH   t ddddd} | j }t|ddd | d	}t|j|jfd
dd d S )Nr      r
      r          @g+=r   r   )r$   r$   g-q=)r   r   r   r   r   r   r   r   r    test_relative_risk_ci_conflevel0,   s   
r%   c                  C   s6   t ddddd} | d}t|j|jfdtjf d S )Nr   r"   r
   r#   r   r   r   )r   r   r   r   r   npinfr   r    r   r   r    test_relative_risk_ci_conflevel15   s
   
r)   c                  C   sD   t ddddd} t| j tj |  }t|j|jftjtjf d S )Nr   r"   r#   r   )r   r   r&   nanr   r   r   r(   r   r   r   #test_relative_risk_ci_edge_cases_00<      r+   c                  C   s@   t ddddd} t| j d |  }t|j|jfdtjf d S )Nr   r"   r   r#   r   g        )r   r   r   r   r   r&   r*   r(   r   r   r   #test_relative_risk_ci_edge_cases_01D   s   r-   c                  C   sD   t ddddd} t| j tj |  }t|j|jftjtjf d S )Nr   r"   r   r#   r   )r   r   r&   r'   r   r   r   r*   r(   r   r   r   #test_relative_risk_ci_edge_cases_10L   r,   r.   zec, et, cc, ct))r   r   r	   r   )r	   r   r
   )r   r	   r   r   )r   r	   r/   r   c                 C   sB   t jtdd t| ||| W d    d S 1 sw   Y  d S )Nz must be an integer not less thanmatch)pytestraises
ValueErrorr   )ecetccctr   r   r   test_relative_risk_bad_valueT   s   "r9   c                   C   sB   t jtdd tdddd W d    d S 1 sw   Y  d S )Nzmust be an integerr0   r   r	   r$   (   )r2   r3   	TypeErrorr   r   r   r   r   test_relative_risk_bad_type]   s   "r<   )r2   numpyr&   Znumpy.testingr   r   Zscipy.stats.contingencyr   markZparametrizer*   r'   r   r!   r%   r)   r+   r-   r.   r9   r<   r   r   r   r   <module>   s,    
	
