Ë
    âQ(h>  ã                   ó*  — d dl Z d dlZd dlmZmZ d dlmZ e j                  j                  dddd dd dej                  fd	d
d dej                  fg«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Ze j                  j                  dg d¢«      d„ «       Zd„ Zy)é    N)Úassert_allcloseÚassert_equal)Úrelative_riskzGexposed_cases, exposed_total, control_cases, control_total, expected_rr)é   é   é   é   gUUUUUUå?)r   é
   é   é   r   r
   r   r   é   c                 óP   — t        | |||«      }t        |j                   |d¬«       y )Ng‚vIhÂ%<=©Úrtol)r   r   )Úexposed_casesÚexposed_totalÚcontrol_casesÚcontrol_totalÚexpected_rrÚresults         úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/stats/tests/test_relative_risk.pyÚtest_relative_riskr   	   s)   € ô ˜=¨-Ø(¨-ó9€Fä�F×(Ñ(¨+¸EÖBó    c                  ó¾   — t        dddd¬«      } | j                   }| j                  d¬«      }t        |d«       t        |j                  |j                  fd	d
¬«       y )Né   é€   é   é   ©r   r   r   r   gffffffî?)Úconfidence_levelgUUUUUUõ?)g´Úì‚ç?gãÃìe[@g�íµ ÷Æ >r   )r   Úconfidence_intervalr   ÚlowÚhigh©r   ÚrrÚcis      r   Ú&test_relative_risk_confidence_intervalr'      sZ   € Ü¨¸3Ø)+¸3ô@€Fà	×	Ñ	€BØ	×	#Ñ	#°TÐ	#Ó	:€Bô �B˜ÔÜ�R—V‘V˜RŸW™WÐ%Ð'<À4ÖHr   c                  óÀ   — t        dddd¬«      } | j                   }t        |dd¬«       | j                  d	«      }t        |j                  |j                  fd
d¬«       y )Nr   é   r   é   r   ç       @g›+¡†›„=r   r   )r+   r+   gê-�™—q=)r   r   r!   r"   r#   r$   s      r   Ú test_relative_risk_ci_conflevel0r,   ,   sU   € Ü¨¸"Ø)*¸"ô>€Fà	×	Ñ	€BÜ�B˜ %Õ(Ø	×	#Ñ	# AÓ	&€BÜ�R—V‘V˜RŸW™WÐ% z¸Ö>r   c                  ó¨   — t        dddd¬«      } | j                  d«      }t        |j                  |j                  fdt
        j                  f«       y )Nr   r)   r   r*   r   r   r   )r   r!   r   r"   r#   ÚnpÚinf©r   r&   s     r   Ú test_relative_risk_ci_conflevel1r1   5   sD   € Ü¨¸"Ø)*¸"ô>€Fà	×	#Ñ	# AÓ	&€BÜ�"—&‘&˜"Ÿ'™'Ð" Q¬¯© KÕ0r   c                  ó
  — t        dddd¬«      } t        | j                   t        j                  «       | j	                  «       }t        |j
                  |j                  ft        j                  t        j                  f«       y )Nr   r)   r*   r   )r   r   r.   Únanr!   r"   r#   r0   s     r   Ú#test_relative_risk_ci_edge_cases_00r4   <   ó[   € Ü¨¸"Ø)*¸"ô>€Fä�×%Ñ%¤r§v¡vÔ.Ø	×	#Ñ	#Ó	%€BÜ�"—&‘&˜"Ÿ'™'Ð"¤R§V¡V¬R¯V©VÐ$4Õ5r   c                  óÒ   — t        dddd¬«      } t        | j                   d«       | j                  «       }t        |j                  |j                  fdt
        j                  f«       y )Nr   r)   r   r*   r   g        )r   r   r!   r"   r#   r.   r3   r0   s     r   Ú#test_relative_risk_ci_edge_cases_01r7   D   sR   € Ü¨¸"Ø)*¸"ô>€Fä�×%Ñ% qÔ)Ø	×	#Ñ	#Ó	%€BÜ�"—&‘&˜"Ÿ'™'Ð" S¬"¯&©& MÕ2r   c                  ó
  — t        dddd¬«      } t        | j                   t        j                  «       | j	                  «       }t        |j
                  |j                  ft        j                  t        j                  f«       y )Nr   r)   r   r*   r   )r   r   r.   r/   r!   r"   r#   r3   r0   s     r   Ú#test_relative_risk_ci_edge_cases_10r9   L   r5   r   zec, et, cc, ct))r   r   r
   r   )éÿÿÿÿr
   r   r   )r   r
   r   r   )r   r
   r:   r   c                 ó€   — t        j                  t        d¬«      5  t        | |||«       d d d «       y # 1 sw Y   y xY w)Nz must be an integer not less than©Úmatch)ÚpytestÚraisesÚ
ValueErrorr   )ÚecÚetÚccÚcts       r   Útest_relative_risk_bad_valuerE   T   s6   € ô
 
�‰”zÐ)KÔ	Lñ &Ü�b˜"˜b "Ô%÷&÷ &ñ &úó   œ4´=c                  ó€   — t        j                  t        d¬«      5  t        dddd«       d d d «       y # 1 sw Y   y xY w)Nzmust be an integerr<   r   r
   r+   é(   )r>   r?   Ú	TypeErrorr   © r   r   Útest_relative_risk_bad_typerK   ]   s4   € Ü	�‰”yÐ(<Ô	=ñ &Ü�a˜˜S "Ô%÷&÷ &ñ &úrF   )r>   Únumpyr.   Únumpy.testingr   r   Úscipy.stats.contingencyr   ÚmarkÚparametrizer3   r/   r   r'   r,   r1   r4   r7   r9   rE   rK   rJ   r   r   ú<module>rQ      s·   ðÛ Û ß 7Ý 1ð
 ‡�×ÑØMØØØˆˆQ��B—F‘FÐØˆˆQ��B—F‘FÐðóñCóðCòIò*?ò1ò6ò3ò6ð ‡�×ÑÐ)ò ,<ó =ñ&ó	=ð&ó
&r   