U
    sVc)                     @   s  d dl m Z  d dlZd dlZd dlZd dlmZ d dlZd dlm	Z	m
Z
mZmZmZ d dlmZ d dlmZ dd Zdd	 Zd
d Zejdddedgfeddddfgdd Zdd Zejdejejgdd Zdd Zdd Zdd Zejddd d!d"gd#d$ Z d%d& Z!d'd( Z"d)d* Z#d+d, Z$d-d. Z%d/d0 Z&d1d2 Z'd3d4 Z(ejd5d dgd6d7 Z)ejd5d dgd8d9 Z*d:d; Z+ejd5d dgd<d= Z,d>d? Z-d@dA Z.dBdC Z/ejdDdEdFgejjddGdH dIdH gdJdKgdLejdMdNdOgejd5d dgdPdQ Z0dRdS Z1dTdU Z2dVdW Z3dXdY Z4dZd[ Z5d\d] Z6d^d_ Z7d`da Z8dbdc Z9ddde Z:dfdg Z;dhdi Z<djdk Z=dldm Z>dndo Z?ejdpe	dqdrgdsdtggedqdsdudrdtdugge	d dgdvdwgged dvduddwdugggdxdy Z@dzd{ ZAejd|dd}gd~d ZBdd ZCejddedgdeDdggdd ZEejde	 e	eFdde	eFdde	g g g dgejdeGddH gdd ZHdd ZIdd ZJdd ZKdd ZLdd ZMdd ZNdd ZOdd ZPejdddgdd ZQdd ZRdd ZSdd ZTdd ZUdd ZVejd|dddejWgdd ZXdd ZYdd ZZdd Z[dd Z\dd Z]dd Z^dd Z_ddÄ Z`ejd|ddvgddń ZaddǄ Zbejdddvdwgddvggddʄ Zcdd̄ Zddd΄ ZeddЄ Zfdd҄ ZgddԄ Zhddք Zidd؄ ZjejjdddH ddH ddH gdddgdLdd Zkdd Zldd Zmdd Zndd Zodd Zpdd Zqdd Zrejddddgdd Zsejdddgdd Ztejdddgdd Zudd Zvejd5d dgejddi fdi fdi fdd dvifdddvdfddvddfdddvdwdfgdd Zwejddvdwdgdd	 Zxd
d Zyejde	ddgddgdgejddddgdd Zzejddd}dNdej{gdd Z|dd Z}dd Z~dd Zdd Zd d! Zd"d# Zd$d% Zd&d' Zd(d) Zejd*ddvdwgdddgdddvdwgdgdfdvdvdvgdddgddvgdgdfgd+d, Zd-d. Zd/d0 ZdS (1      datetimeN)CategoricalDtype)	DataFrame
MultiIndexSeries	Timestamp
date_range)
zip_framesc              	   C   s   t jdd t | d }| t jd }t|| | t jd }t | d }||ksbt| jd }| jt jdd}t | 	|}|| |kst|j| jkstW 5 Q R X d S )NignoreallAr      axis)
nperrstatesqrtapplytmassert_series_equalmeanAssertionErrorindexxs)float_frameresultexpectedd r    G/tmp/pip-unpacked-wheel-xj8nt62q/pandas/tests/apply/test_frame_apply.py
test_apply   s    
r"   c                  C   sf   t ddddgddddgd} | dd }|jdks:tt|d	 jtsNtt|d
 jtsbtd S )Nr   BCDc0c1c                 S   s
   |  dS )NcategoryZastype)tsr    r    r!   <lambda>+       z-test_apply_categorical_func.<locals>.<lambda>)      r'   r(   )r   r   shaper   
isinstancedtyper   dfr   r    r    r!   test_apply_categorical_func(   s
    r5   c                  C   s8   t dtdddgi} | jdd dd}t||  d S )	Nr   
2013-01-01UTCtzc                 S   s   | S Nr    xr    r    r!   r,   5   r-   z*test_apply_axis1_with_ea.<locals>.<lambda>r   r   r   r   r   r   assert_frame_equalr   r   r    r    r!   test_apply_axis1_with_ea2   s    r@   zdata, dtyper   Nr   r6   r7   r8   c                 C   s<   t | g| ggddg|d}|jdd dd}t|| d S )Nar   r2   c                 S   s   | S r:   r    r;   r    r    r!   r,   @   r-   z0test_agg_axis1_duplicate_index.<locals>.<lambda>r   r   r   aggr   r>   )datar2   r   r   r    r    r!   test_agg_axis1_duplicate_index9   s    rG   c                  C   sH   t tdddtjtdddd} | jdd d	d
}t||  d S )N20130101   periodss)unitr   r#   c                 S   s   | S r:   r    r;   r    r    r!   r,   M   r-   z/test_apply_mixed_datetimelike.<locals>.<lambda>r   r   )	r   r	   pdZto_timedeltar   Zaranger   r   r>   r?   r    r    r!   test_apply_mixed_datetimelikeD   s    
rP   funcc                 C   s   t  }|| }|jstd S r:   )r   r   emptyr   )rQ   empty_framer   r    r    r!   test_apply_emptyQ   s    
rT   c                 C   sz   | d d }| dd }ttj| jd}t|| | jd d g f }|j dd dd}ttj| jd}t|| d S )Nr   c                 S   s   |   S r:   r   r;   r    r    r!   r,   \   r-   z(test_apply_float_frame.<locals>.<lambda>r   c                 S   s   |   S r:   rU   r;   r    r    r!   r,   a   r-   r   r   )	r   r   r   nancolumnsr   r   locr   )r   Zno_rowsr   r   no_colsr    r    r!   test_apply_float_frameZ   s    r[   c                  C   s.   t dgd} | jdd dd}t||  d S )NrB   rV   c                 S   s   | d S )NrB   r    r;   r    r    r!   r,   i   r-   z/test_apply_empty_except_index.<locals>.<lambda>r   r   r   r   r   r>   r?   r    r    r!   test_apply_empty_except_indexf   s    r]   c                  C   s   t  } g }| j|jddd}t||  | j|jddd}tg tjg tdt	j
d}t|| t ddd	gd
}|j|jddd}t|| |j|jddd}tg tjg tdt	j
d}t|| |g kstd S )Nr   expandr   result_typereducer2   rC   rB   bcrX   )r   r   appendr   r>   r   rO   Indexobjectr   float64r   r   )rS   r<   r   r   Zempty_with_colsr    r    r!   test_apply_with_reduce_emptym   s    rj   sumprodanyr   c                 C   s<   t dddgd}|tt| }t||  }t|| d S )NrB   rc   rd   re   )r   r   getattrr   r   r   )rQ   r4   r   r   r    r    r!   test_apply_funcs_over_empty   s    ro   c                  C   sb   t dddgd} |  }td| jd}t|| | j }tg tg t	j
d}t|| d S )NrB   rc   rd   re   r   rV   rC   )r   Znuniquer   rX   r   r   TrO   rg   r   ri   r4   r   r   r    r    r!   test_nunique_empty   s    
rr   c                  C   s   t dddgdddgddd	ggd
d
dgd} | jdd dd}tdddgd
d
dg}t|| | jjdd dd}t|| d S )Nr   r/   rI   r.               	   rB   rd   rV   c                 S   s   | d S Nr   r    rL   r    r    r!   r,      r-   z/test_apply_standard_nonunique.<locals>.<lambda>r   c                 S   s   | d S rx   r    ry   r    r    r!   r,      r-   r   )r   r   r   r   r   rp   rq   r    r    r!   test_apply_standard_nonunique   s    *rz   c                 C   s4   | j tjdd}t|  g| jd}t|| d S )N	broadcastr`   rV   )r   r   r   r   r   r   r>   r   r   r   r    r    r!   test_apply_broadcast_scalars   s    r~   c                    sF   | j tjddd}| jdd t fdd| jD }t|| d S )Nr   r{   r_   r   c                    s   i | ]
}| qS r    r    .0rd   mr    r!   
<dictcomp>   s      z6test_apply_broadcast_scalars_axis1.<locals>.<dictcomp>)r   r   r   r   rX   r   r>   r}   r    r   r!   "test_apply_broadcast_scalars_axis1   s    r   c                    sZ    j  fddddd}ttt j}t|gt j d j jd}t|| d S )Nc                    s   t tt jS r:   )listrangelenrX   r;   r   r    r!   r,      r-   z4test_apply_broadcast_lists_columns.<locals>.<lambda>r   r{   r_   ri   )r2   r   rX   )	r   r   r   r   rX   r   r   r   r>   )r   r   r   r   r    r   r!   "test_apply_broadcast_lists_columns   s    
r   c                    sX    j  fdddd}ttt jtfdd jD d jd}t|| d S )	Nc                    s   t tt jS r:   )r   r   r   r   r;   r   r    r!   r,      r-   z2test_apply_broadcast_lists_index.<locals>.<lambda>r{   r|   c                    s   i | ]
}| qS r    r    r   r   r    r!   r      s      z4test_apply_broadcast_lists_index.<locals>.<dictcomp>ri   )r2   r   )	r   r   r   r   r   r   rX   r   r>   r}   r    )r   r   r!    test_apply_broadcast_lists_index   s    
 r   c                 C   s(   | }|j dd ddd}t|| d S )Nc                 S   s
   dddgS Nr   r/   rI   r    r;   r    r    r!   r,      r-   z7test_apply_broadcast_list_lambda_func.<locals>.<lambda>r   r{   r_   r   r   r>   )int_frame_const_colr4   r   r    r    r!   %test_apply_broadcast_list_lambda_func   s    r   c                 C   s0   | }|j dd ddd}| }t|| d S )Nc                 S   s   t dddgtddS )Nr   r/   rI   abcrV   )r   r   r;   r    r    r!   r,      r-   z9test_apply_broadcast_series_lambda_func.<locals>.<lambda>r   r{   r_   r   copyr   r>   r   r4   r   r   r    r    r!   'test_apply_broadcast_series_lambda_func   s    r   r   c                 C   s   dd }| j ||dd d S )Nc                 S   s"   t | tjst| jdkstd S Nr   r1   r   ndarrayr   ndimr;   r    r    r!   _assert_raw   s    z/test_apply_raw_float_frame.<locals>._assert_rawTr   rawr   )r   r   r   r    r    r!   test_apply_raw_float_frame   s    r   c                 C   s4   | j tj|dd}| j dd |d}t|| d S )NTr   c                 S   s
   | j  S r:   )valuesr   r;   r    r    r!   r,      r-   z3test_apply_raw_float_frame_lambda.<locals>.<lambda>r   )r   r   r   r   r   )r   r   r   r   r    r    r!   !test_apply_raw_float_frame_lambda   s    r   c                 C   s*   | j dd dd}| d }t|| d S )Nc                 S   s   | d S Nr/   r    r;   r    r    r!   r,      r-   z9test_apply_raw_float_frame_no_reduction.<locals>.<lambda>T)r   r/   r   r}   r    r    r!   'test_apply_raw_float_frame_no_reduction   s    r   c                 C   s   dd }| j ||dd d S )Nc                 S   s"   t | tjst| jdkstd S r   r   r;   r    r    r!   r      s    z4test_apply_raw_mixed_type_frame.<locals>._assert_rawTr   r   )Zmixed_type_framer   r   r    r    r!   test_apply_raw_mixed_type_frame   s    r   c                 C   s>   | j d }| jtjdd| }t| |}||ks:td S )Nr   r   r   )r   r   r   r   r   r   )r   r   r   r   r    r    r!   test_apply_axis1  s    
r   c                  C   sR   t dgdgd} | d d jtjdd}ttjtjg ddd	}t	|| d S )
Nfoo      ?rN   r   r   r   int64rb   rV   )
r   r   r   r   r   rW   rO   rg   r   r   rq   r    r    r!   test_apply_mixed_dtype_corner  s    r   c                  C   sr   t dgdgd} | jdd dd}tdgdgd	}t|| | jd
d dd}tdgdgd	}t|| d S )Nr   r   rN   c                 S   s   | d S )Nr   r    r;   r    r    r!   r,     r-   z8test_apply_mixed_dtype_corner_indexing.<locals>.<lambda>r   r   r   rV   c                 S   s   | d S )Nr#   r    r;   r    r    r!   r,     r-   r   r   r   r   r   rq   r    r    r!   &test_apply_mixed_dtype_corner_indexing  s    r   axr   rX   c                 C   s   | S r:   r    r;   r    r    r!   r,   !  r-   r,   c                 C   s   |   S r:   rU   r;   r    r    r!   r,   !  r-   identityr   )idsr   TFc           	   
   C   s   t f | dddgi}tjdd tjdd$ tdt |tjg dd	}W 5 Q R X t|tj	 }|j
|||d
}|r||}t|tst|j|kstnt|t stW 5 Q R X d S )NrB   rc   rd   r   r   T)recordZf8rb   r   )r   r   r   warningscatch_warningssimplefilterRuntimeWarningarrayr1   r   r   Z_get_agg_axisr   r   r   )	r   rQ   r   r   r4   Ztest_resZis_reductionr   Zagg_axisr    r    r!   test_apply_empty_infer_type  s    
r   c                  C   s4   t dddgd} | jdd dd}t|t s0td S )	NrB   rc   rd   rV   c                 S   s   |   S r:   rU   r;   r    r    r!   r,   9  r-   z7test_apply_empty_infer_type_broadcast.<locals>.<lambda>r{   r|   )r   r   r1   r   )rZ   r   r    r    r!   %test_apply_empty_infer_type_broadcast7  s    r   c                 C   s6   ddd}| j |dd}|  dd }t|| d S )	Nr   c                 S   s   | | S r:   r    r<   howmuchr    r    r!   add_some>  s    z4test_apply_with_args_kwds_add_some.<locals>.add_somer/   r   c                 S   s   | d S r   r    r;   r    r    r!   r,   B  r-   z4test_apply_with_args_kwds_add_some.<locals>.<lambda>)r   r   )r   r   r   r   r    r    r!   "test_apply_with_args_kwds_add_some=  s    
r   c                 C   s6   ddd}| j |dd}|  dd }t|| d S )	Nr   c                 S   s   |   | S r:   rU   r   r    r    r!   agg_and_addG  s    z:test_apply_with_args_kwds_agg_and_add.<locals>.agg_and_addr/   r   c                 S   s   |   d S r   rU   r;   r    r    r!   r,   K  r-   z7test_apply_with_args_kwds_agg_and_add.<locals>.<lambda>)r   )r   r   r   )r   r   r   r   r    r    r!   %test_apply_with_args_kwds_agg_and_addF  s    
r   c                 C   s8   d	dd}| j |ddd}|  dd }t|| d S )
Nr   c                 S   s   | | | S r:   r    )r<   subdivider    r    r!   subtract_and_divideP  s    zJtest_apply_with_args_kwds_subtract_and_divide.<locals>.subtract_and_divide)r/   r/   )argsr   c                 S   s   | d d S )N       @r    r;   r    r    r!   r,   T  r-   z?test_apply_with_args_kwds_subtract_and_divide.<locals>.<lambda>)r   r   )r   r   r   r   r    r    r!   -test_apply_with_args_kwds_subtract_and_divideO  s    
r   c                 C   s   |  t}t||  d S r:   )r   r   r   r>   )r   r   r    r    r!   test_apply_yield_listX  s    
r   c                 C   s@   t j| d jd d d< | d}| jt jdd}t|| d S )Nr   r/   r   r   )r   rW   Zilocr   r   r   r   )r   r   r   r    r    r!   test_apply_reduce_Series]  s    
r   c                  C   s   t ddgddggddgddgd	} | jtd
d}tddddddg| jd}t|| | jtdd}tddddddg| jd}t|| d S )Nr   r/   rI   r.   r'   r(   i0i1rX   r   r   r   )r   r   rV   r&   )r   r   dictr   rX   r   r   r   )rF   r   r   r    r    r!   test_apply_reduce_to_dictd  s    "r   c                  C   s   t tjdd} | jtjdd}t dd |  D | jd}t	
|| | jtjdd}t d	d | j D | jdj}t	
|| d S )
N   
   r   r   c                 S   s   i | ]\}}||  qS r    describer   ivr    r    r!   r   u  s      z2test_apply_differently_indexed.<locals>.<dictcomp>re   r   c                 S   s   i | ]\}}||  qS r    r   r   r    r    r!   r   y  s      )r   r   randomrandnr   r   r   itemsrX   r   r>   rp   r   rq   r    r    r!   test_apply_differently_indexedq  s     r   c               
   C   s   t dddgdddgdddgdddgdd	dgdd
dggdddgd} dd }| j|dd}t tdddddgtdddddgtdddddgtdddddgtdddd	dgtdddd
dggdddgd} | j|dd}t|| d S )Nr   ZABC02   ZYUM0r   ZDEF0r/   ZABC1ZYUM1ZDEF1rB   marketpositionre   c                 S   s   | d S )Nr   r    )rr    r    r!   f  s    ztest_apply_bug.<locals>.fr   i  rI   r.   rs   rt   )r   r   r   r   r   )Z	positionsr   r   r   r    r    r!   test_apply_bug}  s0    r   c                  C   s   t dddddddddddgdddddddddddgdddddddddddgtjdtjdtjdd} | jd	d
 ddjdd}t||  d S )Nr   barZoneZtwoZdullZshiny   )r   r#   r$   r%   EFc                 S   s   | S r:   r    r;   r    r    r!   r,     r-   z,test_apply_convert_objects.<locals>.<lambda>r   r   Tr   )r   r   r   r   r   _convertr   r>   r?   r    r    r!   test_apply_convert_objects  sX    


/r   c                 C   s.   |  dd }t| j| jd}t|| d S )Nc                 S   s   | j S r:   namer;   r    r    r!   r,     r-   z(test_apply_attach_name.<locals>.<lambda>rV   )r   r   rX   r   r   r}   r    r    r!   test_apply_attach_name  s    r   c                 C   s2   | j dd dd}t| j| jd}t|| d S )Nc                 S   s   | j S r:   r   r;   r    r    r!   r,     r-   z.test_apply_attach_name_axis1.<locals>.<lambda>r   r   rV   )r   r   r   r   r   r}   r    r    r!   test_apply_attach_name_axis1  s    r   c                 C   sD   |  dd }tt| jt| jdf| j| jd}t|| d S )Nc                 S   s   t | jt| S r:   r   repeatr   r   r;   r    r    r!   r,     r-   z6test_apply_attach_name_non_reduction.<locals>.<lambda>r   r   rX   )	r   r   r   ZtilerX   r   r   r   r>   r}   r    r    r!   $test_apply_attach_name_non_reduction  s    r   c                    sD    j dd dd}t fdd  D } j|_t|| d S )Nc                 S   s   t | jt| S r:   r   r;   r    r    r!   r,     r-   z<test_apply_attach_name_non_reduction_axis1.<locals>.<lambda>r   r   c                 3   s$   | ]}t |d  t jV  qdS )r   N)r   r   r   rX   r   tr   r    r!   	<genexpr>  s    z=test_apply_attach_name_non_reduction_axis1.<locals>.<genexpr>)r   r   
itertuplesr   r   r   r}   r    r   r!   *test_apply_attach_name_non_reduction_axis1  s    r   c                  C   s   t dddgdddgg} tddgddgd	d
gg| ddgd}|dd d}tddgddgd	d
gg| ddgd}tj||dd d S )NrB   rc   rd   r   r   r/   rI   r.   rs   rt   col1col2r   c                 S   s   t t| t| dS )N)minmax)r   r   r   r;   r    r    r!   r,     r-   z(test_apply_multi_index.<locals>.<lambda>r   r   TZ
check_like)r   Zfrom_arraysr   r   r   r>   )r   rL   r   r   r    r    r!   test_apply_multi_index  s
    $$r   z	df, dictsr   r   Zspameggs)r   r   r/   rI   c                 C   sV   dd }| j |dd}| j |dd}|  |}t|| t||  t|| d S )Nc                 S   s   |   S r:   )Zto_dictr;   r    r    r!   r,     r-   z!test_apply_dict.<locals>.<lambda>ra   r|   r^   )r   r   r   r>   )r4   ZdictsfnZreduce_trueZreduce_falseZreduce_noner    r    r!   test_apply_dict  s    
r   c                 C   sP   |  dd }t|| d  |  t |  dd d d }t|tsLtd S )Nc                 S   s   | d S r   r    r;   r    r    r!   r,     r-   ztest_applymap.<locals>.<lambda>r/   c                 S   s   | | fS r:   r    r;   r    r    r!   r,     r-   r   r   )applymapr   r>   typer1   tupler   )r   Zappliedr   r    r    r!   test_applymap  s
    
r   valr   c                 C   s2   t | dgd}|dd jd }|tks.td S )NrB   )rF   c                 S   s   | S r:   r    r;   r    r    r!   r,      r-   z7test_applymap_float_object_conversion.<locals>.<lambda>r   )r   r   dtypesrh   r   )r   r4   r   r    r    r!   %test_applymap_float_object_conversion  s    r   c                  C   sT   t tjd} |  }ddddg}|| _|t}||_| t}t|| d S )NrI   r.   rB   )	r   r   r   r   rX   r   strr   r>   )r4   Zdf2colsr   r   r    r    r!   test_applymap_str$  s    

r   zcol, valr   rH   	timedeltaz1 minc                 C   sJ   t tjd}||| < |t}|jd| f t|jd| f ksFtd S )Nr   r   )r   r   r   r   r   rY   r   )colr   r4   r   r    r    r!   test_applymap_datetimelike1  s    
r  r   ABCre   rV   r   r#   r$   c                 C   s   | S r:   r    r;   r    r    r!   r,   F  r-   c                 C   s   |  |}t||  d S r:   )r   r   r>   )r   rQ   r   r    r    r!   test_applymap_empty=  s    
r  c                  C   sF   t ddgddggjdd dd} t ddgdd	gg}t| | d S )
Nr   r/   rI   r.   c                 S   s   | | S r:   r    r<   yr    r    r!   r,   O  r-   z&test_applymap_kwargs.<locals>.<lambda>r  rs   rt   )r   r   r   r>   )r   r   r    r    r!   test_applymap_kwargsM  s    "r	  c                 C   sj   |  dd }|  }tjjdd| jtd}tj||< |j dd dd}| }tj||< t	
|| d S )	Nc                 S   s   t t| S r:   r   r   r;   r    r    r!   r,   V  r-   z)test_applymap_na_ignore.<locals>.<lambda>r   r/   )sizer2   c                 S   s   t t| S r:   r
  r;   r    r    r!   r,   [  r-   r   )Z	na_action)r   r   r   r   randintr0   boolrO   ZNAr   r>   )r   Zstrlen_frameZfloat_frame_with_namaskZstrlen_frame_na_ignoreZstrlen_frame_with_nar    r    r!   test_applymap_na_ignoreT  s    
 
r  c                  C   s*   t tddd} dd }t| | d S )Nz1/1/2000r   rJ   c                 S   s   | j | j| jfS r:   )hourdaymonthr;   r    r    r!   rQ   f  s    z*test_applymap_box_timestamps.<locals>.func)r   r	   r   r   )ZserrQ   r    r    r!   test_applymap_box_timestampsb  s    r  c               	   C   s   t tdtdgtdddtdddgtdtdgtjdddtjdddgd	} | d
d }t ddgddgddgddgd	}t|| d S )Nz
2011-01-01z
2011-01-02z
US/Easternr8   z1 daysz2 daysM)freqrB   rc   rd   r   c                 S   s
   t | jS r:   )r   __name__r;   r    r    r!   r,   ~  r-   z#test_applymap_box.<locals>.<lambda>r   	TimedeltaPeriod)r   r   rO   r  r  r   r   r>   rq   r    r    r!   test_applymap_boxm  s(    

r  c                     s^   ddl m  tdtdddgi} |  fdd} |  fdd} | jj}|d	ksZtd S )
Nr   BDayx1i  r   c                    s
   |    S r:   r    r;   r  r    r!   r,     r-   z:test_frame_apply_dont_convert_datetime64.<locals>.<lambda>c                    s
   |    S r:   r    r;   r  r    r!   r,     r-   zM8[ns])Zpandas.tseries.offsetsr  r   r   r   r  r2   r   r3   r    r  r!   (test_frame_apply_dont_convert_datetime64  s    r  c                  C   sd   t dtddddi} | dd }t||  | dd }t dtd	dddi}t|| d S )
Ndtz
2015-01-01rI   zEurope/Brussels)rK   r9   c                 S   s   | S r:   r    r;   r    r    r!   r,     r-   z,test_apply_non_numpy_dtype.<locals>.<lambda>c                 S   s   | t d S )NZ1day)rO   r  r;   r    r    r!   r,     r-   z
2015-01-02)r   r	   r   r   r>   rq   r    r    r!   test_apply_non_numpy_dtype  s    r   c                  C   s6   t dddddgidd} | dd }t||  d S )	Nr  rB   rc   rd   r)   rb   c                 S   s   | S r:   r    r;   r    r    r!   r,     r-   z5test_apply_non_numpy_dtype_category.<locals>.<lambda>r\   r3   r    r    r!   #test_apply_non_numpy_dtype_category  s    r!  c                  C   sR   t ddgddggddgd} t ddggddgdgd}| dg}t|| d S )	Nr   r   r/   rI   rB   re   r   r   rD   r4   r   r   r    r    r!   test_apply_dup_names_multi_agg  s    r#  opr   rE   c                 C   sh   dd }t tdtdd}t|| |dd}tdddgdddgdddgdddgg}t|| d S )	Nc                 S   s"   d| d  d| d  d| d  gS )Nr/   r   r$   r#   r    rowr    r    r!   
apply_list  s    z3test_apply_nested_result_axis_1.<locals>.apply_list)r.   r.   ABCDre   r   r           )r   r   zerosr   rn   r   r   r   )r$  r'  r4   r   r   r    r    r!   test_apply_nested_result_axis_1  s    "r+  c                  C   sR   t dtdddgidd} | dd }t||  | d	d }t||  d S )
Nr   Z2020r7   r8   zdatetime64[ns, UTC]rb   c                 S   s   | S r:   r    r;   r    r    r!   r,     r-   z7test_apply_noreduction_tzaware_object.<locals>.<lambda>c                 S   s   |   S r:   )r   r;   r    r    r!   r,     r-   r=   r?   r    r    r!   %test_apply_noreduction_tzaware_object  s     r,  c                     sj   t ddddgi} g   fdd} fdd}||fD ].} d d = | j|dd	  t| jks6tq6d S )
NrB   r   r/   rI   c                    s     | j d S r:   rf   r   r%  namesr    r!   reducing_function  s    z8test_apply_function_runs_once.<locals>.reducing_functionc                    s     | j | S r:   r-  r%  r.  r    r!   non_reducing_function  s    z<test_apply_function_runs_once.<locals>.non_reducing_functionr   )r   r   r   r   r   r4   r0  r1  rQ   r    r.  r!   test_apply_function_runs_once  s    
r3  c                     sp   t ddddgi} g   fdd} fdd}||fD ]4} d d = | j|d	dd
  t| j ks6tq6d S )NrB   r   r/   rI   c                    s     |  d S r:   extendr%  r   r    r!   r0    s    z<test_apply_raw_function_runs_once.<locals>.reducing_functionc                    s     |  | S r:   r4  r%  r6  r    r!   r1    s    
z@test_apply_raw_function_runs_once.<locals>.non_reducing_functionT)r   r   )r   r   r   rB   to_listr   r2  r    r6  r!   !test_apply_raw_function_runs_once  s    
r8  c                     sf   t ddddgi} g   fdd} fdd}||fD ]*} d d = | |  | j ks6tq6d S )	NrB   r   r/   rI   c                    s     |  d S r:   rf   r   r6  r    r!   r0    s    z;test_applymap_function_runs_once.<locals>.reducing_functionc                    s     |  | S r:   r9  r:  r6  r    r!   r1    s    
z?test_applymap_function_runs_once.<locals>.non_reducing_function)r   r   rB   r7  r   r2  r    r6  r!    test_applymap_function_runs_once  s    

r;  c                  C   sP   t tddgdgd} t tddgdgtd}| dd }t|| d S )Ns   abcds   efghr  re   )rX   r2   c                 S   s
   |  dS )Nrh   r*   r;   r    r    r!   r,     r-   z-test_apply_with_byte_string.<locals>.<lambda>)r   r   r   rh   r   r   r>   r"  r    r    r!   test_apply_with_byte_string  s    r<  asd   c                    s`   dd dddt jg}td|idd}|j fdd}t fd	d
|D dd}t|| d S )Nr=  r>  ZcderB   r)   rb   c                    s   |  kS r:   r    r;   r:  r    r!   r,     r-   z/test_apply_category_equalness.<locals>.<lambda>c                    s$   g | ]}t |rtjn| kqS r    )rO   Zisnullr   NaN)r   r<   r:  r    r!   
<listcomp>  s     z1test_apply_category_equalness.<locals>.<listcomp>r   )r   r?  r   rB   r   r   r   r   )r   Z	df_valuesr4   r   r   r    r:  r!   test_apply_category_equalness  s     rA  c                  C   sV   t tjdd} | jtjjddj}|dks2t| jtjjddj}|dksRtd S )Nr   r/   r   r   )r   r/   )rt   r/   )	r   r   r   Zrandr   Zfftr0   r   Zrfftr3   r    r    r!   test_infer_row_shape"  s
    rB  c                  C   s   t ddgddggddgd} | jdd dd}td	d
 |  D }t|| tdtdg| d< | jdd dd}t|| | d | d  dd }tddiddig}t|| d S )Nr   r/   rB   rc   re   c                 S   s   d| d | d  iS NrL   rB   rc   r    r;   r    r    r!   r,   0  r-   z,test_with_dictlike_columns.<locals>.<lambda>r   c                 S   s   g | ]}d diqS )rL   rI   r    r   r    r    r!   r@  1  s     z.test_with_dictlike_columns.<locals>.<listcomp>2017-05-01 00:00:002017-05-02 00:00:00r   c                 S   s   d| d | d  iS rC  r    r;   r    r    r!   r,   8  r-   c                 S   s   d| iS )NrL   r    r;   r    r    r!   r,   <  r-   rL   rI   )r   r   r   r   r   r   r   rq   r    r    r!   test_with_dictlike_columns-  s    rF  c                  C   sf   t  } dddg| d< dddg| d< td	d
dg| d< | jdd dd}ti i i g}t|| d S )NXYZauthorZBBCZNBCZN24Z	publisherz17-10-2010 07:15:30z13-05-2011 08:20:35z15-01-2013 09:09:09datec                 S   s   i S r:   r    r;   r    r    r!   r,   I  r-   z:test_with_dictlike_columns_with_datetime.<locals>.<lambda>r   r   )r   rO   Zto_datetimer   r   r   r   rq   r    r    r!   (test_with_dictlike_columns_with_datetimeA  s    rL  c                  C   s   t ddgddggddgd} | jdd ddd	}t d
ddgi}t|| tdtdg| d< | jdd ddd	}t|| d S )Nr   r/   rB   rc   re   c                 S   s   d| d | d  iS rC  r    r;   r    r    r!   r,   Q  r-   z7test_with_dictlike_columns_with_infer.<locals>.<lambda>r^   r_   rL   rI   rD  rE  r   c                 S   s   d| d | d  iS rC  r    r;   r    r    r!   r,   Y  r-   )r   r   r   r>   r   rq   r    r    r!   %test_with_dictlike_columns_with_inferN  s    rM  c                  C   s   t ttjdddddgtddddd	} | dd
g jtdd}tdd | dd
g  D }t	
|| | ddg jtdd}tdd | ddg  D }t	
|| d S )Nr.   rB   r   Zofwordsz
2016-10-01H)rK   r  )rB   rc   r+   rc   r   r   c                 S   s   g | ]}|d d qS rA   r    r   r    r    r!   r@  h  s     z.test_with_listlike_columns.<locals>.<listcomp>r+   c                 S   s   g | ]}|d d qS rA   r    r   r    r    r!   r@  l  s     )r   r   r   r   r   r	   r   r   r   r   r   rq   r    r    r!   test_with_listlike_columns]  s    
rP  c                  C   sp   t tddgdggtdgddggd} tddg| _| jd	d
 dd}tg dgg| jd}t|| d S )NrB   rc   qzr   r  )r   Zj0)r   Zj1c                    s    fdd d D S )Nc                    s   g | ]}| d  kr|qS r  r    )r   elr%  r    r!   r@  u  s      zOtest_with_listlike_columns_returning_list.<locals>.<lambda>.<locals>.<listcomp>r<   r    r%  r    r%  r!   r,   u  r-   z;test_with_listlike_columns_returning_list.<locals>.<lambda>r   r   rV   )r   r   r   from_tuplesr   r   r   r   rq   r    r    r!   )test_with_listlike_columns_returning_listp  s
    *rU  c                  C   s\   t ddgddgtdtdgd} | jdd	 d
d}tdd |  D }t|| d S )Nr   r   r   r   z2017-11-29 03:30:00z2017-11-29 03:45:00)numberstringr   c                 S   s   | j | jfS r:   rV  rW  r%  r    r    r!   r,     r-   z1test_infer_output_shape_columns.<locals>.<lambda>r   r   c                 S   s   g | ]}|j |jfqS r    rX  r   r    r    r!   r@    s     z3test_infer_output_shape_columns.<locals>.<listcomp>r   r   r   r   r   r   r   rq   r    r    r!   test_infer_output_shape_columnsz  s    
rZ  c                  C   s   t tjdddddgd} | jdd d	d
}tdd |  D }t|| | jdd d	d
}tdd |  D }t|| d S )Nrt   rI   r   r#   r$   re   c                 S   s
   dddgS r   r    r;   r    r    r!   r,     r-   z:test_infer_output_shape_listlike_columns.<locals>.<lambda>r   r   c                 S   s   g | ]}d ddgqS r   r/   rI   r    r   r    r    r!   r@    s     z<test_infer_output_shape_listlike_columns.<locals>.<listcomp>c                 S   s   ddgS Nr   r/   r    r;   r    r    r!   r,     r-   c                 S   s   g | ]}d dgqS r   r/   r    r   r    r    r!   r@    s     	r   r   r   r   r   r   r   r   r   rq   r    r    r!   (test_infer_output_shape_listlike_columns  s    r_  c                    s`   t ddddgitdd}|j fdddd	}t fd
d| D |jd}t|| d S )NrB   r   r/   rI   r   rV   c                    s
   t  S r:   r   Zonesr%  r:  r    r!   r,     r-   zBtest_infer_output_shape_listlike_columns_np_func.<locals>.<lambda>r   c                    s   g | ]}t  qS r    r`  r   r:  r    r!   r@    s     zDtest_infer_output_shape_listlike_columns_np_func.<locals>.<listcomp>)r   r   r   r   r   r   r   r   )r   r4   r   r   r    r:  r!   0test_infer_output_shape_listlike_columns_np_func  s     ra  c                  C   s~   t tdtdtdtdgddddgdddd	gd
d	ddgd} dd }| j|d
d}tdd |  D }t|| d S )Nz
2010-02-01z
2010-02-04z
2010-02-05z
2010-02-06rw   rs   r.   rI   r/   r   r  c                 S   s   dS )Nr]  r    r;   r    r    r!   fun  s    zDtest_infer_output_shape_listlike_columns_with_timestamp.<locals>.funr   c                 S   s   g | ]}d qS )r]  r    r   r    r    r!   r@    s     zKtest_infer_output_shape_listlike_columns_with_timestamp.<locals>.<listcomp>rY  )r4   rb  r   r   r    r    r!   7test_infer_output_shape_listlike_columns_with_timestamp  s    


rc  lstc                    s\   t tjdddddgd}|j fddd	d
}t fdd| D }t|| d S )Nr.   rI   r   r#   r$   re   c                    s    S r:   r    r;   rd  r    r!   r,     r-   z3test_consistent_coerce_for_shapes.<locals>.<lambda>r   r   c                    s   g | ]} qS r    r    r   re  r    r!   r@    s     z5test_consistent_coerce_for_shapes.<locals>.<listcomp>r^  )rd  r4   r   r   r    re  r!   !test_consistent_coerce_for_shapes  s    rf  c                 C   sd   | }|j dd dd}| jddddd	}t|| |j d
d dd}|ddg }t|| d S )Nc                 S   s   t dddgdddgdS )Nr   r/   rI   testotherr   rV   r   r;   r    r    r!   r,     r-   z'test_consistent_names.<locals>.<lambda>r   r   rg  rh  r   r  re   c                 S   s   t ddgddgdS )Nr   r/   rg  rh  rV   ri  r;   r    r    r!   r,     r-   )r   renamer   r>   r   r    r    r!   test_consistent_names  s     
rk  c                 C   s<   | }|j dd ddd}| }dddg|_t|| d S )Nc                 S   s
   dddgS r   r    r;   r    r    r!   r,     r-   z"test_result_type.<locals>.<lambda>r   r^   r_   r   r/   r   r   rX   r   r>   r   r    r    r!   test_result_type  s
    rm  c                 C   sB   | }|j dd ddd}|ddg  }ddg|_t|| d S )	Nc                 S   s   ddgS r\  r    r;   r    r    r!   r,     r-   z/test_result_type_shorter_list.<locals>.<lambda>r   r^   r_   r   r#   r   rl  r   r    r    r!   test_result_type_shorter_list  s
    
rn  c                 C   s0   | }|j dd ddd}| }t|| d S )Nc                 S   s
   dddgS r   r    r;   r    r    r!   r,     r-   z,test_result_type_broadcast.<locals>.<lambda>r   r{   r_   r   r   r    r    r!   test_result_type_broadcast  s    ro  c                    s>   | }dddg |j  fddddd}| }t|| d S )	Nrh  r  r/  c                    s   t dddg dS Nr   r/   rI   rV   ri  r;   re   r    r!   r,     r-   z8test_result_type_broadcast_series_func.<locals>.<lambda>r   r{   r_   r   r   r    re   r!   &test_result_type_broadcast_series_func  s    

  rq  c                 C   s.   | }|j dd dd}| }t|| d S )Nc                 S   s   t dddg| jdS rp  )r   r   r;   r    r    r!   r,     r-   z0test_result_type_series_result.<locals>.<lambda>r   r   r   r   r    r    r!   test_result_type_series_result  s    rr  c                    sB   | }dddg |j  fdddd}| } |_t|| d S )Nrh  r  r/  c                    s   t dddg dS rp  ri  r;   re   r    r!   r,     r-   z<test_result_type_series_result_other_index.<locals>.<lambda>r   r   rl  r   r    re   r!   *test_result_type_series_result_other_index  s    
rs  boxc                 C   s   t | S r:   )r   r;   r    r    r!   r,     r-   c                 C   s   t | S r:   )r   r;   r    r    r!   r,     r-   c                 C   s   t j| ddS )Nr   rb   )r   r   r;   r    r    r!   r,     r-   r   r   r   c                    s   |}|j  fdddd}t fdd| D }t|| |j  fddddd	}|d
dg jdddd}t|| d S )Nc                    s    ddgS r\  r    r;   rt  r    r!   r,   "  r-   z,test_consistency_for_boxed.<locals>.<lambda>r   r   c                    s   g | ]} d dgqS r]  r    r   ru  r    r!   r@  #  s     z.test_consistency_for_boxed.<locals>.<listcomp>c                    s    ddgS r\  r    r;   ru  r    r!   r,   &  r-   r^   r_   r   r#   r   rN   re   )r   r   r   r   r   rj  r>   )rt  r   r4   r   r   r    ru  r!   test_consistency_for_boxed  s    rv  c              	   C   s$  | dkrdnd}t jdd t |}t |}| }|jt j| d}t|| |jt jg| d}| }| dkrt	|j
dgg|_
nt	|jdgg|_t|| |jt jt jg| d}t||g|d}| dkrt	|j
ddgg|_
nt	|jddgg|_t|| W 5 Q R X d S )	N   r   r   r   r   r   r   r   r   absolute)r   r   absr   r   r   r   r>   r   Zfrom_productrX   r   r
   )r   r   
other_axisZf_absZf_sqrtr   r   r    r    r!   test_agg_transform+  s.    

r{  c                  C   sT   t tddd} | ddg}t ddgddgdddgddgd	}t|| d S )
Nrs   rN   r   r   r   r.   r   r#   r   )r   r   rE   r   r>   rq   r    r    r!   	test_demoQ  s      r|  c                  C   sn   t tddd} | ddgddgd}t ddtjgdtjd	gdd
dgdddgd}t||| d S )Nrs   rN   r   r   rk         @r)        @g      9@r   r#   r   )r   r   rE   r   rW   r   r>   Zreindex_likerq   r    r    r!   test_demo_dict_agg\  s    r  c                  C   sl   dddgi} t | }|ddi}tddi}t|| |d ddi}tddidd}t|| d S )Nr   r   r   countr/   r   )r   rE   r   r   r   )rF   r4   r   r   r    r    r!   !test_agg_with_name_as_column_nameh  s    r  c               	   C   s   t dddgdddgddd	gtd
ddd} t ddgddgddgtdtjgdddgd}tjtdd | ddg}W 5 Q R X t	|| tjtdd  | ddddg ddg}W 5 Q R X |ddddg 
ddg}t	|| d S )Nr   r/   rI   r   r         @r   r   bazrH   rJ   r   r#   r$   r%   rt         @	foobarbazr6   r   rk   rV   &\['D'\] did not aggregate successfullymatchr%   r$   r#   r   )r   r	   r   rO   ZNaTr   assert_produces_warningFutureWarningrE   r>   Zreindex)Zmdfr   r   r    r    r!   "test_agg_multiple_mixed_no_warningx  s8    

  $r  c              	   C   s$  | dkrdnd}|j |  d d  \}}tj|j| d|j| d|j| dgdd}dddg|_| dkrt|j	n|}|j
dddg| d}t|| |d|di}|j
|| d}t|||  |||  g||gd	}t|| |dg|dgi}|j
|| d}t|t|||  gdgd	|t|||  gdgd	i}| d
kr`|j	n|}t|| |ddg|ddgi}|j
|| d}tj|t|||  |||  gddgd	|t|||  |||  gddgd	idd}| d
kr|j	n|}t|| d S )Nrw  r   r   r/   r   r   r   rk   rV   >   r   rX   )ZaxesuniqueZsort_valuesrO   concatr   r   rk   rX   rp   rE   r   r>   r   rY   r   r   )r   r   rz  Zname1Zname2r   r   rQ   r    r    r!   test_agg_reduce  sn    


    r  c               	   C   s0  t dddgdddgddd	gtd
ddd} | d}tdddtd
g| jd}t|| | dg}t dddtd
ggdg| jd}t|| tj	t
dd | d}W 5 Q R X tdddgdddgd}t|| tj	t
dd | dg}W 5 Q R X t dddggdgdddgd}t|| d S )Nr   r/   rI   r   r   r  r   r   r  rH   rJ   r  r   rV   r   Select only validr  rk   rt   r  r  r   r#   r$   r  )r   r	   rE   r   r   rX   r   r   r>   r  r  rq   r    r    r!   test_nuiscance_columns  s@    
	
 
  r  methodZ	transformc              
   C   s   t dddgtdd}| dkr~d}tjt|d t|| tj W 5 Q R X tj	t
dd t|| tjd	d
 W 5 Q R X n|| dkrtj	t
dd t|| tj W 5 Q R X nHtj	tdd4 d}tjt|d t|| tj W 5 Q R X W 5 Q R X d S )Nr   r/   ZxyzrB   rc   rE   z$The operation <function mean.*failedr  z"got an unexpected keyword argumentT)Znumeric_onlyr   zCould not convertzFunction did not transform)r   r   r   r  r  rn   r   r   pytestZraises	TypeError
ValueError)r  r4   msgr    r    r!   test_numeric_only_warning_numpy
  s     r  howc                 C   s  t d ddgdtjdgdd dgd}t|| dd	i}tddi}t|| t|| dd
i}tddi}t|| t|| d	d
g}t|| d	d
gd	d
gd	d
gd}t dddddddddd}tj||dd tj||dd t|| d	}| }t|| d S )Nr/   rI   r   r  r   r   r  r   r  r  )r  r  Tr   )	r   r   rW   rn   r   r   r   r>   r  )r  r4   r   r   Zresult1Zresult2r    r    r!   test_non_callable_aggregates  s0    r  c                 C   s   t d ddgdtjdgdd dgd}t|| d|d	}|d
ksF|dkr\t|jd
 |jd}nt|jd |jd}t	|| d S )Nr/   rI   r   r  r   r   r  r  r   r   r   rV   r   )
r   r   rW   rn   r   r0   rX   r   r   r   )r  r   r4   r   r   r    r    r!   test_size_as_strM  s    r  c                  C   s   t dddgdtjdgdd dgd} dd }| |}tddgdgddggd	d
dgd}t|| | |g}|dj}t	|| d S )Nr/   rI   g      ?r   r   r  c                 S   s   t |   S r:   )r   Zdropnar  )Z	group_colr    r    r!   rQ   a  s    z&test_agg_listlike_result.<locals>.funcr   r#   r$   rV   rQ   )
r   r   rW   rE   r   r   r   Zto_framerp   r>   )r4   rQ   r   r   r    r    r!   test_agg_listlike_result]  s    $
"r  zargs, kwargsr[  )rv   ru      r]  )r   rc   r    r  rB   rc   rd   c                 C   sd   ddd}t ddgddgg}| dkr4tdd	g}ntd
dg}|j|| f||}t|| d S )NrI   c                 S   s   |   || |  S r:   rk   )r<   rB   rc   rd   r    r    r!   r   {  s    ztest_agg_args_kwargs.<locals>.fr   r/   r.   r   r~  g      @r}  g       @)rI   r   r   rE   r   r   )r   r   kwargsr   r4   r   r   r    r    r!   test_agg_args_kwargsm  s    
r  num_colsrs   c                 C   sL   t dddg}| }td|t| d}|dd  |j|jksHtd S )Nz
1950-06-30z
1952-10-24z
1953-05-29r   r   c                 S   s   | S r:   r    r;   r    r    r!   r,     r-   z,test_frequency_is_original.<locals>.<lambda>)rO   ZDatetimeIndexr   r   r   r   r  r   )r  r   originalr4   r    r    r!   test_frequency_is_original  s
    r  c                  C   sb   t dddt dddt dddg} tdddg| d	}|jd
d dd}t| | d}t|| d S )Nz2019-03-15 12:34:31.909000+0000r7   r8   z2019-03-15 12:34:34.359000+0000z2019-03-15 12:34:34.660000+0000r   r   r/   )rF   r   c                 S   s   | j S r:   r   r;   r    r    r!   r,     r-   z.test_apply_datetime_tz_issue.<locals>.<lambda>r   )r   rF   )r   r   r   r   r   r   )Z
timestampsr4   r   r   r    r    r!   test_apply_datetime_tz_issue  s    


r  r4   rB   rd   r   rN   r   r   c              	   C   sR   t jtdd. t| ddg | }t| ddg | }W 5 Q R X t || d S )Nr  r  r   r#   )r   r  r  rn   r   )r4   r  Znone_in_first_column_resultZnone_in_second_column_resultr    r    r!   =test_consistency_of_aggregates_of_columns_with_missing_values  s    r  r  c                 C   s:   t d| ggddgd}|dd }|j}t|| d S )Nr   rB   rc   re   c                 S   s   | j S r:   rb   r;   r    r    r!   r,     r-   z"test_apply_dtype.<locals>.<lambda>)r   r   r   r   r   )r  r4   r   r   r    r    r!   test_apply_dtype  s    r  c                 C   s   t tdtddd}| }dd }| }|d  d7  < |j|dd}t|| |sb| rpt|| nt|| d S )	Nd      r  c                 S   s*   | j }| jd  d7  < | j |k	s&t| S )NrB   r   )Z_mgrrY   r   )r&  Zmgrr    r    r!   rQ     s    z!test_apply_mutating.<locals>.funcrB   r   r   )r   r   r   r   r   r>   )Zusing_array_managerZusing_copy_on_writer4   Zdf_origrQ   r   r   r    r    r!   test_apply_mutating  s    r  c                  C   sb   t ddgddgddgddgd	d
ggddgd} | jdd dd}tg g dtd}t|| d S )Nr   r/   rI   r.   rs   rt   ru   rv   rw   r   rB   rc   re   c                 S   s   g S r:   r    r;   r    r    r!   r,     r-   z.test_apply_empty_list_reduce.<locals>.<lambda>ra   r|   r  rb   )r   r   r   rh   r   r   rq   r    r    r!   test_apply_empty_list_reduce  s    .r  c                  C   sf   t ddggd ddgd} | ddd	 dd	 g}t d
d
d
gdddgddddgd}t|| d S )Nr.   rw   rI   r   r#   re   rk   c                 S   s   |   S r:   r  r;   r    r    r!   r,     r-   z,test_apply_no_suffix_index.<locals>.<lambda>r>     rN   r,   rV   r\   )Zpdfr   r   r    r    r!   test_apply_no_suffix_index  s     r  c                  C   s@   t dddgi} | jdd ddd}tddg}t|| d S )	Nr   Zaabbbc                 S   s   | d S rx   r    r;   r    r    r!   r,     r-   z/test_apply_raw_returns_string.<locals>.<lambda>r   Tr   r   rq   r    r    r!   test_apply_raw_returns_string  s    r  c               	   C   s   t ddddddgdd} d	d
 }d|ddg}tjtdd | |}W 5 Q R X t dtjddgddddgddddgddddgdddddgd}t|| d S )N)1r   r   r   )2r/   r   r   )3rI   r   r   )4r.   rs   r.   )5rs   rt   rt   )6rt   ru   ru   )itemZatt1Zatt2Zatt3re   c                 S   s   |   d S r   r  ry   r    r    r!   r     s    z/test_aggregation_func_column_order.<locals>.foork   r  r   z)\['item'\] did not aggregate successfullyr  Z123456rt   r  g      5@g      %@r  r   g      2@g      "@r)  g      1@g      !@r   rV   )r   r   r  r  rE   r   rW   r>   )r4   r   Zaggsr   r   r    r    r!   "test_aggregation_func_column_order  s4     



	r  c                  C   sR   t dddgdddgd} | ddg jdd dd	}tddd
g}t|| d S )Nr   r   r/   rI   r  rB   c                 S   s   | d | d  S )Nr   r   r    r;   r    r    r!   r,     r-   z+test_apply_getitem_axis_1.<locals>.<lambda>r   r.   r   rq   r    r    r!   test_apply_getitem_axis_1  s    r  c               	   C   sD   dd } t ddddgi}tjtdd || g W 5 Q R X d S )	Nc                 S   s   t d |  S )NHello, World!)r   warnrk   r;   r    r    r!   r   !  s    
z7test_nuisance_depr_passes_through_warnings.<locals>.foorB   r   r/   rI   r  r  )r   r   r  UserWarningrE   )r   r4   r    r    r!   *test_nuisance_depr_passes_through_warnings  s    r  c                  C   s   t ddtgdtdddtjgdddd	gd
} | t}t tttgtttgdddd	gd
}t	
|| | jtdd}tttd}t	|| | jtdd}ttttd}t	|| d S )NrI   rW  g      ?i  r   )r   r   rB   rc   rd   rV   r   r   r  )r   floatr   r   rW   r   r   intr   r   r>   r   r   r   rq   r    r    r!   test_apply_type*  s     
r  c                  C   sL   t ddgddgd} | djdd dd}tg tjd	}t|| d S )
Nr   r/   rI   r   r  c                 S   s   t | d | d S )NrB   rc   )r   r;   r    r    r!   r,   G  r-   z/test_apply_on_empty_dataframe.<locals>.<lambda>r   rb   )r   headr   r   r   ri   r   r   rq   r    r    r!   test_apply_on_empty_dataframeD  s    r  ztest, constantc                 C   s>   t | }t|ddgdd}ddd}||}t|| d S )NrB   rc   rh   )rF   r   r2   r  r  r  )rg  ZconstantZdf1r   Zaggregationr   r    r    r!   test_unique_agg_type_is_seriesL  s
    	

r  c               	   C   s   t ddgddgddgd} d}tjt|d | dd }W 5 Q R X tddd	d}t|| td	d	d	g}d}tjt|d |d}W 5 Q R X d	}t|| d S )
Nr   r/   r   r  zaIn a future version of pandas all arguments of DataFrame.any and Series.any will be keyword-only.r  r   TF)r   r   r  r  rm   r   r   Zassert_equal)r4   r  r   r   rL   r    r    r!    test_any_non_keyword_deprecation^  s    r  c                  C   sz   t dddgdddgdddgd} tdddg}t| jdd| | jddd}t|| | dd}t|| d S )	Nr   r/   r   r  TFr   rm   )r   r   r   r   rm   r   r"  r    r    r!   /test_any_apply_keyword_non_zero_axis_regressiont  s    "r  )r   r   Znumpyr   r  Zpandas.core.dtypes.dtypesr   ZpandasrO   r   r   r   r   r	   Zpandas._testingZ_testingr   Zpandas.tests.frame.commonr
   r"   r5   r@   markZparametrizerG   rP   r   r   rT   r[   r]   rj   ro   rr   rz   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   roundr  r	  r  r  r  r  r   r!  r#  r+  r,  r3  r8  r;  r<  r?  rA  rB  rF  rL  rM  rP  rU  rZ  r_  ra  rc  rf  rk  rm  rn  ro  rq  rr  rs  rv  r{  r|  r  r  r  r  r  r  r  r  r  r  r  r  r  rW   r  r  r  r  r  r  r  r  r  r  r  r  r  r    r    r    r!   <module>   s|  



	


		  			#4	*




		




	





&&E'

-
	*			#*&