U
    ¾mœd‹  ã                
   @   sH  d dl Zd dlZd dlZd dlmZmZ d dlmZ	 d dl
mZ ejdd dgddgd�d	d
„ ƒZejdejdejd�gd�dd„ ƒZdd„ eejejfD ƒZe dd„ eejfD ƒ¡ e dd„ ejejejfD ƒ¡ e ejdejd�g¡ e d ddg¡ ejed�dd„ ƒZejeejddd�ƒeejddd�ƒeejddd�ƒedƒgdd„ d�dd „ ƒZeje d!¡ ¡ e d!¡e d!¡ ¡ gd"d„ d�d#d$„ ƒZejej d%¡ej d&¡ejd%d'� ¡ e d(¡e  d%d)¡e  d&d*¡gd+d„ d�d,d-„ ƒZ!ejej d.¡ej "d/¡ejd.d0� ¡ ejd1d2�e  d.d*¡e  d/d3¡gd4d„ d�d5d6„ ƒZ#ej $d.¡ej %d¡ej "¡ gZ&ejejd7d8� ¡ e  d7d9¡ejd7d2�ge& d�d:d;„ ƒZ'eje  d<d*¡ejd=d0� ¡ e d>¡ge& d�d?d@„ ƒZ(eje  dAd)¡ejdAd'� ¡ ejdAd'�ge& d�dBdC„ ƒZ)ejeej*e	j+eje,gdDd„ d�dEdF„ ƒZ-dS )Gé    N)ÚIndexÚ
RangeIndex)ÚexpressionsTi@B ZnumexprÚpython)ZautouseÚparamsÚidsc                 c   s    t j}| jt _| jV  |t _d S ©N)ÚexprÚ_MIN_ELEMENTSÚparam)Úrequestr
   © r   úY/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pandas/tests/arithmetic/conftest.pyÚswitch_numexpr_min_elements   s    r   é   ©Údtype)r   c                 C   s   | j S )a@  
    Several variants of integer value 1. The zero-dim integer array
    behaves like an integer.

    This fixture can be used to check that datetimelike indexes handle
    addition and subtraction of integers and zero-dimensional arrays
    of integers.

    Examples
    --------
    dti = pd.date_range('2016-01-01', periods=2, freq='H')
    dti
    DatetimeIndex(['2016-01-01 00:00:00', '2016-01-01 01:00:00'],
    dtype='datetime64[ns]', freq='H')
    dti + one
    DatetimeIndex(['2016-01-01 01:00:00', '2016-01-01 02:00:00'],
    dtype='datetime64[ns]', freq='H')
    ©r   ©r   r   r   r   Úone   s    r   c                 C   s4   g | ],}t jt jt jfD ]}|d gd |d�‘qqS )r   é   r   )ÚnpÚint64Úuint64Úfloat64)Ú.0Úbox_clsr   r   r   r   Ú
<listcomp>2   s    þr   c                 C   s    g | ]}|d gd t jd�‘qS )ç       €r   r   )r   r   )r   r   r   r   r   r   7   s     c                 C   s   g | ]}t jd |d�‘qS )r   r   )r   Úarray)r   r   r   r   r   r   8   s     r   g        c                 C   s   | j S )a´  
    Several types of scalar zeros and length 5 vectors of zeros.

    This fixture can be used to check that numeric-dtype indexes handle
    division by any zero numeric-dtype.

    Uses vector of length 5 for broadcasting with `numeric_idx` fixture,
    which creates numeric-dtype vectors also of length 5.

    Examples
    --------
    arr = RangeIndex(5)
    arr / zeros
    Index([nan, inf, inf, inf, inf], dtype='float64')
    r   r   r   r   r   Úzero@   s    r    r   r   r   r   c                 C   s
   t | ƒjS r   ©ÚtypeÚ__name__©Úxr   r   r   Ú<lambda>`   ó    r&   )r   r   c                 C   s   | j S )z7
    Several types of numeric-dtypes Index objects
    r   r   r   r   r   Únumeric_idxX   s    r(   Z10m7sc                 C   s
   t | ƒjS r   r!   r$   r   r   r   r&   s   r'   c                 C   s   | j S )zV
    Several variants of Timedelta scalars representing 10 minutes and 7 seconds.
    r   r   r   r   r   Ú	scalar_tdm   s    r)   é   éH   )Údaysz72:00:00ÚDÚhc                 C   s
   t | ƒjS r   r!   r$   r   r   r   r&   …   r'   c                 C   s   | j S )za
    Several timedelta-like and DateOffset objects that each represent
    a 3-day timedelta
    r   r   r   r   r   Ú
three_days|   s    r/   é   éx   )Úhoursi   )ÚsecondsÚmc                 C   s
   t | ƒjS r   r!   r$   r   r   r   r&   ˜   r'   c                 C   s   | j S )zb
    Several timedelta-like and DateOffset objects that each represent
    a 2-hour timedelta
    r   r   r   r   r   Ú	two_hours�   s    r5   é   )ÚminutesÚsc                 C   s   | j S )zp
    Several timedelta-like and DateOffset instances that are _not_
    compatible with Hourly frequencies.
    r   r   r   r   r   Ú
not_hourly©   s    r9   é   é   z23:00:00c                 C   s   | j S )zo
    Several timedelta-like and DateOffset instances that are _not_
    compatible with Daily frequencies.
    r   r   r   r   r   Ú	not_daily¹   s    r<   im  c                 C   s   | j S )z{
    Several timedelta-like and DateOffset instances that are _not_
    compatible with Monthly or Annual frequencies.
    r   r   r   r   r   Úmismatched_freqÉ   s    r=   c                 C   s   | j S r   )r#   r$   r   r   r   r&   Ý   r'   c                 C   s   | j S )zc
    Fixture to test behavior for Index, Series, tm.to_array, numpy Array and list
    classes
    r   r   r   r   r   Úbox_1d_arrayÜ   s    r>   ).Únumpyr   ZpytestZpandasÚpdr   r   Zpandas._testingZ_testingÚtmZpandas.core.computationr   r	   Zfixturer   r   r   r   ZzerosÚextendr   r   r    Zaranger(   Z	TimedeltaZto_pytimedeltaZto_timedelta64r)   ÚoffsetsZDayZHourZtimedelta64r/   ZMinuter5   Z	YearBeginZ
MonthBeginZ_common_mismatchr9   r<   r=   ZSeriesZto_arrayÚlistr>   r   r   r   r   Ú<module>   sº   

þ 

ûø

ýú




ú÷





ú÷
	

ý

ýûÿ

ýûÿ


ýûÿ
 ÿ