a
    h
                     @   sh   d dl Zd dlmZ d dlmZ d dlmZ dd Zdd Z	d	d
 Z
dd Zdd Zdd Zdd ZdS )    N)assert_allclose)approx_weighted_percentilec                  C   sp   t jdt jd} d| d d< d| dd < d| d< d	| d< t jdt jd}d
|d< t| |d}t|d	kslJ d S )Nf   Zdtyper   2      ii            )npemptyfloat64onesr   r   yswZscore r   Z/var/www/html/assistant/venv/lib/python3.9/site-packages/sklearn/utils/tests/test_stats.pytest_weighted_percentile   s    r   c                  C   sN   t jdt jd} | d t jdt jd}d|d< t| |d}|dksJJ d S )Nr   r   r   r
   r   r   )r   r   r   fillr   r   r   r   r   r   test_weighted_percentile_equal   s    
r   c                  C   sT   t jdt jd} | d t jdt jd}|d t| |d}t|dksPJ d S )Nr   r   g      ?r   r   )r   r   r   r   r   r   r   r   r   r   r   $test_weighted_percentile_zero_weight   s    

r   c                  C   st   t g d} t g d}t| |d}t|dks8J t| |d}t|dksTJ t| |d}t|dkspJ d S )	N)r   r   r	            )r   r   r   r   r   r   r   r	   r   r   d   r   )r   arrayr   r   r   r   r   r   4test_weighted_percentile_zero_weight_zero_percentile&   s    r   c                  C   sN   t jd} | jddd}t |j}t |}t||}|t|ksJJ d S )Nr   
      size)	r   randomRandomStaterandintr   shapemedianr   r   )rngxweightsr(   w_medianr   r   r   "test_weighted_median_equal_weights3   s    

r-   c                  C   s\   t jd} | jddd}| jddd}t ||}t |}t||}|t|ksXJ d S )Nr      r    r"   r   )	r   r$   r%   r&   choicerepeatr(   r   r   )r)   r*   r+   Zx_manualr(   r,   r   r   r   $test_weighted_median_integer_weights?   s    

r1   c                     s   t jd} | jddd}| jddd | jddd}t ||fjt } fddtj	d D }t
|| | jddd}t  |fjt}fd	dtj	d D }t
|| d S )
Nr   r    r"   r   r.   c                    s"   g | ]}t d d |f  qS Nr   .0i)w1x_2dr   r   
<listcomp>W       z/test_weighted_percentile_2d.<locals>.<listcomp>r   c                    s.   g | ]&}t d d |f  d d |f qS r2   r   r3   )w_2dr7   r   r   r8   _   s   )r   r$   r%   r&   r/   ZvstackTr   ranger'   r   )r)   x1Zx2r,   Zp_axis_0Zw2r   )r6   r:   r7   r   test_weighted_percentile_2dM   s    


r>   )numpyr   Znumpy.testingr   Zpytestr   Zsklearn.utils.statsr   r   r   r   r   r-   r1   r>   r   r   r   r   <module>   s   		