
    Oh                        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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lmZ ej.                  d        Z ej.                  d	 ej2                  d
ej4                  j6                        g      d        Zd Zej4                  j=                  dd dg      ej4                  j=                  dddg      d               Zd Z d Z!ej4                  j=                  ddd edg      f edd      dfg      d        Z"d Z#ej4                  j=                  dejH                  ejJ                  g      d        Z&d  Z'd! Z(d" Z)ej4                  j=                  dg d#      d$        Z*d% Z+d& Z,d' Z-d( Z.d) Z/d* Z0d+ Z1d, Z2ej4                  j=                  dd dg      d-        Z3ej4                  j=                  dd dg      d.        Z4d/ Z5ej4                  j=                  dd dg      d0        Z6d1 Z7d2 Z8d3 Z9ej4                  ju                  d4      ej4                  j=                  d5d6d7g      ej4                  j=                  dd8 d9 gd:d;g<      ej4                  j=                  dddg      ej4                  j=                  dd dg      d=                                    Z;d> Z<d? Z=d@ Z>dA Z?dB Z@dC ZAdD ZBdE ZCdF ZDdG ZEdH ZFdI ZGdJ ZHdK ZIdL ZJej4                  j=                  dM edNdOgdPdQgg       edNdPdRdOdQdRg      g ed dgdSdTgg       ed dSdRddTdRg      gg      dU        ZKdV ZLdW ZMdX ZNej4                  j=                  dYdZd[g      d\        ZOd] ZPd^ ZQd_ ZRd` ZSej4                  j=                  dadbdcdej                  g      dd        ZUde ZVej4                  j=                  dfdgdh idi edgdSdTgi      fdgdj id edgdSdTgi      fdgdk idi edgdTi      fdgdl id edgdTi      fdgdmej                  dn gidi edgg doig dpq      fdgdmej                  dr gid edgg doig dpq      fdgds idi edgddgi      fdgdt id edgdi      fg      du        ZXej4                  j=                  dvdgdw idgdx idgdmej                  dy gidgdz ig      d{        ZYd| ZZd} Z[d~ Z\ej4                  j=                  dfd gdi eddSdTgi      fd gd eddSdTgi      fd gdi edgdTgidgq      fd gd edgdTgidgq      fdmej                  d gdi edgg doig dpq      fdmej                  d gd edgg doig dpq      fd d gdi edSdTgdTdTggdgdggddgg      fd d gd edgdSdTgiddg      fg      d        Z]ej4                  j=                  dvd gd gdmej                  d gd d gg      d        Z^d Z_d Z`d Zad Zbej4                  j=                  daddSg      d        Zcd Zdej4                  j=                  dg dddSgg      d        Zed Zfd Zgd Zhd Zid Zjd Zkd Zlej4                  j=                  dd d d gg d<      d        Zmd Znd Zod Zpd Zqd Zrd Zsd Ztd Zuej4                  j=                  dd[dZg      d        Zvej4                  j=                  dd[dZg      d        Zwd Zxej4                  j=                  dd dg      ej4                  j=                  ddi fdi fdi fdddSifdddSdfddSddfdddSdTdfg      d               Zyej4                  j=                  dg d      d        Zzd Z{ej4                  j=                  d edgdgddgdŜ      g      ej4                  j=                  dg dǢ      dȄ               Z|ej4                  j=                  dddddgej                  g      d˄        Z}d̄ Z~d̈́ Zd΄ Zdτ ZdЄ Zdф Zd҄ Zdӄ ZdԄ ZdՄ Zej4                  j=                  dg dg dעdg ddgdfg dآg dעddSgdgdfg      dل        Zdڄ Zdۄ Zd܄ Zd݄ Zy)    )datetimeN)is_platform_arm)CategoricalDtype)	DataFrame
MultiIndexSeries	Timestamp
date_range)
zip_frames)Versionc                      t        t        j                  t        j                  dd      d      j	                  dd      dz   g d      } | S )	z
    Fixture for DataFrame of ints which are constant per column

    Columns are ['A', 'B', 'C'], with values (per column): [1, 2, 3]
       int64dtype      ABCcolumns)r   nptilearangereshape)dfs    k/var/www/html/diagnosisapp-backend/venv/lib/python3.12/site-packages/pandas/tests/apply/test_frame_apply.pyint_frame_const_colr!      sC     

		!7+Q/772>B
B I    pythonnumba)marks)paramsc                 b    | j                   dk(  rt        j                  d       | j                   S )Nr$   )parampytestimportorskip)requests    r    enginer,   &   s&    }}G$==r"   c                    |dk(  r;t         j                  j                  d      }|j                  j	                  |       t        j                  d      5  t        j                  | d         }| j                  t
        j                  |      d   }t        j                  ||       | j                  t
        j                  |      d   }t        j                  | d         }||k(  sJ | j                  d   }| j                  t
        j                  d	|
      }t        j                  | j                  |            }||   |k(  sJ |j                  | j                  u sJ 	 d d d        y # 1 sw Y   y xY w)Nr$   z+numba engine not supporting numpy ufunc yetreasonignoreallr   r,   r   r   axisr,   )r)   markxfailnode
add_markerr   errstatesqrtapplytmassert_series_equalmeanindexxs)float_framer,   r+   r6   resultexpectedds          r    
test_applyrF   -   sC   {{  (U V%		" 1S)*$$RWWV$<SA
vx0 ""2776":3?77;s+,!!!a ""2776"B77;>>!,-ayH$$$||{000001 1 1s   DE00E9r5   r   rawTFc                    |dk(  rt        j                  d      }t        |j                        t        d      k(  r,t	               r"t        j
                  d|j                          t         j                  j                  d      }|j                  j                  |       | j                  d |d||      }| d	z   }t        j                  ||       y )
Nr$   z0.61z&Segfaults on ARM platforms with numba z!numba engine doesn't support argsr.   c                     | |z   S N xys     r    <lambda>z!test_apply_args.<locals>.<lambda>M   s
    QU r"   r   )argsrG   r,   r   )r)   r*   r   __version__r   skipr6   r7   r8   r9   r<   r=   assert_frame_equal)	rB   r5   rG   r,   r+   r$   r6   rC   rD   s	            r    test_apply_argsrU   C   s     ##G,5$$%8_=NKK@ARAR@STU{{  (K L%DtV  F QH&(+r"   c                      t        g dg dd      } | j                  d       }|j                  dk(  sJ t        |d   j                  t
              sJ t        |d   j                  t
              sJ y )N)r   r   r   r   )r   r   DrW   c0c1c                 $    | j                  d      S )Ncategoryastype)tss    r    rO   z-test_apply_categorical_func.<locals>.<lambda>V   s    :!6 r"   )      rY   rZ   )r   r<   shape
isinstancer   r   r   rC   s     r    test_apply_categorical_funcre   S   sj    	.6JK	LBXX67F<<6!!!fTl((*:;;;fTl((*:;;;r"   c                      t        dt        dd      gi      } | j                  d d      }t        j                  ||        y )Nr   
2013-01-01UTCtzc                     | S rJ   rK   rM   s    r    rO   z*test_apply_axis1_with_ea.<locals>.<lambda>`       a r"   r   r5   r   r	   r<   r=   rT   rD   rC   s     r    test_apply_axis1_with_earq   ]   s=    #	,5 ABCDH^^Ka^0F&(+r"   zdata, dtype)r   Nrg   rh   ri   c                     t        | g| ggddg|      }|j                  d d      }t        j                  ||       y )Na)r@   r   c                     | S rJ   rK   rl   s    r    rO   z0test_agg_axis1_duplicate_index.<locals>.<lambda>k   s    A r"   r   rn   r   aggr=   rT   )datar   rD   rC   s       r    test_agg_axis1_duplicate_indexrx   d   sA     4&4&)#s5IH\\+A\.F&(+r"   c                      t        t        dd      t        j                  t	        j
                  d      d      d      } | j                  d d	      }t        j                  ||        y )
N20130101r   periodss)unitr   r   c                     | S rJ   rK   rl   s    r    rO   z/test_apply_mixed_datetimelike.<locals>.<lambda>x   rm   r"   r   rn   )	r   r
   pdto_timedeltar   r   r<   r=   rT   rp   s     r    test_apply_mixed_datetimeliker   o   sW     J21C8	
H ^^Ka^0F&(+r"   funcc                 Z    t               }|j                  | |      }|j                  sJ y )Nr3   )r   r<   empty)r   r,   empty_framerC   s       r    test_apply_emptyr   |   s,     +KtF3F<<<r"   c                 r   | d d }|j                  d |      }t        t        j                  | j                        }t        j                  ||       | j                  d d g f   }|j                  d d|      }t        t        j                  | j                        }t        j                  ||       y )Nr   c                 "    | j                         S rJ   r?   rl   s    r    rO   z(test_apply_float_frame.<locals>.<lambda>       QVVX r"   r3   r@   c                 "    | j                         S rJ   r   rl   s    r    rO   z(test_apply_float_frame.<locals>.<lambda>   r   r"   r   r4   )	r<   r   r   nanr   r=   r>   locr@   )rB   r,   no_rowsrC   rD   no_colss         r    test_apply_float_framer      s    "1oG]]-f]=FbffK$7$78H68,ooae$G]]-Af]EFbffK$5$56H68,r"   c                 t    t        dg      }|j                  d d|       }t        j                  ||       y )Nrs   r   c                     | d   S )Nrs   rK   rl   s    r    rO   z/test_apply_empty_except_index.<locals>.<lambda>   s
    af r"   r   r4   r   r<   r=   rT   )r,   rD   rC   s      r    test_apply_empty_except_indexr      s3    u%H^^,1V^DF&(+r"   c                  R   t               } g }| j                  |j                  dd      }t        j                  ||        | j                  |j                  dd      }t        g t        j                        }t        j                  ||       t        g d      }|j                  |j                  dd      }t        j                  ||       |j                  |j                  dd      }t        g t        j                        }t        j                  ||       |g k(  sJ y )Nr   expandr5   result_typereducer   rs   bcr   )	r   r<   appendr=   rT   r   r   float64r>   )r   rM   rC   rD   empty_with_colss        r    test_apply_with_reduce_emptyr      s    +K
AqxxaXFF&+.qxxaXFFb

+H68,8O""188!"JF&/2""188!"JFb

+H68, 7N7r"   )sumprodanyr2   c                     t        g d      }|j                  t        t        |             } t        ||              }| dv r|j	                  t
              }t        j                  ||       y )Nr   r   )r   r   )r   r<   getattrr   r^   floatr=   r>   )r   r   rC   rD   s       r    test_apply_funcs_over_emptyr      sZ     
?	+BXXgb$'(F wr4 "H??5)68,r"   c                  0   t        g d      } | j                         }t        d| j                        }t	        j
                  ||       | j                  j                         }t        g t        j                        }t	        j
                  ||       y )Nr   r   r   r   r   )	r   nuniquer   r   r=   r>   Tr   r   r   rC   rD   s      r    test_nunique_emptyr      sf    	?	+BZZ\Farzz*H68,TT\\^Fb

+H68,r"   c                     t        g dg dg dgg d      } | j                  d d      }t        g d	g d      }t        j                  ||       | j
                  j                  d
 d      }t        j                  ||       y )Nr   ra   r   )r`      r   )      	   )rs   rs   r   r   c                     | d   S Nr   rK   r}   s    r    rO   z/test_apply_standard_nonunique.<locals>.<lambda>   
    ! r"   r   rn   )r   r`   r   c                     | d   S r   rK   r   s    r    rO   z/test_apply_standard_nonunique.<locals>.<lambda>   s
    !A$ r"   r   )r   r<   r   r=   r>   r   r   s      r    test_apply_standard_nonuniquer      si    	Iy)4O	LBXXn1X-Fi1H68,TTZZQZ/F68,r"   c                     | j                  t        j                  d      }t        | j                         g| j                        }t        j                  ||       y )N	broadcastr   r   )r<   r   r?   r   r@   r=   rT   rB   rC   rD   s      r    test_apply_broadcast_scalarsr      sI    rwwK@F+**,-[5F5FGH&(+r"   c                     | j                  t        j                  dd      }| j                  d      }t        | j                  D ci c]  }|| c}      }t        j                  ||       y c c}w )Nr   r   r   rn   )r<   r   r?   r   r   r=   rT   rB   rC   mr   rD   s        r    "test_apply_broadcast_scalars_axis1r      sd    rwwQKHFa A(;(;<1!Q$<=H&(+ =s   
A0c                 "     j                   fddd      }t        t        t         j                                    }t        |gt         j                        z  d j                   j                        }t        j                  ||       y )Nc                 R    t        t        t        j                                    S rJ   )listrangelenr   rM   rB   s    r    rO   z4test_apply_broadcast_lists_columns.<locals>.<lambda>   s    $uS!4!4567 r"   r   r   r   r   )r   r@   r   )	r<   r   r   r   r   r   r@   r=   rT   )rB   rC   r   rD   s   `   r    "test_apply_broadcast_lists_columnsr      s    7  F
 	U3{**+,-A	
c+##$$##	H &(+r"   c                      j                   fdd      }t        t        t         j                                    }t         j                  D ci c]  }|| c}d j                        }t        j                  ||       y c c}w )Nc                 R    t        t        t        j                                    S rJ   )r   r   r   r@   r   s    r    rO   z2test_apply_broadcast_lists_index.<locals>.<lambda>   s    $uS!2!2345 r"   r   r   r   )r   r@   )	r<   r   r   r   r@   r   r   r=   rT   r   s   `    r     test_apply_broadcast_lists_indexr      s~    5;  F 	U3{(()*+A"**+!A+H
 &(+	 	,s   
Bc                 ^    | }|j                  d dd      }t        j                  ||       y )Nc                 
    g dS Nr   rK   rl   s    r    rO   z7test_apply_broadcast_list_lambda_func.<locals>.<lambda>      	 r"   r   r   r   r<   r=   rT   )r!   r   rC   s      r    %test_apply_broadcast_list_lambda_funcr      s,    	BXX){XKF&"%r"   c                 ~    | }|j                  d dd      }|j                         }t        j                  ||       y )Nc                 2    t        g dt        d            S )Nr   abcr   )r   r   rl   s    r    rO   z9test_apply_broadcast_series_lambda_func.<locals>.<lambda>  s    &$u+6 r"   r   r   r   )r<   copyr=   rT   r!   r   rC   rD   s       r    'test_apply_broadcast_series_lambda_funcr     s@    	BXX6  F
 wwyH&(+r"   c                 h    |dk(  rt        j                  d       d }| j                  |||d       y )Nr$   z)numba can't handle when UDF returns None.c                 ^    t        | t        j                        sJ | j                  dk(  sJ y Nr   rc   r   ndarrayndimrl   s    r    _assert_rawz/test_apply_raw_float_frame.<locals>._assert_raw  &    !RZZ(((vv{{r"   Tr5   r,   rG   )r)   rS   r<   )rB   r5   r,   r   s       r    test_apply_raw_float_framer     s5    ?@ kVFr"   c                     | j                  t        j                  ||d      }| j                  d |      }t        j                  ||       y )NTr   c                 6    | j                   j                         S rJ   )valuesr?   rl   s    r    rO   z3test_apply_raw_float_frame_lambda.<locals>.<lambda>  s    188==? r"   rn   )r<   r   r?   r=   r>   )rB   r5   r,   rC   rD   s        r    !test_apply_raw_float_frame_lambdar     sE    rwwT&dKF  !: FH68,r"   c                 d    | j                  d |d      }| dz  }t        j                  ||       y )Nc                     | dz  S Nra   rK   rl   s    r    rO   z9test_apply_raw_float_frame_no_reduction.<locals>.<lambda>%  s
    Q r"   T)r,   rG   ra   r   )rB   r,   rC   rD   s       r    'test_apply_raw_float_frame_no_reductionr   #  s2    v4HFQH&(+r"   c           
         |dk(  rt        j                  d       d }t        dddt        j                  dgdz  d	      t        j                  d
gdz  d	      dt        j
                  d            }|j                  || |d       y )Nr$   z(isinstance check doesn't work with numbac                 ^    t        | t        j                        sJ | j                  dk(  sJ y r   r   rl   s    r    r   z4test_apply_raw_mixed_type_frame.<locals>._assert_raw/  r   r"         ?ra   foo
   float32r   r   int32)rs   r   r   r   r   r   Tr   )r)   rS   r   r   arrayr   r<   )r5   r,   r   r   s       r    test_apply_raw_mixed_type_framer   *  s    >?
 
xx
)<XXqcBhg6	
 iim	
B HH[tFH=r"   c                     | j                   d   }| j                  t        j                  d      |   }t        j                  | j	                  |            }||k(  sJ y )Nr   r   rn   )r@   r<   r   r?   rA   )rB   rE   rC   rD   s       r    test_apply_axis1r   A  sU    !ArwwQ/2Fww{~~a()HXr"   c                      t        dgdgd      } | d d j                  t        j                  d      }t	        t        j
                  t        j                  g d      	      }t        j                  ||       y )
Nr   r   r   r   r   rn   r   r   r   )
r   r<   r   r?   r   r   r   Indexr=   r>   r   s      r    test_apply_mixed_dtype_cornerr   H  s^    	%u-	.BV\\"''\*F bffBHHRw$?@H68,r"   c                     t        dgdgd      } | j                  d d      }t        dgdg      }t        j                  ||       | j                  d	 d      }t        dgdg      }t        j                  ||       y )
Nr   r   r   c                     | d   S )Nr   rK   rl   s    r    rO   z8test_apply_mixed_dtype_corner_indexing.<locals>.<lambda>S  
    # r"   r   rn   r   r   c                     | d   S )Nr   rK   rl   s    r    rO   z8test_apply_mixed_dtype_corner_indexing.<locals>.<lambda>W  r   r"   )r   r<   r   r=   r>   r   s      r    &test_apply_mixed_dtype_corner_indexingr   Q  s{    	%u-	.BXX&QX/FugaS)H68,XX&QX/FseA3'H68,r"   zignore::RuntimeWarningaxr@   r   c                     | S rJ   rK   rl   s    r    rO   rO   _      q r"   c                 "    | j                         S rJ   r   rl   s    r    rO   rO   _  s    AFFH r"   identityr?   )idsc                    t        di | g di}t        j                  d      5   |t        j                  g d            }t	        |t        j
                         }|j                  ||||      }	|r3|j                  |      }
t	        |	t              sJ |	j                  |
u sJ t	        |	t               sJ d d d        y # 1 sw Y   y xY w)Nr   r0   r1   f8r   r   rK   )
r   r   r:   r   rc   r   r<   _get_agg_axisr   r@   )r   r   rG   r5   r,   r+   r   test_resis_reductionrC   agg_axiss              r    test_apply_empty_infer_typer  \  s     
	+b/*	+B		" 
1401%h

;;$T&cB''-Hff---<<8+++fi000
1 
1 
1s   BCCc                  l    t        g d      } | j                  d d      }t        |t               sJ y )Nr   r   c                 "    | j                         S rJ   r   rl   s    r    rO   z7test_apply_empty_infer_type_broadcast.<locals>.<lambda>u  r   r"   r   r   )r   r<   rc   )r   rC   s     r    %test_apply_empty_infer_type_broadcastr  s  s/    o.G]]-;]GFfi(((r"   c                     dd}| j                  |d      }| j                  d       }t        j                  ||       y )Nc                     | |z   S rJ   rK   rM   howmuchs     r    add_somez4test_apply_with_args_kwds_add_some.<locals>.add_somez  s    7{r"   ra   r  c                     | dz   S r   rK   rl   s    r    rO   z4test_apply_with_args_kwds_add_some.<locals>.<lambda>~  s
    1q5 r"   r   r   )rB   r  rC   rD   s       r    "test_apply_with_args_kwds_add_somer  y  s>     x3F  1H&(+r"   c                     dd}| j                  |d      }| j                  d       }t        j                  ||       y )Nc                 (    | j                         |z   S rJ   r   r  s     r    agg_and_addz:test_apply_with_args_kwds_agg_and_add.<locals>.agg_and_add  s    vvx'!!r"   ra   r  c                 (    | j                         dz   S r   r   rl   s    r    rO   z7test_apply_with_args_kwds_agg_and_add.<locals>.<lambda>  s    1668a< r"   r  )r<   r=   r>   )rB   r  rC   rD   s       r    %test_apply_with_args_kwds_agg_and_addr    s?    " {A6F  !78H68,r"   c                     dd}| j                  |dd      }| j                  d       }t        j                  ||       y )Nc                     | |z
  |z  S rJ   rK   )rM   subdivides      r    subtract_and_dividezJtest_apply_with_args_kwds_subtract_and_divide.<locals>.subtract_and_divide  s    C6!!r"   )ra   ra   )rQ   r!  c                     | dz
  dz  S )N       @rK   rl   s    r    rO   z?test_apply_with_args_kwds_subtract_and_divide.<locals>.<lambda>  s    AGs? r"   rP   r   )rB   r"  rC   rD   s       r    -test_apply_with_args_kwds_subtract_and_divider%    sB    " 2aHF  !:;H&(+r"   c                 Z    | j                  t              }t        j                  ||        y rJ   )r<   r   r=   rT   )rB   rC   s     r    test_apply_yield_listr'    s"    t$F&+.r"   c                 
   t         j                  | j                  d d d| j                  j	                  d      f<   | j                  d      }| j                  t         j
                  d      }t        j                  ||       y )Nra   r   r   rn   )	r   r   ilocr   get_locr?   r<   r=   r>   )rB   rD   rC   s      r    test_apply_reduce_Seriesr+    si    >@ffKSqS+--55c::;"HrwwQ/F68,r"   c                  d   t        ddgddggddgddg	      } | j                  t        d
      }t        ddddddg| j                        }t        j                  ||       | j                  t        d      }t        ddddddg| j                        }t        j                  ||       y )Nr   ra   r   r`   rY   rZ   i0i1r   r@   r   rn   )r-  r.  r   rX   )r   r<   dictr   r   r=   r>   r@   )rw   rC   rD   s      r    test_apply_reduce_to_dictr1    s    q!fq!f%d|D$<PDZZ1Z%Faq)!1+=>dllSH68,ZZ1Z%Faq)!1+=>djjQH68,r"   c            	         t        t        j                  j                  d      j	                  d            } | j                  t        j                  d      }t        | j                         D ci c]  \  }}||j                          c}}| j                        }t        j                  ||       | j                  t        j                  d      }t        | j                  j                         D ci c]  \  }}||j                          c}}| j                        j                  }t        j                  ||       y c c}}w c c}}w )Nra   )   r   r   rn   r   r   )r   r   randomdefault_rngstandard_normalr<   r   describeitemsr   r=   rT   r   r@   )r   rC   ivrD   s        r    test_apply_differently_indexedr;    s    	299((+;;HE	FBXXfooAX.FbhhjAda!QZZ\/A2::VH&(+XXfooAX.FbddjjlCda!QZZ\/CRXXVXXH&(+ B Ds   1E	
9E
c                     t        g dg dg dg dg dg dgg d      } d	 }| j                  |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g d      } | j                  |d
      }t        j                  ||       y )N)r   ABC02   )r   YUM0r3  )r   DEF0r3  )ra   ABC1r>  )ra   YUM1r3  )ra   DEF1r3  )rs   marketpositionr   c                     | d   S )NrD  rK   )rs    r    fztest_apply_bug.<locals>.f  s    {r"   r   rn   i  r=  r>  ra   r?  r3  r   r@  r`   rA  r   rB  r   rC  )r   r<   r   r=   r>   )	positionsrH  rD   rC   s       r    test_apply_bugrJ    s    	
 ,
I qq)HdAq!62.dAq!62.dAq!62.dAq!62.dAq!62.dAq!62.	
 ,
I __QQ_'F68,r"   c            
         t        g dg dg dt        j                  j                  d      j	                  d      t        j                  j                  d      j	                  d      t        j                  j                  d      j	                  d      d      } | j                  d d	      }t        j                  ||        y )
N)r   r   r   r   barrL  rL  rL  r   r   r   )onerM  rM  tworM  rM  rM  rN  rN  rN  rM  )dullrO  shinyrO  rO  rP  rP  rO  rP  rP  rP  ra      )r   r   r   rW   EFc                     | S rJ   rK   rl   s    r    rO   z,test_apply_convert_objects.<locals>.<lambda>  rm   r"   r   rn   )r   r   r4  r5  r6  r<   r=   rT   rp   s     r    test_apply_convert_objectsrU    s     &&q)99"=&&q)99"=&&q)99"=U+	
-H^ ^^Ka^0F&(+r"   c                     | j                  d       }t        | j                  | j                        }t        j                  ||       y )Nc                     | j                   S rJ   namerl   s    r    rO   z(test_apply_attach_name.<locals>.<lambda>  
     r"   r   )r<   r   r   r=   r>   r   s      r    test_apply_attach_namer[    s;    /0Fk))1D1DEH68,r"   c                     | j                  d d      }t        | j                  | j                        }t        j                  ||       y )Nc                     | j                   S rJ   rX  rl   s    r    rO   z.test_apply_attach_name_axis1.<locals>.<lambda>  rZ  r"   r   rn   r   )r<   r   r@   r=   r>   r   s      r    test_apply_attach_name_axis1r^    s@    /a8Fk''{/@/@AH68,r"   c                     | j                  d       }t        t        j                  | j                  t        | j                        df      | j                  | j                        }t        j                  ||       y )Nc                 T    t        j                  | j                  t        |             S rJ   r   repeatrY  r   rl   s    r    rO   z6test_apply_attach_name_non_reduction.<locals>.<lambda>      1663q6)B r"   r   r@   r   )	r<   r   r   r   r   r   r@   r=   rT   r   s      r    $test_apply_attach_name_non_reductionre    se    BCF
##c+*;*;&<a%@A##H
 &(+r"   c                       j                  d d      }t         fd j                         D              } j                  |_        t	        j
                  ||       y )Nc                 T    t        j                  | j                  t        |             S rJ   ra  rl   s    r    rO   z<test_apply_attach_name_non_reduction_axis1.<locals>.<lambda>'  rc  r"   r   rn   c              3   v   K   | ]0  }t        j                  |d    t        j                               2 yw)r   N)r   rb  r   r   ).0trB   s     r    	<genexpr>z=test_apply_attach_name_non_reduction_axis1.<locals>.<genexpr>(  s0      67		!A$K//01s   69)r<   r   
itertuplesr@   r=   r>   r   s   `  r    *test_apply_attach_name_non_reduction_axis1rm  &  sX    BKF ;F;Q;Q;S H !&&HN68,r"   c                      t        j                  g dg dg      } t        ddgddgddgg| d	d
g      }|j                  d d      }t        ddgddgddgg| ddg      }t	        j
                  ||d       y )N)rs   rs   r   )r   rE   rE   r   ra   r   r`   r   r   col1col2rd  c                 B    t        t        |       t        |       d      S )N)minmax)r   rr  rs  rl   s    r    rO   z(test_apply_multi_index.<locals>.<lambda>2  s    vc!fSV&DE r"   rr  rs  T
check_like)r   from_arraysr   r<   r=   rT   )r@   r}   rC   rD   s       r    test_apply_multi_indexrw  /  s    ""O_#EFEAq6Aq6Aq6*%&&AQRAWWEqIF1a&1a&1a&1PUWH&(t<r"   z	df, dictsr   rL  spameggs)r   r   ra   r   c                     d }| j                  |d      }| j                  |d      }| j                  |      }t        j                  ||       t        j                  ||        t        j                  ||       y )Nc                 "    | j                         S rJ   )to_dictrl   s    r    rO   z!test_apply_dict.<locals>.<lambda>C  s    199; r"   r   r   r   )r<   r=   r>   rT   )r   dictsfnreduce_truereduce_falsereduce_nones         r    test_apply_dictr  7  sj     
B((28(4K88BH85L((2,K;.,+;.r"   c                     t        dt        ddd      i      } | j                  d       }t        j                  ||        | j                  d       }t        dt        ddd      i      }t        j                  ||       y )	Ndtz
2015-01-01r   zEurope/Brussels)r|   rj   c                     | S rJ   rK   rl   s    r    rO   z,test_apply_non_numpy_dtype.<locals>.<lambda>P       r"   c                 2    | t        j                  d      z   S )N1day)r   	Timedeltarl   s    r    rO   z,test_apply_non_numpy_dtype.<locals>.<lambda>S  s    BLL$8 8 r"   z
2015-01-02)r   r
   r<   r=   rT   r   s      r    test_apply_non_numpy_dtyper  M  sv    	D*\1ARST	UBXXk"F&"%XX89F	z,6GHIH &(+r"   c                  v    t        dg did      } | j                  d       }t        j                  ||        y )Nr  )rs   r   r   rs   r\   r   c                     | S rJ   rK   rl   s    r    rO   z5test_apply_non_numpy_dtype_category.<locals>.<lambda>\  r  r"   r   rd   s     r    #test_apply_non_numpy_dtype_categoryr  Z  s2    	D./z	BBXXk"F&"%r"   c                      t        ddgddggddg      } t        ddggddgdg      }| j                  dg      }t        j                  ||       y )	Nr   r   ra   r   rs   r   rr  r/  ru   r   rD   rC   s      r    test_apply_dup_names_multi_aggr  `  sX    	QFQF#c3Z	8B1a&C:eWEHVVUG_F&(+r"   opr<   rv   c                     d }t        t        j                  d      t        d            } t	        ||       |d      }t        g dg dg dg dg      }t        j                  ||       y )Nc                 0    d| d   z  d| d   z  d| d   z  gS )Nra   r   r   r   rK   rows    r    
apply_listz3test_apply_nested_result_axis_1.<locals>.apply_listl  s'    CHa#c(lACL99r"   )r`   r`   ABCDr   r   rn   )        r  r  )r   r   zerosr   r   r   r=   r>   )r  r  r   rC   rD   s        r    test_apply_nested_result_axis_1r  i  s^    : 
288F#T&\	:BWR_Za0F	/?OLH 68,r"   c                      t        dt        dd      gid      } | j                  d       }t        j                  ||        | j                  d       }t        j                  ||        y )	Nr   2020rh   ri   zdatetime64[ns, UTC]r   c                     | S rJ   rK   rl   s    r    rO   z7test_apply_noreduction_tzaware_object.<locals>.<lambda>|  rm   r"   c                 "    | j                         S rJ   )r   rl   s    r    rO   z7test_apply_noreduction_tzaware_object.<locals>.<lambda>~  s    affh r"   ro   rp   s     r    %test_apply_noreduction_tzaware_objectr  w  s`    	6e,-.6KH ^^K(F&(+^^./F&(+r"   c                      t        dg di      } g fd}fd}||fD ]4  }d d = | j                  |d       t        | j                        k(  r4J  y )Nrs   r   c                 <    j                  | j                         y rJ   r   rY  r  namess    r    reducing_functionz8test_apply_function_runs_once.<locals>.reducing_function  s    SXXr"   c                 >    j                  | j                         | S rJ   r  r  s    r    non_reducing_functionz<test_apply_function_runs_once.<locals>.non_reducing_function  s    SXX
r"   r   rn   )r   r<   r   r@   )r   r  r  r   r  s       @r    test_apply_function_runs_oncer    sg     
C#	$BE #$9: '!H
ARXX&&&	'r"   c                    | dk(  rt        j                  d       t        dg di      }g fd}fd}||fD ]D  }d d = |j                  || dd	       t	        |j
                  j                               k(  rDJ  y )
Nr$   z8appending to list outside of numba func is not supportedrs   r   c                 (    j                  |        y rJ   extendr  r   s    r    r  z<test_apply_raw_function_runs_once.<locals>.reducing_function  s    cr"   c                 *    j                  |        | S rJ   r  r  s    r    r  z@test_apply_raw_function_runs_once.<locals>.non_reducing_function  s    c
r"   Tr   )r,   rG   r5   )r)   rS   r   r<   r   rs   to_list)r,   r   r  r  r   r   s        @r    !test_apply_raw_function_runs_oncer    s    NO	C#	$BF #$9: .1I
f$Q7bddlln----	.r"   c                      t        t        j                  ddg      dg      } t        t        j                  ddg      dgt              }| j	                  d       }t        j                  ||       y )Ns   abcds   efghcolr   )r   r   c                 $    | j                  d      S )Nobjectr]   rl   s    r    rO   z-test_apply_with_byte_string.<locals>.<lambda>  s     2 r"   )r   r   r   r  r<   r=   rT   r  s      r    test_apply_with_byte_stringr    s]    	288Wg./%	AB7G"45wfUH XX23F&(+r"   valasd   c                 H    dd dddt         j                  g}t        d|id      }|j                  j	                   fd      }t        |D cg c],  }t        j                  |      rt         j                  n| k(  . c}d      }t        j                  ||       y c c}w )	Nr  r  cders   r\   r   c                     | k(  S rJ   rK   )rM   r  s    r    rO   z/test_apply_category_equalness.<locals>.<lambda>  s    !s( r"   rX  )
r   r   r   rs   r<   r   r   isnullr=   r>   )r  	df_valuesr   rC   rM   rD   s   `     r    test_apply_category_equalnessr    s     b%7I	C#:	6BTTZZ*+F7@A!299Q<Q#X	-AH 68, 	Bs   1Bc                  b   t        t        j                  j                  d      j                  d            } | j	                  t        j
                  j
                  d      j                  }|dk(  sJ | j	                  t        j
                  j                  d      j                  }|dk(  sJ y )Nra   )r   ra   r   rn   )r   ra   )r   r   r4  r5  r<   fftrb   rfftrd   s     r    test_infer_row_shaper    s     
299((+227;	<BXXbffjjqX)//FWXXbffkkX*00FVr"   zops, by_row, expectedrs   c                     | dz   S r   rK   rl   s    r    rO   rO     
    Q r"   compatc                     | dz   S r   rK   rl   s    r    rO   rO     r  r"   c                 "    | j                         S rJ   r   rl   s    r    rO   rO          r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO     r  r"   r   c                 "    | j                         S rJ   r  rl   s    r    rO   rO         AEEG r"   )r   r   r   )r   r   <lambda>r   c                 "    | j                         S rJ   r  rl   s    r    rO   rO     r  r"   c                      yr   rK   rl   s    r    rO   rO         r"   c                      yr   rK   rl   s    r    rO   rO     r  r"   c                 t    t        dddgi      }|j                  | |      }t        j                  ||       y Nrs   r   ra   by_rowr   r<   r=   assert_equalopsr  rD   r   rC   s        r    test_dictlike_lambdar    s6    . 
C!Q=	!BXXc&X)FOOFH%r"   r  c                     | dz   S r   rK   rl   s    r    rO   rO     s
    A r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO     s     r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO     s     r"   c                      yr   rK   rl   s    r    rO   rO     r  r"   c                     t        dddgi      }t        j                  t        d      5  |j	                  | d       d d d        y # 1 sw Y   y xY wNrs   r   ra   zby_row=True not allowedmatchTr  r   r)   raises
ValueErrorr<   r  r   s     r    test_dictlike_lambda_raisesr    J     
C!Q=	!B	z)B	C #
T"# # #   AAc                     t        ddgddggddg      } | j                  d d      }t        | j                         D cg c]  }dd	i c}      }t	        j
                  ||       t        d
      t        d      g| d<   | j                  d d      }t	        j
                  ||       | d   | d   z   j                  d       }t        dd	idd	ig      }t	        j
                  ||       y c c}w )Nr   ra   rs   r   r   c                     d| d   | d   z   iS Nr}   rs   r   rK   rl   s    r    rO   z,test_with_dictlike_columns.<locals>.<lambda>      afqvo 6 r"   rn   r}   r   2017-05-01 00:00:002017-05-02 00:00:00r=   c                     d| d   | d   z   iS r  rK   rl   s    r    rO   z,test_with_dictlike_columns.<locals>.<lambda>
  r  r"   c                 
    d| iS )Nr}   rK   rl   s    r    rO   z,test_with_dictlike_columns.<locals>.<lambda>  s
    #q r"   )r   r<   r   rl  r=   r>   r	   r   rC   rj  rD   s       r    test_with_dictlike_columnsr    s    	QFQF#c3Z	8BXX6QX?F9AQx9:H68, 	'('(BtH XX6QX?F68, g3&&'9:FQx#q*+H68, :s   C/c                      t               } g d| d<   g d| d<   t        j                  g dd      | d<   | j                  d	 d
      }t	        i i i g      }t        j                  ||       y )N)XYZauthor)BBCNBCN24	publisher)z17-10-2010 07:15:30z13-05-2011 08:20:35z15-01-2013 09:09:09T)dayfirstdatec                     i S rJ   rK   rl   s    r    rO   z:test_with_dictlike_columns_with_datetime.<locals>.<lambda>       r"   r   rn   )r   r   to_datetimer<   r   r=   r>   r   s      r    (test_with_dictlike_columns_with_datetimer    sg    	B"BxL+B{OMBvJ XXlX+Fr2rl#H68,r"   c                  *   t        ddgddggddg      } | j                  d dd      }t        d	d
d
gi      }t        j                  ||       t	        d      t	        d      g| d<   | j                  d dd      }t        j                  ||       y )Nr   ra   rs   r   r   c                     d| d   | d   z   iS r  rK   rl   s    r    rO   z7test_with_dictlike_columns_with_infer.<locals>.<lambda>$  r  r"   r   r   r}   r   r  r  r=   c                     d| d   | d   z   iS r  rK   rl   s    r    rO   z7test_with_dictlike_columns_with_infer.<locals>.<lambda>,  r  r"   )r   r<   r=   rT   r	   r   s      r    %test_with_dictlike_columns_with_inferr  !  s    	QFQF#c3Z	8BXX6QHXUF#1v'H&(+ 	'('(BtH XX6QHXUF&(+r"   c                     | dz   S r   rK   rl   s    r    rO   rO   3  
    AE r"   )rs   r  c                     | dz   S r   rK   rl   s    r    rO   rO   4  r  r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO   5      AEEG r"   r  c                 "    | j                         S rJ   r  rl   s    r    rO   rO   6  r  r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO   8      aeeg r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO   =  r  r"   c                     | dz   S r   rK   rl   s    r    rO   rO   B  s
    q1u r"   c                      yNr   rK   rl   s    r    rO   rO   B  r  r"   r   c                      yr   rK   rl   s    r    rO   rO   G  r  r"   c                      yr  rK   rl   s    r    rO   rO   G  r  r"   c                 t    t        dddgi      }|j                  | |      }t        j                  ||       y r  r  r  s        r    test_listlike_lambdar  0  s6    > 
C!Q=	!BXXc&X)FOOFH%r"   c                     | dz   S r   rK   rl   s    r    rO   rO   W  
    1q5 r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO   X  s    1557 r"   c                 "    | j                         S rJ   r  rl   s    r    rO   rO   Y  s    !%%' r"   c                     | dz   S r   rK   rl   s    r    rO   rO   Z  r  r"   c                      yr  rK   rl   s    r    rO   rO   Z  r  r"   c                     t        dddgi      }t        j                  t        d      5  |j	                  | d       d d d        y # 1 sw Y   y xY wr  r  r  s     r    test_listlike_lambda_raisesr  T  r  r  c            	      @   t        t        t        j                  j	                  d      j                  d            g dt        ddd      d      } | dd	g   j                  t        d
      }t        | dd	g   j                         D cg c]  }|d
d  	 c}      }t        j                  ||       | ddg   j                  t        d
      }t        | ddg   j                         D cg c]  }|d
d  	 c}      }t        j                  ||       y c c}w c c}w )Nra   r`   )rs   r   ofwordsz
2016-10-01h)r|   freq)rs   r   r_   rs   r   r   rn   r_   )r   r   r   r4  r5  r6  r
   r<   tuplerl  r=   r>   r  s       r    test_with_listlike_columnsr%  d  s   			--a0@@CD-\13?	

B c
^!!%a!0Fb#sn&?&?&ABquBCH68,d_""5q"1Fb#to&@&@&BCquCDH68, C Ds   D,Dc                     t        t        ddgdgg      t        dgddgg      d      } t        j                  ddg      | _        | j                  d	 d
      }t        g dgg| j                        }t        j                  ||       y )Nrs   r   qzrj  rL   )r-  j0)r.  j1c                 B    | d   D cg c]  }|| d   v s| c}S c c}w )NrM   rN   rK   )r  els     r    rO   z;test_with_listlike_columns_returning_list.<locals>.<lambda>|  s"    C"K"B#c(N2"K "Ks   r   rn   r   )r   r   r   from_tuplesr@   r<   r=   r>   r   s      r    )test_with_listlike_columns_returning_listr.  w  s    	#scU 346C53PS*BU;VW	XB%%|\&BCBHXXKRSXTFrC5k2H68,r"   c                  *   t        ddgddgt        d      t        d      gd      } | j                  d d	
      }t        | j	                         D cg c]  }|j
                  |j                  f c}      }t        j                  ||       y c c}w )Nr   r$  r   rL  z2017-11-29 03:30:00z2017-11-29 03:45:00)numberstringr   c                 2    | j                   | j                  fS rJ   )r0  r1  r  s    r    rO   z1test_infer_output_shape_columns.<locals>.<lambda>  s    3::szz": r"   r   rn   )	r   r	   r<   r   rl  r0  r1  r=   r>   r  s       r    test_infer_output_shape_columnsr3    s     
Cjen/0/0	
	
B XX:XCFR]]_E!((+EFH68, Fs   Bc                     t        t        j                  j                  d      j	                  d      g d      } | j                  d d      }t        | j                         D cg c]  }g d c}      }t        j                  ||       | j                  d	 d      }t        | j                         D cg c]  }ddg c}      }t        j                  ||       y c c}w c c}w )
Nra   )r   r   r   r   c                 
    g dS r   rK   rl   s    r    rO   z:test_infer_output_shape_listlike_columns.<locals>.<lambda>  r   r"   r   rn   r   c                 
    ddgS Nr   ra   rK   rl   s    r    rO   z:test_infer_output_shape_listlike_columns.<locals>.<lambda>  
    A r"   
r   r   r4  r5  r6  r<   r   rl  r=   r>   r  s       r    (test_infer_output_shape_listlike_columnsr:    s     

		a 008/
B XX)X2F"--/:Qy:;H68,XX&QX/Fr}}7!1v78H68, ; 8s   'C#:C(c                 (    t        dg dit        d            }|j                   fdd      }t        |j	                         D cg c]  }t        j                          c}|j                        }t        j                  ||       y c c}w )Nrs   r   r   r   c                 .    t        j                        S rJ   )r   ones)r  r  s    r    rO   zBtest_infer_output_shape_listlike_columns_np_func.<locals>.<lambda>  s    "''#, r"   r   rn   )
r   r   r<   r   rl  r   r=  r@   r=   r>   )r  r   rC   rj  rD   s   `    r    0test_infer_output_shape_listlike_columns_np_funcr>    sk     
C#4;	7BXX.QX7FR]]_=rwws|=RXXNH68, >s   	Bc                  0   t        t        d      t        d      t        d      t        d      gg dg dg dd      } d	 }| j                  |d
      }t        | j	                         D cg c]  }d c}      }t        j                  ||       y c c}w )Nz
2010-02-01z
2010-02-04z
2010-02-05z
2010-02-06)r   r   r`   r   )r   r   r`   ra   )r   ra   r   r`   )rs   r   r   rE   c                      y)Nr   ra   rK   rl   s    r    funzDtest_infer_output_shape_listlike_columns_with_timestamp.<locals>.fun  s    r"   r   rn   rA  )r   r	   r<   r   rl  r=   r>   )r   rB  rC   rj  rD   s        r    7test_infer_output_shape_listlike_columns_with_timestamprC    s    	 ,',',','	 
	

B XXcX"Fr}}7!v78H68, 8s   ,	Blstr   c                 ,    t        t        j                  j                  d      j	                  d      g d      }|j                   fdd      }t        |j                         D cg c]  }  c}      }t        j                  ||       y c c}w )Nra   )r`   r   r   r   c                     S rJ   rK   )rM   rD  s    r    rO   z3test_consistent_coerce_for_shapes.<locals>.<lambda>  s     r"   r   rn   r9  )rD  r   rC   rj  rD   s   `    r    !test_consistent_coerce_for_shapesrG    sr     

		a 008/
B XXm!X,FBMMO4qs45H68, 5s   *	Bc                     | }|j                  d d      }| j                  dddd      }t        j                  ||       |j                  d	 d      }|ddg   }t        j                  ||       y )
Nc                 $    t        g dg d      S )Nr   )testothercolsr   r   rl   s    r    rO   z'test_consistent_names.<locals>.<lambda>  s    &*CD r"   r   rn   rJ  rK  rL  r   r   c                 $    t        ddgddg      S )Nr   ra   rJ  rK  r   rM  rl   s    r    rO   z'test_consistent_names.<locals>.<lambda>  s    1vfg5F G r"   )r<   renamer=   rT   r   s       r    test_consistent_namesrP    s    	BXXD1  F #))78 * H &(+XXGaXPF)*H&(+r"   c                     | }|j                  d dd      }|j                         }g d|_        t        j                  ||       y )Nc                 
    g dS r   rK   rl   s    r    rO   z"test_result_type.<locals>.<lambda>  r   r"   r   r   r   r   r   ra   r<   r   r   r=   rT   r   s       r    test_result_typerU    sA     
BXX)xXHFwwyH H&(+r"   c                     | }|j                  d dd      }|ddg   j                         }ddg|_        t        j                  ||       y )Nc                 
    ddgS r7  rK   rl   s    r    rO   z/test_result_type_shorter_list.<locals>.<lambda>  r8  r"   r   r   r   r   r   r   rT  r   s       r    test_result_type_shorter_listrX    sP     
BXX&QHXEF3*~""$H1vH&(+r"   c                     |dk(  r;t         j                  j                  d      }|j                  j	                  |       | }|j                  d dd|      }|j                         }t        j                  ||       y )Nr$   z(numba engine doesn't support list returnr.   c                 
    g dS r   rK   rl   s    r    rO   z,test_result_type_broadcast.<locals>.<lambda>  s    ) r"   r   r   r5   r   r,   	r)   r6   r7   r8   r9   r<   r   r=   rT   )r!   r+   r,   r6   r   rC   rD   s          r    test_result_type_broadcastr]    st     {{  (R S%	BXX!V  F wwyH&(+r"   c                    |dk(  r;t         j                  j                  d      }|j                  j	                  |       | }g d|j                  fddd|      }|j                         }t        j                  ||       y )	Nr$   <numba Series constructor only support ndarrays not list datar.   rK  r  r  c                 "    t        g d      S Nr   r   rM  rM   r   s    r    rO   z8test_result_type_broadcast_series_func.<locals>.<lambda>  s    &'2 r"   r   r   r[  r\  r!   r,   r+   r6   r   rC   rD   r   s          @r    &test_result_type_broadcast_series_funcre    s     {{  Q ! 
 	%	B'GXX2	  F wwyH&(+r"   c                     |dk(  r;t         j                  j                  d      }|j                  j	                  |       | }|j                  d d|      }|j                         }t        j                  ||       y )Nr$   r_  r.   c                 4    t        g d| j                        S rb  )r   r@   rl   s    r    rO   z0test_result_type_series_result.<locals>.<lambda>%  s    y @ r"   r   r4   r\  )r!   r,   r+   r6   r   rC   rD   s          r    test_result_type_series_resultrh    sr     {{  Q ! 
 	%	BXX@qQWXXFwwyH&(+r"   c                    |dk(  r;t         j                  j                  d      }|j                  j	                  |       | }g d|j                  fdd|      }|j                         }|_        t        j                  ||       y )Nr$   z:no support in numba Series constructor for list of columnsr.   r`  c                 "    t        g d      S rb  rM  rc  s    r    rO   z<test_result_type_series_result_other_index.<locals>.<lambda>6  s    y @ r"   r   r4   )
r)   r6   r7   r8   r9   r<   r   r   r=   rT   rd  s          @r    *test_result_type_series_result_other_indexrk  *  s     {{  O ! 
 	%	B'GXX@qQWXXFwwyHH&(+r"   boxc                     t        |       S rJ   )r   rl   s    r    rO   rO   >  s
    tAw r"   c                     t        |       S rJ   )r$  rl   s    r    rO   rO   >  s
    %( r"   c                 0    t        j                  | d      S )Nr   r   )r   r   rl   s    r    rO   rO   >  s    bhhq6P r"   )r   r$  r   c           	      X    |}|j                   fdd      }t        |j                         D cg c]  }  ddg       c}      }t        j                  ||       |j                   fddd      }|dd	g   j                  d
dd      }t        j                  ||       y c c}w )Nc                      ddg      S r7  rK   rM   rl  s    r    rO   z,test_consistency_for_boxed.<locals>.<lambda>E      QF r"   r   rn   ra   c                      ddg      S r7  rK   rr  s    r    rO   z,test_consistency_for_boxed.<locals>.<lambda>I  rs  r"   r   r   r   r   r   r   r   )r<   r   rl  r=   r>   rO  rT   )rl  r!   r   rC   rj  rD   s   `     r    test_consistency_for_boxedru  <  s     
BXX+!X4FBMMO<qsAq6{<=H68,XX+!XJF"C:.55AA>N5OH&(+ =s   B'c                    | dv rdnd}t        j                  d      5  t        j                  |      }t        j                  |      }|j	                         }|j                  t         j                  |       }t        j                  ||       |j                  t         j                  g|       }|j	                         }| dv r(t        j                  |j                  dgg      |_
        n't        j                  |j                  dgg      |_        t        j                  ||       |j                  t         j                  t         j                  g|       }t        ||g|      }| dv r)t        j                  |j                  ddgg      |_
        n(t        j                  |j                  ddgg      |_        t        j                  ||       d d d        y # 1 sw Y   y xY w)	N   r@   r   r   r   r0   r1   rn   r;   absolute)r   r:   absr;   r   r<   r=   rT   r   from_productr   r@   r   )r5   rB   
other_axisf_absf_sqrtrD   rC   s          r    test_agg_transformr~  N  s   l*J		" 0{#% ;;=""277"6
fh/ ""BGG94"8;;=<)668K8KfX7VWH'44k6G6G&5RSHN
fh/
 ""BFFBGG#44"@ufoJ?<)66$$z6&:; H (44""Z$89HN 	fh/?0 0 0s   F8G  G)c                      t        t        d      dd      } | j                  ddg      }t        ddgddgdddgddg	      }t        j                  ||       y )
Nr   r   rr  rs  r   r`   r   r   r/  )r   r   rv   r=   rT   r   s      r    	test_demor  s  s_    	q*	+BVVUEN#F!fAq6"S#JuenH &(+r"   c                     t        t        d      dd      } | j                  ddgddgd      }t        ddt        j                  gdt        j                  d	gdd
dgg d      }t        j                  |j                  |      |       y )Nr   r   rr  rs  r         @r        @g      9@r   r   )rs  rr  r   r/  )r   r   rv   r   r   r=   rT   reindex_liker   s      r    test_demo_dict_aggr  ~  s    	q*	+BVV5%.u~>?FC RVVT':;c
#H
 &--h7Br"   c                     dddgi} t        |       }|j                  ddi      }t        ddi      }t        j                  ||       |d   j                  ddi      }t        ddid      }t        j                  ||       y )NrY  r   rL  countra   rX  )r   rv   r   r=   r>   )rw   r   rC   rD   s       r    !test_agg_with_name_as_column_namer    s    UEN#D	4B VVVW%&Fvqk"H68, Z^^VW-.Fvqk/H68,r"   c                  >   t        g dg dg dd      } t        ddgddgd	d
gdddg      }| j                  ddg      }t        j                  ||       | g d   j                  ddg      }|g d   j	                  ddg      }t        j                  ||       y )Nr   r   r$        @r   rL  bazr   r   r   r         @rL  	foobarbazrr  r   r   )r   r   r   )r   rv   r=   rT   reindex)mdfrD   rC   s      r    test_agg_multiple_mixedr    s    
 &	
C Qs%	

 enH WWeU^$F&(+!%%uen5F (00%@H&(+r"   c            	      `   t        g dg dg dt        dd      d      } d}t        j                  t        |	      5  | j                  d
dg       d d d        t        j                  t        |	      5  | g d   j                  dd
g       d d d        y # 1 sw Y   FxY w# 1 sw Y   y xY w)Nr   r  r  rz   r   r{   r   r   r   rW   does not support reductionr  rr  r   )rW   r   r   r   )r   r
   r)   r  	TypeErrorrv   )r  msgs     r    test_agg_multiple_mixed_raisesr    s    
 &J2		
C 'C	y	,    
y	, 6 !%%uen56 6   6 6s   B6B$B!$B-c                    | dv rdnd}|j                   |   j                         d d j                         \  }}t        j                  |j                  |       |j                  |       |j                  |       gd      }g d|_        | dv r|j                  n|}|j                  g d|       }t        j                  ||       |d|di}|j                  ||       }t        |j                  |      |   j                         |j                  |      |   j                         g||g	      }t        j                  ||       |dg|dgi}|j                  ||       }t!        |t        |j                  |      |   j                         gdg	      |t        |j                  |      |   j                         gdg	      i      }| d
v r|j                  n|}t        j                  ||       |ddg|ddgi}|j                  ||       }t        j                  |t        |j                  |      |   j                         |j                  |      |   j                         gddg	      |t        |j                  |      |   j                         |j                  |      |   j                         gddg	      id      }| d
v r|j                  n|}t        j                  ||       y )Nrw  r   r   ra   rn   )r?   rs  r   r?   r   r   >   r   r   rs  )axesuniquesort_valuesr   concatr?   rs  r   r   r   rv   r=   rT   r   r   r>   r   )r5   rB   r{  name1name2rD   rC   r   s           r    test_agg_reducer    s   l*J##J/668!<HHJLE5 yy$'OOO&OOO&	

 H .H!\1xzzxH__3$_?F&(+ 65%(D__T_-FOOJ'.335OOJ'.224	
 enH 68, F8UUG,D__T_-F6;??:6u=BBDEfXV6;??:6u=AACDUGT	
H "^3xzzH&(+ FE?EE5>:D__T_-Fyy6OOJ/6;;=OOJ/6::< uo 6OOJ/6::<OOJ/6::< en	
  #H& "^3xzzH&(+r"   c            	          t        g dg dg dt        dd      d      } | j                  d      }t        d	d
dt	        d      g| j
                        }t        j                  ||       | j                  dg      }t        d	d
dt	        d      j                  d      ggdg| j
                        }t        j                  ||       d}t        j                  t        |      5  | j                  d       d d d        | g d   j                  d      }t        g dg d      }t        j                  ||       d}t        j                  t        |      5  | j                  dg       d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r  r  rz   r   r{   r  rr  r   r   rL  r   nsrd  r  r  r   r   )r   r  r  )r   r
   rv   r   r	   r   r=   r>   as_unitrT   r)   r  r  )r   rC   rD   r  s       r    test_nuiscance_columnsr    sX   	 &J2		

B VVE]Fq#ui
&;<BJJOH68,VVUG_F
S%:.66t<	=>g

H
 &(+
&C	y	, 
u  $$U+F+?CH68,
&C	y	, 
w   s   (E8F8FFhowc                    t        g ddt        j                  dgg dd      } t        ||       ddi      }t	        ddi      }t        j                  ||        t        ||       dd	i      }t	        dd
i      }t        j                  ||        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       t        j                  ||d        t        ||       d      }|j                         }t        j                  ||       y )NNra   r   r   r  r   NrL  r   r   r  ra   sizer   )r  r  Trt  )	r   r   r   r   r   r=   r>   rT   r  )r  r   rC   rD   result1result2s         r    test_non_callable_aggregatesr  3  sW    
#rvvs!3:NO
B
 WRsGn-FsAhH68, WRsFm,FsAhH68, gb#01Ggb#w&7w>OPG a(a(a(	
H '7t<'8= WRg&FxxzH68,r"   c                 :   t        g ddt        j                  dgg dd      } t        ||       d|      }|dv r%t	        |j
                  d	   |j                  
      }n$t	        |j
                  d   |j                  
      }t        j                  ||       y )Nr  r   r  r  r   r  rn   )r   r@   r   r   r   )
r   r   r   r   r   rb   r   r@   r=   r>   )r  r5   r   rC   rD   s        r    test_size_as_strr  `  s     
#rvvs!3:NO
B
 WRf40F|"((1+RZZ8"((1+RXX668,r"   c                  T   t        g ddt        j                  dgg dd      } d }| j                  |      }t	        ddgdgdd	ggg d
      }t        j                  ||       | j                  |g      }|j                  d      j                  }t        j                  ||       y )N)ra   ra   r   g      ?r  r   c                 P    t        | j                         j                               S rJ   )r   dropnar  )	group_cols    r    r   z&test_agg_listlike_result.<locals>.funct  s    I$$&--/00r"   ra   r   r   rL  r   r   )
r   r   r   rv   r   r=   r>   to_framer   rT   )r   r   rC   rD   s       r    test_agg_listlike_resultr  p  s    	#rvvs);BVW	XB1 VVD\F1vuuen5_MH68,VVTF^F  (**H&(+r"   zargs, kwargs)r   r      rA  rP   r   rK   rs   r   r   c                     dd}t        ddgddgg      }| dk(  rt        ddg      }nt        d	d
g      } |j                  || g|i |}t        j                  ||       y )Nr   c                 4    | j                         ||z   |z  z   S rJ   r  )rM   rs   r   r   s       r    rH  ztest_agg_args_kwargs.<locals>.f  s    uuw!a%1$$r"   r   ra   r`   r   r  g      @r  g       @)r   r   r   rv   r=   r>   )r5   rQ   kwargsrH  r   rD   rC   s          r    test_agg_args_kwargsr    so    % 
QFQF#	$Bqy3*%3*%RVVAt-d-f-F68,r"   num_cols)ra   r   r   c                 ^   |dk(  r;t         j                  j                  d      }|j                  j	                  |       t        j                  g d      }|j                         }t        d|t        |             }|j                  d |       |j                  |j                  k(  sJ y )	Nr$   z*numba engine only supports numeric indicesr.   )z
1950-06-30z
1952-10-24z
1953-05-29r   rd  c                     | S rJ   rK   rl   s    r    rO   z,test_frequency_is_original.<locals>.<lambda>  r  r"   r3   )r)   r6   r7   r8   r9   r   DatetimeIndexr   r   r   r<   r#  )r  r,   r+   r6   r@   originalr   s          r    test_frequency_is_originalr    s     {{  (T U%GHEzz|H	1E5?	;BHH[H(::&&&r"   c                 ^   | dk(  r;t         j                  j                  d      }|j                  j	                  |       t        dd      t        dd      t        dd      g}t        g d	|
      }|j                  d d|       }t        ||      }t        j                  ||       y )Nr$   z0numba engine doesn't support non-numeric indexesr.   z2019-03-15 12:34:31.909000+0000rh   ri   z2019-03-15 12:34:34.359000+0000z2019-03-15 12:34:34.660000+0000rS  )rw   r@   c                     | j                   S rJ   rX  rl   s    r    rO   z.test_apply_datetime_tz_issue.<locals>.<lambda>  s
     r"   r   r4   )r@   rw   )r)   r6   r7   r8   r9   r	   r   r<   r   r=   r>   )r,   r+   r6   
timestampsr   rC   rD   s          r    test_apply_datetime_tz_issuer    s     {{  E ! 
 	% 	3>3>3>J
 
		4BXX&QvX>FJZ8H68,r"   r   r   rE   r   method)rr  rs  r   c                     |dk(  rd}nd}|s6t        j                  t        |      5   t        | |              d d d        y  t        | |              y # 1 sw Y   y xY w)Nr   z>can only concatenate str \(not "int"\) to str|does not supportz4not supported between instances of 'str' and 'float'r  )r)   r  r  r   )r   r  using_infer_stringr  s       r    test_mixed_column_raisesr    s`     OD]]9C0 	"GB!	" 	" 	F	" 	"s   AAr  r   c                     t        d| ggddg      }|j                  d       }|j                  }t        j                  ||       y )Nr   rs   r   r   c                     | j                   S rJ   r   rl   s    r    rO   z"test_apply_dtype.<locals>.<lambda>  s
     r"   )r   r<   dtypesr=   r>   )r  r   rC   rD   s       r    test_apply_dtyper    sB     
S#J<#s	4BXX'(FyyH68,r"   c                    t        t        d      t        dd      d      }|j                         }d }|j                         }|dxx   dz  cc<   t        j                  |      5  |j                  |d      }d d d        t        j                  |       |s| rt        j                  ||       y t        j                  ||       y # 1 sw Y   QxY w)Nd      r  c                 l    | j                   }| j                  dxx   dz  cc<   | j                   |usJ | S )Nrs   r   )_mgrr   )r  mgrs     r    r   z!test_apply_mutating.<locals>.func  s4    hhxxs"""
r"   rs   r   rn   )r   r   r   r=   assert_cow_warningr<   rT   )using_array_managerusing_copy_on_writewarn_copy_on_writer   df_origr   rD   rC   s           r    test_apply_mutatingr    s    	s%S/:	;BggiG wwyHSMQM			1	2 ($Q'( &(+1 	b'*
b&)( (s   'CCc                      t        ddgddgddgddgd	d
ggddg      } | j                  d d      }t        g g dt              }t	        j
                  ||       y )Nr   ra   r   r`   r   r   r   r   r   r   rs   r   r   c                     g S rJ   rK   rl   s    r    rO   z.test_apply_empty_list_reduce.<locals>.<lambda>  r   r"   r   r   r  r   )r   r<   r   r  r=   r>   r   s      r    test_apply_empty_list_reducer    sd    	QFQFQFQFQG<sCj	QBXXlX9FBR(7H68,r"   c                 6   | dk(  r;t         j                  j                  d      }|j                  j	                  |       t        ddggdz  ddg	      }|j                  d
d d g|       }t        g dg ddg d      }t        j                  ||       y )Nr$   z;numba engine doesn't support list-likes/dict-like callablesr.   r`   r   r   r   r   r   r   c                 "    | j                         S rJ   r  rl   s    r    rO   z,test_apply_no_suffix_index.<locals>.<lambda>  s     r"   c                 "    | j                         S rJ   r  rl   s    r    rO   z,test_apply_no_suffix_index.<locals>.<lambda>  s    AEEG r"   r3   )r  r  r  )   r  r  r   )r   r  r  r   )	r)   r6   r7   r8   r9   r   r<   r=   rT   )r,   r+   r6   pdfrC   rD   s         r    test_apply_no_suffix_indexr    s    {{  P ! 
 	%
aVHqL3*
5CYY02CDVYTF.6UH &(+r"   c                     | dk(  rt        j                  d       t        dddgi      }|j                  d | dd	      }t	        ddg      }t        j                  ||       y )
Nr$   z No object dtype support in numbar   aabbbc                     | d   S r   rK   rl   s    r    rO   z/test_apply_raw_returns_string.<locals>.<lambda>  r   r"   r   T)r,   r5   rG   )r)   rS   r   r<   r   r=   r>   r,   r   rC   rD   s       r    test_apply_raw_returns_stringr    s^    67	C$'	(BXXnV!XFFtUm$H68,r"   c                      t        g dd      } d }d|ddg}| j                  |      }t        g dg d	g d
dg d      }t        j                  ||       y )N))r   r   r   )ra   r   r   )r   r   r   )r`   r   r`   )r   r   r   )r   r   r   )att1att2att3r   c                 (    | j                         dz  S r   r  r   s    r    sum_div2z4test_aggregation_func_column_order.<locals>.sum_div2%  s    uuw{r"   r   r  rr  )g      5@g      %@r  r   )g      2@g      "@r  r  )g      1@g      !@r  r  )r   r  r  rr  r   ru   )r   r  aggsrC   rD   s        r    "test_aggregation_func_column_orderr    si     
	
 )

B 8We,DVVD\F*))	

 2H &(+r"   c                 "   | dk(  r;t         j                  j                  d      }|j                  j	                  |       t        g dg dd      }|ddg   j                  d d	| 
      }t        g d      }t        j                  ||       y )Nr$   z2numba engine not supporting duplicate index valuesr.   rS  r   r  rs   c                 @    | j                   d   | j                   d   z   S )Nr   r   )r)  rl   s    r    rO   z+test_apply_getitem_axis_1.<locals>.<lambda>>  s    !&&)affQi' r"   r   r4   )r   ra   r`   )
r)   r6   r7   r8   r9   r   r<   r   r=   r>   )r,   r+   r6   r   rC   rD   s         r    test_apply_getitem_axis_1r  5  s    {{  G ! 
 	%	3	4Bc
^!!'a " F i H68,r"   c                      d } t        dg di      }t        j                  t        d      5  |j	                  | g       d d d        y # 1 sw Y   y xY w)Nc                 L    t        j                  d       | j                         S )NHello, World!)warningswarnr   rl   s    r    expected_warningzDtest_nuisance_depr_passes_through_warnings.<locals>.expected_warningL  s    o&uuwr"   rs   r   r  r  )r   r=   assert_produces_warningUserWarningrv   )r  r   s     r    *test_nuisance_depr_passes_through_warningsr  D  sM     
C#	$B		#	#K	G #
 !"# # #s   A

Ac            	         t        ddt        gdt        ddd      t        j                  gdg d      } | j                  t        d	
      }t        t        t        d      }t        j                  ||       | j                  t        d
      }t        t        t        t        d      }t        j                  ||       y )Nr   r1  g      ?i  r   )ro  rp  r   r   r   rn   )
r   r   r   r   r   r<   typer   r=   r>   r   s      r    test_apply_typer  U  s    	Xu%htQ6JBFF/ST
B XXdX#Fvv67H68, XXdX#FFf=>H68,r"   c                     t        ddgddgd      }|j                  d      j                  d d|       }t        g t        j
                        }t        j                  ||       y )	Nr   ra   r   r   r  c                 &    t        | d   | d         S )Nrs   r   )rs  rl   s    r    rO   z/test_apply_on_empty_dataframe.<locals>.<lambda>j  s    AcFAcF(; r"   r4   r   )r   headr<   r   r   r   r=   r>   r  s       r    test_apply_on_empty_dataframer  g  sY    	!Qq!f-	.BWWQZ;!FSFb

+H68,r"   c                      t        ddgddgd      } | j                  d       }t        ddggddggd      }t        j                  ||       y )Nr   ra   r   r  c                     | j                   gS rJ   )r   rl   s    r    rO   z(test_apply_return_list.<locals>.<lambda>q  s    
 r"   r   r   s      r    test_apply_return_listr  o  sS    	!Qq!f-	.BXX*+FAx1vh78H&(+r"   ztest, constant)r   r   r   )ra   ra   ra   c                     t        |       }t        |ddgd      }ddd}|j                  |      }t        j                  ||       y )Nrs   r   r  )rw   r@   r   r  r  r  )rJ  constantdf1rD   aggregationrC   s         r    test_unique_agg_type_is_seriesr  v  sG     D/C8C:XFH x0KWW[!F68,r"   c                  6   t        g dg dg dd      } t        g d      }t        j                  | j	                  d      |       | j                  dd      }t        j                  ||       | j                  dd      }t        j                  ||       y )	N)r   ra   r   )r   ra   r   )r   r   r   r   )TTFr   rn   r   )r   r   r=   r>   r   r<   r  s      r    /test_any_apply_keyword_non_zero_axis_regressionr    sz    	C	DB)*H266q6>84XXe!X$F68,XXeQF68,r"   c                  b   t        dg di      } dd}dd}| j                  |ddd      }| d	z   }t        j                  ||       d
}t        j                  t
        |      5  | j                  ||gddd      }d d d        t        ddgddgddggddgddgg      }t        j                  ||       t        j                  t
        |      5  | j                  d|iddd      }d d d        t        g ddg      }t        j                  ||       y # 1 sw Y   xY w# 1 sw Y   <xY w)NrM   r   r   c                     | |z   |z   S rJ   rK   )rM   rs   r   s      r    foo1z.test_agg_mapping_func_deprecated.<locals>.foo1      1uqyr"   c                     | |z   |z   S rJ   rK   )rM   r   r   s      r    foo2z.test_agg_mapping_func_deprecated.<locals>.foo2  r  r"   r   r`   )r   r   z+using .+ in Series.agg cannot aggregate andr  r   r   r   r  r  r   )ra   r   r`   )r   r   )ra   r   )r   rv   r=   rT   r  FutureWarning)r   r  r  rC   rD   r  s         r     test_agg_mapping_func_deprecatedr    s1   	C#	$B VVD!Q!V$FAvH&(+
7C		#	#M	= 1taa01
Q!Q"b"c3Z&&9I,JH &(+ 
	#	#M	= 0dQQ/0SE2H&(+1 10 0s   %DD%D"%D.c                  H   t        t        j                  d      j                  dd      ddg      } t	        j
                  t        d      5  | j                  t        j                        }d d d        t        d	d	d
t              }t	        j                  |       t	        j
                  t        d      5  | j                  t        j                  g      }d d d        t        d	d	d
dg      }t	        j                  ||       y # 1 sw Y   xY w# 1 sw Y   =xY w)Nr   r   ra   r   r   r   zusing DataFrame.stdr  r$  r   r   zusing Series.stdstdr   )r   r   r   r   r=   r  r  rv   r  r   r   r>   rT   r   s      r    test_agg_stdr    s    	299Q<''1-Sz	BB		#	#M9N	O   Cc*%8H68,		#	#M9K	L "!"s-eW=H&(+   
" "s    D;!DDD!c                      t        g ddt        j                  dgg dd      } g d| _        | j	                  ddi      }| d   j                         }t        j                  ||       y )	Nr  r   r  r  r   )r   r   r   r   r  )r   r   r   r   rv   r  r=   r>   r   s      r    (test_agg_dist_like_and_nonunique_columnsr    s\    	#rvvs!3:NO
B !BJVVS'N#F#w}}H68,r"   )r   r  numpyr   r)   pandas.compatr   pandas.core.dtypes.dtypesr   pandasr   r   r   r   r	   r
   pandas._testing_testingr=   pandas.tests.frame.commonr   pandas.util.versionr   fixturer!   r(   r6   
single_cpur,   rF   parametrizerU   re   rq   rx   r   r;   r?   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   filterwarningsr  r  r  r  r%  r'  r+  r1  r;  rJ  rU  r[  r^  re  rm  rw  r  r  r  r  r  r  r  r  r  r   r  r  r   r  r  r  r  r  r  r  r%  r.  r3  r:  r>  rC  rG  rP  rU  rX  r]  re  rh  rk  ru  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  rK   r"   r    <module>r'     s
       ) 6    0 ' 
 
 ,&,,wfkk>T>T"UVW X1, !Q(u., / ),<, $aS)*Y|-NPT,UV,	,
, "''277!34 5	-,, !>?- @-
--,,,"
,&, !Q(G )G !Q(- )-, !Q(> )>,-- 4534
[,-J3G   u.!Q(1 ) / 5 61 ),-,/
-
-	,-D1,h--,-=  u~'789&)u+@AB	
 
QFQF#	$f!laL-I&JK		/		/
,&, /0
- 1
-,'(.,, D"&& 9:	- ;	-" 
	9cAq6]+CD
		3A-(@A
 	!8VS!H-=>
 	!5&#q*:;5"&&"345sI&.HI	
 5"&&"345sI&.HI	

 {	Xy#1v'?@
{	UFC8$45!*&+*& 		o	 	ubff/01	k	##-(-, 
	Hi1BQF0K&LM
	E9.?!Q-H#IJ
	h	3*ZL(QR
	eYaSz*%NOBFF-.sI&.HI	
 BFF-.sI&.HI	
 k*1v1v&#sj*=U0VW	
 +&sQFmj*%=>	
):&;:& 				)*	+&	##-&--$-  A'- (--0 QF 34	- 5	-,",,,,(,,$ 	*,PQ"  

,

,"0J,	C- ,86(B,J!H  01)- 2)-X  01- 2-,  !Q(	B	R		Qx	11	11	111%&- )-  Y/	' 0	'-* 	d3**M NOP#89
 : Q
 CsBFF ;<- =-*6-, -,>-#"-$-, y	)!+EFy	)!A3+?@--
-,>,	-r"   