o
    g                  
   @   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   h/home/ubuntu/cloudmapper/venv/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   sR   t j| dd}d}tjt|d tj| W d    d S 1 s"w   Y  d S )Nr   r   z%The 'reduce' method is not supported.)match)r
   r   pytestraisesNotImplementedErrorr   addreduce)r'   r   msgr   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_methodL   s   "

rB   c                  C   s   t jdddt jgdd} | jdd}t jg dddt jgdd	}t|| | jd
d}t jddgddgdd	}t|| d S )Nr6   r   r   r   F)dropna)r   r   r   Int64indexr	   Tr   r   )r
   r   NAvalue_countsr   r   r   )r%   r   r   r   r   r   test_value_counts_naa   s   rI   c                  C   sD   t jg dd} |  }t jg dd}t jg |dd}t|| d S )Nr   r   objectrD   rE   )r
   r   rH   Indexr   r   )r   r   idxr   r   r   r   test_value_counts_emptyl   s
   rM   c                  C   sP   t jdddt jgdd} | jdd}t jddgddgdd	d
 }t|| d S )Nr6   r   r   r   T)	normalizer   r   rE   r#   )r
   r   rG   rH   r   r   )r   r   r   r   r   r    test_value_counts_with_normalizet   s   rO   skipnaTF	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   rP   rQ   r         @)r
   r   sumrG   rP   rQ   r	   r%   r   r   r   r   test_floating_array_sum{   
   rX   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   rV   )r'   r   r%   r   r   r   r   test_floating_array_numpy_sum   s   
r[   op)rV   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Cra   r   r   r6   r#   )rb   rc   r   r`   )name)rF   )r
   	DataFramer   r=   rc   
isinstancer   r<   groupbyrK   r   assert_frame_equal)r\   dfr   r   r   r   r   test_preserve_dtypes   s   	 rj   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)rZ   r   Nr   )rP   r]   r   r   )r
   r   r=   rG   )rP   rk   r	   r%   funcr   r   r   r   test_floating_array_min_max   s   

rm   	   c                 C   rR   )N)r   g       @Nr   rT   r   r   )r
   r   r_   rG   rW   r   r   r   test_floating_array_prod   rY   ro   )$numpyr   r)   pandas.compatr   pandasr
   pandas._testing_testingr   markparametrizeabssignfilterwarningsr   logexpsincossqrtr"   r,   subtractr&   r/   skipifrB   rI   rM   rO   rX   r[   rj   rm   ro   r   r   r   r   <module>   sV    
 






	 


