U
    »mœd²  ã                   @   s€   d dl Zd dlmZ d dlm  mZ d dlm	Z	m
Z
mZmZ dd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ ZG dd„ dƒZdS )é    N)Úassert_equalÚassert_almost_equalÚassert_Úassert_allclosec                  C   sJ   t  d¡} | d }tt | |¡dƒ t jdddd�}tt | |¡dƒ d S )Né   é
   r   é   )Únumg¨žX�ö†‘?)ÚnpÚaranger   ÚmsZcompare_medians_msZlinspace)ÚxÚyÚy2© r   ú]/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/scipy/stats/tests/test_mstats_extras.pyÚtest_compare_medians_ms	   s
    
r   c                  C   sÊ   t  d¡} tt | ¡ddd� t  | ¡| _d| jd d…< tt | ¡ddd� ttj| dd	�jd
kƒ t  d¡ 	d¡}ttj|dd�ddgƒ t  |¡|_d|jd d…d d …f< ttj|dd�ddgƒ d S )Né   é   g›+¡†›„=)ZrtolFr   é   T©Úvaré   é   )r   r   r   ©Úaxisr   é   )
Úmar   r   r   ZhdmedianZ	make_maskÚmaskr   ÚsizeÚreshape)r   Zx2r   r   r   Útest_hdmedian   s    
r!   c                  C   sV   t j d¡ t j d¡} t | ¡}t|j| jkƒ tj| ddgd�}t|jdkƒ d S )Niù éd   r   ç      ð?)Zpointsr   )	r
   ÚrandomÚseedZrandnr   Zrshr   Úshaper   )r   Úresr   r   r   Útest_rsh&   s    
r(   c                  C   sL   t  ddddddddd	d
dddddddddg¡} tt | ¡dddgdƒ d S )NéM   éW   éX   ér   é—   éÒ   éÛ   éö   éý   i  i(  i+  i2  ix  i¬  i  éš  i  i3
  gŸŽÇTâK@gÏ½‡KŽëF@g…ëQ¸Üh@r   )r   Úarrayr   r   Zmjci©Údatar   r   r   Ú	test_mjci3   s            ÿr6   c                  C   s^   t  ddddddddd	d
dddddg¡} tt | d¡ddƒ tt t | d¡d¡ddgƒ d S )Ni!  i+  i.  i<  i?  i@  iB  iD  iR  i]  i{  i‹  i�  i•  r2   çš™™™™™É?gš™™™™¡‚@r   )r7   r7   gfffffŽ�@gÍÌÌÌÌ´ƒ@)	r   r3   r   r   Ztrimmed_meanr   r
   ÚroundZtrimmed_mean_cir4   r   r   r   Útest_trimmed_mean_ci:   s          ÿÿr9   c                  C   s¨   t  d¡} tt  t | ¡¡ddgdƒ |  d¡ dd¡}ttj|dd�dddgdddggdƒ ttj|d	d�|  d
¡ dd
¡ƒ ddg} t | ¡}tt  	|¡ 
¡ ƒ d S )Nr"   g‹RB°ªj8@g]kïSU¥R@r   r   éÿÿÿÿr   r   r   r   )r
   r   r   Zasarrayr   ZidealfourthsÚrepeatr    r   ÚisnanÚall)ÚtestZtest_2DÚ_resultr   r   r   Útest_idealfourthsC   s$    
 ÿÿþÿ
r@   c                d   @   sð   e Zd Zddddddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcddgdZdedf„ Zdgdh„ Zdidj„ ZdkS )lÚTestQuantilesg±xc%œæ?gF4ÆövEç?gÒÝŒÒY±ï?gn……ªí?gJ…]†’XÄ?g'¾�hì?g|f2ä¤Î?g!Ð}_z`Ö?gì 3å!ï?gè�[Q,Ã?gWÿ1¾yûí?gÒéú·+ñÀ?gZy÷7Ð’§?gÏÀšˆä?gÛ|GÉAî?gøPw¥2³Ì?g0úý¹¯è?gÕ3;�?ê?g,7tZ‡ˆÕ?g¤xÞ‹Úâ?gÞ t$ÂOà?gúi¤ñ€Læ?gÓ|rmØqß?gÇslóµíã?gÞÝ‹®YÎè?g´¡¬)Ú†ä?gˆ
zS¾?g'	ÓA¨¼è?gÅ9ioÔ?gOÛÈBè?g–5G¬~¨?gÈ9 ÎÊ×Ý?g*sDÕç®â?gè\¼åæê?gïüNšá?g™6?¥ÚÝ?gÒÆŸ	'à?gÁ$�¸�	Í?gLÎwƒ5×?gå2J¤(ˆì?g2ê…ûû^À?g?ø¤¡³]ß?gÍ¬ Çú¦?g8~n‰Ø7¥?g›Ðöx¹YÔ?gEáá!à?ga¯@ŒÁ'â?gÊ‡3ÎÅÐÛ?gF~ý\ä?gìBèª½«Í?gXü/¢°uÍ?g/:L@{Ä?gÐbË9ê?gÀ›‡vÂYë?g5XEsÜ?gíd¼"2ß?gßÝ-=X.é?gi™‰E³"Ú?g­/¯EôÙ?g4…J3HÐ?ç‘²Ç’Ùï?gœä+§[{Â?g§o¦­ç?gžŽbámƒî?g\-ù�ûÂå?g'¦W?@ÛØ?g›Ëñ0¢ë?çÜÃát®z?g=…zÿÁ5¾?g°}²vœ‘í?gXP—T—Ø?g<*Rï™ì?gXöà’ä?gµùOœ{FÞ?g::2è?g —¼ÇºôÎ?g/ÞÛiµÛ?g½ÓÀ6²æ?g´RfU‡Á?gå…uú9Ã?gŽ!G‚[Þ?gT=‚ã~í?gÃÛÿ×ëÓà?gA¥¥M07È?g,j»ÿKVë?g"¬Ð„I˜ê?g”‹Î…ÓÐ?gËÊ\Éâ?gRïƒÕSIÐ?g	µê�oÎ?g2QJ)d~ê?g4n/ø¼Þ?g+-§-Cã?gò®²šXË?g|šwÂiÆ˜?gttÑšc,á?g{Ë»;Ibæ?güÇÕ×Ù‘ì?gvÓ+:™¸?góìR <eç?c                 C   s>  | j }tt |ddg¡ddgƒ t |dddg¡}t|dd	d
gƒ t |¡ dd¡}tj|dddgdd�}t|d d …df t |d d …df dddg¡ƒ t|d d …df t |d d …df dddg¡ƒ tj|dddgddd�}t|d tj|d d …df dddgdd�ƒ t|d tj|d d …df dddgdd�ƒ d S )Ng        r#   rC   rB   g      Ð?ç      à?g      è?g]Aréš4Ð?gìÇ5$?ià?gãJJ5dè?r   r   r   r:   T)r   r   ).r   r   ).r:   )r5   r   r   Úhdquantilesr
   r3   r    )Úselfr5   Zhdqr   r   r   Útest_hdquantilesi   s"    ÿ00 ÿ ÿzTestQuantiles.test_hdquantilesc           	      C   sÊ   t  | j¡}t| jƒ}t | j||f¡}t t |¡¡}||  ||d ¡}t j	|dd�}tj
|dd�}|d | tj|| d dd� d }t||ƒ t|dddgƒ t  ddg¡}t|dddgƒ d S )	Nr   r   r   r   rD   gÿiY­k£?gKŠ4–U}£?gN5i	èt£?)r   Zhdquantiles_sdr5   Úlenr
   Zbroadcast_toZlogical_notÚeyer    rE   ZmeanÚsumr   )	rF   Zhd_std_errsÚnÚjdataZ	jselectorZjdistZ
jdist_meanZjstdZtwo_data_pointsr   r   r   Útest_hdquantiles_sdz   s    
&
z!TestQuantiles.test_hdquantiles_sdc                 C   s4   t  | j¡\}}t|j|j  ko(dkn  ƒ d S )Nr   )r   Zmquantiles_cimjr5   r   r   )rF   Zci_lowerZci_upperr   r   r   Útest_mquantiles_cimj‘   s    z"TestQuantiles.test_mquantiles_cimjN)Ú__name__Ú
__module__Ú__qualname__r5   rG   rM   rN   r   r   r   r   rA   S   sÈ   
                                                                            írA   )Únumpyr
   Znumpy.mar   Zscipy.stats.mstatsÚstatsZmstatsr   Znumpy.testingr   r   r   r   r   r!   r(   r6   r9   r@   rA   r   r   r   r   Ú<module>   s   		