o
    Mi                     @   sF   d dl Z d dlZd dlmZ G dd de jZedkr!e   dS dS )    N)WilcoxonSignedRankc                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
TestWilcoxonc                 C   s   t  | _d S )N)r   objself r   M/home/ubuntu/.local/lib/python3.10/site-packages/morfessor/test/evaluation.pysetUp   s   zTestWilcoxon.setUpc                 C   s   |  | jdd d S )Ng1\?g?)assertAlmostEqualr   _norm_cum_pdfr   r   r   r   test_norm_cum_pdf
   s   zTestWilcoxon.test_norm_cum_pdfc                 C   s   g d}t dd}ttjdd t||D  }| t|d | jj|dd}| 	|d	 | jj|d
dd}| 	|d g d}g d}| jdd t||D }| 	|d | jjdd t||D dd}| 	|d d S )N)	               r      r      r   c                 S   s   g | ]	\}}|g| qS r   r   ).0uvr   r   r   
<listcomp>   s    z7TestWilcoxon.test_accuracy_wilcoxon.<locals>.<listcomp>8   F
correctiong.`?wilcoxg%^ Ez?)x   r               y         q      p   )      w      r(         r&   s   r#         c                 S      g | ]\}}|| qS r   r   r   abr   r   r   r          g:b+?c                 S   r2   r   r   r3   r   r   r   r       r6   g^҂<?)
rangelist	itertoolschainzipassertEquallenr   	_wilcoxonr
   )r   freqnumsxpyr   r   r   test_accuracy_wilcoxon   s   
 z#TestWilcoxon.test_accuracy_wilcoxonc                 C   sD   | j jdgd dd}| |d | j dgd }| |d d S )Ng?
   Fr   g4IťY?gc2_?)r   r>   r
   )r   rB   r   r   r   test_wilcoxon_tie$   s   zTestWilcoxon.test_wilcoxon_tieN)__name__
__module____qualname__r	   r   rD   rF   r   r   r   r   r      s
    r   __main__)unittestr9   morfessor.evaluationr   TestCaser   rG   mainr   r   r   r   <module>   s    )