U
    Q»{j?  ã                   @   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ddddg¡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 )Ng‚vIhÂ%<=©Zrtol)r   r   )Úexposed_casesÚexposed_totalÚcontrol_casesÚcontrol_totalZexpected_rrÚresult© r   úc/var/www/html/bwave/python/venv/lib/python3.8/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   Z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_conflevel16   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=   s     ÿ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_01E   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_10M   s     ÿr,   zec, et, cc, ct)r   r   r	   r   )éÿÿÿÿr	   r   r
   )r   r	   r   r   )r   r	   r-   r   c              	   C   s,   t jtdd�� t| |||ƒ W 5 Q R X d S )Nz must be an integer not less than©Úmatch)ÚpytestÚraisesÚ
ValueErrorr   )ÚecÚetÚccÚctr   r   r   Útest_relative_risk_bad_valueU   s    r7   c                	   C   s,   t jtdd�� tddddƒ W 5 Q R X d S )Nzmust be an integerr.   r   r	   r#   é(   )r0   r1   Ú	TypeErrorr   r   r   r   r   Útest_relative_risk_bad_type^   s    r:   )r0   Únumpyr%   Znumpy.testingr   r   Zscipy.stats.contingencyr   ÚmarkZparametrizer)   r&   r   r    r$   r(   r*   r+   r,   r7   r:   r   r   r   r   Ú<module>   s2   ýþ
	
ý
