U
    »mœd?  ã                   @   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   ú]/home/sam/Atlas/atlas_env/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   Ú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    r8   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$   é(   )r1   r2   Ú	TypeErrorr   r   r   r   r   Útest_relative_risk_bad_type^   s    r;   )r1   Únumpyr&   Znumpy.testingr   r   Zscipy.stats.contingencyr   ÚmarkZparametrizer*   r'   r   r!   r%   r)   r+   r,   r-   r8   r;   r   r   r   r   Ú<module>   s2   ýþ
	
ý
