o
    5c{                  
   @   s  d dl Zd dlZd dlmZ d dlZd dlmZ	 ej
dejejgej
ddd Zej
dejejejejejgdd Zej
dejejgd	d
 Zej
dd dgd dggdd Zej
je ddej
dddd ifdddifdi fdi fdi fgdd Zdd Zdd Zdd Zej
dd d!gej
d"d d#gd$d% Zej
d&g d'd(fg d)d(fdgd*fgd+d, Z ej
d-g d.d/d0 Z!ej
dd d!gej
d1d2d3gd4d5 Z"ej
dd d!gej
d"d d6gd7d8 Z#dS )9    N)IS64ufuncz(ignore:invalid value encountered in signc                 C   sp   t jdddtjgdd}| |}t j| |tdd}t|| t |}| |}t |}t	|| d S )N      Float64dtype)
pdarraynpnanastypefloattmassert_extension_array_equalSeriesassert_series_equalr   aresultexpecteds r   `/var/www/html/gps/gps/lib/python3.10/site-packages/pandas/tests/arrays/floating/test_function.pytest_ufuncs_single
   s   

r   c                 C   s   t jdddtjgdd}tjdd | |}t j| |tdd}W d    n1 s-w   Y  t|| t 	|}tjdd | |}t j	| |tdd}W d    n1 s^w   Y  t
|| d S )N      ?皙?      @r   r   ignore)invalid)r
   r   r   r   errstater   r   r   r   r   r   r   r   r   r   test_ufuncs_single_float   s   
r"   c                 C   s   t jdddtjgdd}| ||}t j| |t|tdd}t|| tg d}| ||}t j| |t|dd}t|| | ||}t j| ||tdd}t|| | |d}t j| |tddd}t|| | d|}t j| d|tdd}t|| d S )Nr   r   r   r   r   )r   r         )r
   r   r   r   r   r   r   r   )r   r   r   r   arrr   r   r   test_ufuncs_binary_float(   s"   
 



r&   valuesr   c                 C   s6   t j| dd}tj|}|jdd}t|| d S )Nr   r   Fskipna)r
   r   r   addreducesumr   assert_almost_equal)r'   r%   resr   r   r   r   test_ufunc_reduce_raisesD   s   r/   zGH 36579: fail on 32-bit system)reasonzpandasmethname, kwargsvarddofkurtosisskewsemc              	   C   st   t jddddddtjtjgdd}t|| }|di |}t jg d	d
d}t|| }|di |}||ks8J d S )N皙?r   333333?皙?      ?333333?r   )datar	   )r6   r   r7   r8   r9   r:   float64r   )r
   r   r   r   getattr)pandasmethnamekwargsr   
pandasmethr   s2r   r   r   r   test_stat_methodM   s   "

rB   c                  C   s   t jdddt jgdd} | jdd}t jddt jg| jd}|j| jks&J t jg d|dd	}t|| | jd
d}t jddg|d d dd	}t|| d S )Nr6   r   r   r   F)dropna)r   r   r   Int64indexr	   Tr   r   )	r
   r   NAvalue_countsIndexr	   r   r   r   )r%   r   idxr   r   r   r   test_value_counts_nab   s   rL   c                  C   sR   t jg dd} |  }t jg dd}|jdksJ t jg |dd}t|| d S )Nr   r   rD   rE   )r
   r   rI   rJ   r	   r   r   )serr   rK   r   r   r   r   test_value_counts_emptyo   s   rN   c                  C   sf   t jdddt jgdd} | jdd}t jddg| d d dd	d
 }|jj| jks+J t|| d S )Nr6   r   r   r   T)	normalizer   r   rE   r#   )r
   r   rH   rI   rF   r	   r   r   )rM   r   r   r   r   r    test_value_counts_with_normalizex   s
    rP   r)   TF	min_countr$   c                 C   N   t jg d|d}|j| |d}| r|dkr|dksJ d S |t ju s%J d S )Nr   r   r#   Nr   r)   rQ   r         @)r
   r   r,   rH   r)   rQ   r	   r%   r   r   r   r   test_floating_array_sum   
   rW   zvalues, expected)r   r   r#   rU   rS           c                 C   s(   t j| dd}t|}||ksJ d S )Nr   r   )r
   r   r   r,   )r'   r   r%   r   r   r   r   test_floating_array_numpy_sum   s   
rZ   op)r,   minmaxprodc                 C   s   t g dg dt jg dddd}t|j|  }t|tjs#J t|d|  }t jtdd	gt jd
dgdddt j	ddgddd}t
|| d S )N)r   br_   )r   Nr#   )r6   Nr   r   r   )ABCr`   r   r   r6   r#   )ra   rb   r   r_   )name)rF   )r
   	DataFramer   r=   rb   
isinstancer   r<   groupbyrJ   r   assert_frame_equal)r[   dfr   r   r   r   r   test_preserve_dtypes   s   	 ri   methodr\   r]   c                 C   sX   t jg d|d}t||}|| d}| r#||dkrdndks!J d S |t ju s*J d S )N)rY   r   Nr   r(   r\   r   r   )r
   r   r=   rH   )r)   rj   r	   r%   funcr   r   r   r   test_floating_array_min_max   s   

rl   	   c                 C   rR   )N)r   g       @Nr   rT   r   r   )r
   r   r^   rH   rV   r   r   r   test_floating_array_prod   rX   rn   )$numpyr   pytestpandas.compatr   pandasr
   pandas._testing_testingr   markparametrizeabssignfilterwarningsr   logexpsincossqrtr"   r*   subtractr&   r/   skipifrB   rL   rN   rP   rW   rZ   ri   rl   rn   r   r   r   r   <module>   sV    
 






		 


