
    .ie                     	   d dl Zd dlZd dlZd dlmZmZmZmZm	Z	m
Z
 d dlmZ d Zej                  j!                  dddg      d        Zej                  j!                  dd d	g      d
        Zej                  j!                  dddg      d        Zej                  j!                  dddg      ej                  j!                  d edddej(                  gd       eddgi edgd            f edej(                  gde       eddgi edgd            fg      d               Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d  Z!ej                  j!                  d!d"g e	d#d$%      d&gd'd"g e	d#d$%      d&gd'd"g e	d#d$%      d&gd'fg d( e	d)d*%       e	d#d$%       e	d+d,%      gg d-d'd"d.g e	d)d*%       e	d#d$%      gd&d/gd'd"d.g e	d+d,%       e	d#d$%      gd0d/gd'fg      d1        Z"ej                  j!                  d2d e	d3d4%      dgd e	d5d4%      d6gg      d7        Z#ej                  j!                  d8 ejH                  d9d:gd;       ejH                  d&d/gd<       ejJ                  d=d>g       ejL                  d&d/gd?@      g      ej                  j!                  dAg dB      dC               Z'dD Z(ej                  j!                  dEdFd	d gfdFd g fdFd&d d/gfdFdGg dHfdId	d&gfdId g fdId&d&d/gfdIdGg dHfg      ej                  j!                  dJdg d"gd.gd"d.gg      dK               Z)dL Z*dM Z+dN Z,ej                  j!                  dOg dP      dQ        Z-ej                  j!                  dOg dP      dR        Z.dS Z/dT Z0ej                  j!                  dg dU      dV        Z1ej                  j!                  dW e2dd0d/      g dXg e2ddY      g dZg e2dd/       e2dYd      gg d[gd d& e2dYd      gg d[gg      d\        Z3d] Z4d^ Z5d_ Z6d` Z7da Z8ej                  js                  db      dc        Z:dd Z;ej                  j!                  ded6d6gd6dfgf      ej                  j!                  dOg dg      dh               Z<ej                  j!                  di e	dj       e	dk      fdlg      dm        Z=y)n    N)	DataFrameIndex
MultiIndexSeries	Timestampisnac                    | j                  d      }|j                         }| j                  ddgg df   }t        ddgd      |_        |j                         }t        j                  ||       |j                  d      }| j                  ddg   }t        j                  ||       |j                         }| j                  dd	gg df   }t        ddgd      |_        t        j                  ||       |j                  d
      }| j                  dd	g   }t        j                  ||       |j                  d      }| j                  ddg   }t        j                  ||       |d   j                          |d   j                          |d   j                  d       | j                         } t        j                  | j                  | d   dk(  df<   | j                  d      }t        |d   j                         d         sJ t        |d   j                         d         sJ t        |d   j                  d      j                  d         sJ t        dt        j                  gddgddggddg      } | j                  d      }|j                         }| j                  ddg   j!                  d      }t        j                  ||       | j                  ddg   }|j                  dd      }t        j                  ||       y )NA   r   )BCDbarfooname            r         columnsanydropna)groupbyfirstlocr   index
sort_indextmassert_frame_equalnthlastiloccopynpnanr   r   	set_index)dfgroupedr    expectedr&   r'   gresults           c/var/www/app/trading-bot/venv/lib/python3.12/site-packages/pandas/tests/groupby/methods/test_nth.pytest_first_last_nthr3      s   jjoGMMOEvvq!fo-.HE5>4HN""$H%*
++a.Cvvq!f~H#x(<<>Dvvq!fo-.HE5>4HN$)
++b/Cww1vH#x(
++a.Cww1vH#x( CLCLCLQ	B$&FFBFF2c7eS !jjoG""$U+,,,!!#E*+++  #((+,,, 
QK!Q!Q03*	EB


3AWWYFww1v((-H&(+ww1vHUU1UU#F&(+    methodr    r'   c                 8   t        g dddd|gd      j                  d      } t        ||              }| dk(  rddg}nddg}t        j                  ||d   j
                  	      }t        ddgd
      }t        d|i|      }t        j                  ||       y )Nr   r   r   r   r   r   r   abr9   r    r:   dtyper   r"   )	r   r   getattrr*   arrayr<   r   r$   r%   )r5   nulls_fixturegroupsr1   valuesidxr/   s          r2   test_first_last_with_na_objectrD   B   s     \Aq-0HIJRRSVWF$WVV$&FQQXXfF3K$5$56F
AS
!C#vc2H&(+r4   r"   r   c                     t        g dddd|gd      }|j                  d      }|j                  |       }| dk(  r|j                  ddg   n|j                  ddg   }t	        j
                  ||       y )Nr7   r   r   r   r8   r9   r   r   r   r&   r(   r$   r%   )r"   r@   r-   rA   r1   r/   s         r2   test_nth_with_na_objectrG   T   sl     
Q1m,DE	FBZZ_FZZF"'1*rww1v"''1a&/H&(+r4   c                     t        j                  dgd gd      }|j                  dd      } t        ||              }t	        j
                  ||       y )Nr9   idvaluerJ   Fas_index)r   	from_dictr   r>   r$   r%   )r5   r-   rA   r1   s       r2   test_first_last_with_NonerO   ^   sP     
		SETF;	<BZZuZ-F$WVV$&F&"%r4   zdf, expectedr9   r   rI   rK   rJ   r   r=   r;   c                 p     t        |j                  d      |              }t        j                  ||       y )NrJ   )r>   r   r$   r%   )r5   r-   r/   r1   s       r2   "test_first_last_with_None_expandedrQ   i   s.      /WRZZ%v.0F&(+r4   c            
      (   t        g dg dt        j                  j                  d      j	                  d      t        j
                  t        j                  j                  d      j	                  d      d      d      } d| d	<   d
| d<   | j                  d      }|j                         }| j                  d
dgg df   }t        ddgd      |_
        |j                         }t        j                  ||       |j                         }| j                  ddgg df   }t        ddgd      |_
        |j                         }t        j                  ||       |j                  d
      }| j                   ddg   }t        j                  ||       y )N)r   r   r   r   r   r   r   r   )onerS   twothreerT   rT   rS   rU   r      float32r;   r
   r   r   r   TEr   Fr
   r   )r   r   r   rY   rZ   r   r   r   r   r   r   )r   r*   randomdefault_rngstandard_normalr?   r   r    r!   r   r"   r#   r$   r%   r'   r&   r(   )r-   r.   r    r/   r'   r&   s         r2   test_first_last_nth_dtypesr^   }   sS   	IM&&q)99!<"))//2BB1EYW		

B BsGBsG jjoGMMOEvvq!f778HE5>4HN""$H%*<<>Dvvq!f778HE5>4HN""$H$)
++a.Cww1vH#x(r4   c                      t        t        d            } | j                  d       t        t        d      | d      }|j                  dk(  sJ |j                  d      j                         }|j                  dk(  sJ y )	N
   	      IntCol)datar"   r   int64r   level)listrangeappendr   r<   r   r    )rC   serfs      r2   test_first_last_nth_dtypes2rm      si    
uRy/CJJqM
eBis
:C99!""$A77gr4   c                  &   t        dgt        d gt              d      } | j                  d      }| j	                  d      j
                  }t        j                  |j
                  j                         |       t        j                  |j
                  j                         |       | j
                  }t        j                  |j
                  j                  d      |       t        j                  |j
                  j                  d      |       y )Nr
   r;   )rd   nansrd   r   r   )r   r   objectr   r,   ro   r$   assert_series_equalr    r'   r&   )r-   r.   r/   s      r2   test_first_last_nth_nan_dtyperr      s    	SE64&+GH	IBjj G||F#((H7<<--/:7<<,,.9wwH7<<++B/:7<<++A.9r4   c                  >   t        t        d      ddgt        d      ddgdddgd	d
dgi      } | j                  d      j                         }t        g dgt	        t        d      t        d      d	g      t	        dgd            }t        j                  ||       y )Nz2012-01-01 00:00:00r9   r:   z2012-01-02 00:00:00cdr   eaaaarl   r0   )r9   rt   rl   z
2012-01-01z
2012-01-02r   r   r"   )r   r   r   r    r   r$   r%   )testr1   r/   s      r2   test_first_strings_timestampsrz      s    +,sCj+,sCjS#JS#J		
D \\&!'')F	y.	,0GPQSE'H
 &(+r4   c                     t        dt        j                  gddgddggddg      } | j                  d      }t	        j
                  |j                  d      | j                  dd	g          t	        j
                  |j                  d      | j                  dg          t	        j
                  |j                  d	      | j                  g           t	        j
                  |j                  d
      | j                  dd	g          t	        j
                  |j                  d      | j                  dg          t	        j
                  |j                  d      | j                  g           t	        j                  |j                  j                  d      | j                  j                  dd	g          t	        j                  |j                  j                  d      | j                  j                  dg          t	        j
                  |dg   j                  d      | dg   j                  dd	g          t	        j
                  |j                  dd      | j                  dd	g          t	        j
                  |j                  d
d      | j                  dd	g          t	        j
                  |j                  dd      | j                  d d        t	        j
                  |j                  d	d      | j                  d d        y )Nr   r   r   r   r
   r   r   r   r   r   r   r   r   )r   r*   r+   r   r$   r%   r&   r(   r!   rq   r   r-   gbs     r2   test_nthr      s+   	QK!Q!Q03*	EB	CB"&&)RWWaV_5"&&)RWWaS\2"&&)RVVBZ0"&&*bggq!fo6"&&*bggqcl3"&&*bffRj124488A;		1a&(9:24488A;		1#7"cU)--*BuINNAq6,BC"&&5&1277Aq6?C"&&E&2BGGQFOD"&&5&12772A;?"&&5&12772A;?r4   c                     t        ddddddddddddddd	d
ddddddddd      j                  ddg      } | j                  dd      j                  d      }| j                  dg   }t        j                  ||       | j                  dd      j                  d      }| j                  g    }t        j                  ||       y )Ngreenredr   r   r   r   r   hameggsporkgI|?goB!gHk:!4gn2d?gC8fٓ?gW?gV,gN'r?gGĔH"g(	?)colorfoodrT   rS   r   r   r   F)rg   rM   r   r   r   )r   r,   r   r&   r(   r$   r%   r!   r-   r1   r/   s      r2   	test_nth2r      s     
 W5UK&V&I%(&&& '&'&	

& i&!"' * ZZa%Z044Q7Fwwt}H&(+ZZa%Z044Q7FvvbzH&(+r4   c                     t        t        j                  j                  d      j	                  ddd      d      } | d   }| d   }|j                  |      j                         }|j                  |      j                  d       }t        j                  ||d	
       |j                  dk(  sJ |j                  dk(  sJ ||dk(     j                  d   }|j                  d   |k(  sJ |j                  d   |k(  sJ t        j                  t        d      5  |j                  |d	      j                  dd       d d d        y # 1 sw Y   y xY w)Nr   r   r`   )d   r   re   r;   r   c                      | j                   d   S )Nr   )r(   )xs    r2   <lambda>ztest_nth3.<locals>.<lambda>  s    q	 r4   F)check_nameszFor a DataFramematch)sortTr   )r   r*   r[   r\   integersr   r    applyr$   rq   r   r(   pytestraises
ValueErrorr&   )r-   rk   r   r/   	expected2vs         r2   	test_nth3r      s1    
299((+44QHEW	UB
Q%C	AB{{2$$&HB%%&9:I9hEB==A>>Q 	B!G!A==q   >>!!!!	z):	; 8BU#''$'78 8 8s   %EEc                     t        dt        j                  gddgddggddg      } | j                  d      }|j                  j                  dd	
      }| j                  j                  ddg   }t        j                  ||       y )Nr   r   r   r   r
   r   r   r   allr   r   )	r   r*   r+   r   r   r&   r(   r$   rq   )r-   r   r1   r/   s       r2   	test_nth4r     sr    	QK!Q!Q03*	EB	CBTTXXaX&Fttyy!Q H68,r4   c                     t        dt        j                  gddgddgddgddggddg	      } | j                  d      }t	        j
                  |j                  d
      | j                  d
dg          t	        j
                  |j                  d
g      | j                  d
dg          t	        j
                  |j                  d
dg      | j                  g d          t	        j
                  |j                  d
dg      | j                  g d          t	        j
                  |j                  g d      | j                  g d          t	        j
                  |j                  g d      | j                  g d          t	        j
                  |j                  dg      | j                  dg          t	        j
                  |j                  ddg      | j                  g           y )Nr   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~   s     r2   	test_nth5r     sc   	QK!Q!Q!Q!Q@3PS*	UB	CB"&&)RWWaV_5"&&!+rww1v7"&&!Q."'',*?@"&&!R/277<+@A"&&+RWW_-EF"&&,bggo.FG"&&!+rwws|4"&&!Q."&&*5r4   c                    t        j                  ddd|       }t        d|ddg      }|j                  j                  |j                  j
                  g}|j                  |d	
      j                  g d      }t        j                  g d      j                  |       }t        dddg|      }t        j                  ||       y )Nz4/1/2014z	6/30/2014r   )startendfrequnitr   r9   r:   r"   r   FrL   )r   r   r|   r   )z2014/4/1z2014/4/4z	2014/4/29z	2014/4/30z2014/5/1z2014/5/6z	2014/5/29z	2014/5/30z2014/6/2z2014/6/5z	2014/6/27z	2014/6/30rx   )pd
date_ranger   r"   yearmonthr   r&   to_datetimeas_unitr$   r%   )r   business_datesr-   keyr1   expected_datesr/   s          r2   test_nth_bdaysr   *  s    ]]k$N 
1NS#J	?B88=="((..
)CZZeZ,00@F^^	
 gdm   S#JnEH&(+r4   c                     | j                  ddg      }|j                  d      }| j                  g d   }t        j                  ||       y )Nr
   r   r   r   r   r   r   )r   r&   r(   r$   r%   three_groupr.   r1   r/   s       r2   test_nth_multi_grouperr   F  sE     !!3*-G[[^F-H&(+r4   z#data, expected_first, expected_lastr
   z2012-02-01 14:00:00z
US/Centraltzr   rJ   timer   )r
   r   r
   z2012-01-01 13:00:00zAmerica/New_Yorkz2012-03-01 12:00:00zEurope/London)r   r   r   r   r   r   c                 F   t        |       }|j                  dd      j                         }t        |      }g d}t        j                  ||   ||          |j                  dd      d   j                         }t        j                  ||ddg          |j                  dd      j                         }t        |      }g d}t        j                  ||   ||          |j                  dd      d   j                         }t        j                  ||ddg          y )NrJ   FrL   r   r   )r   r   r    r$   r%   r'   )rd   expected_firstexpected_lastr-   r1   r/   colss          r2   test_first_last_tzr   O  s   l 
4BZZuZ-335F(H D&,7ZZuZ-f5;;=F&(D&>":;ZZuZ-224F'H D&,7ZZuZ-f5::<F&(D&>":;r4   zmethod, ts, alphaz
2013-01-01
US/Easternz
2013-01-02r:   c                    t        t        d            j                  d      }t        j                  ddd|      }t        g d||d      } t        |j                  d	      |              }t        t        j                  |d
g|j                        |t        dd      gdt        ddgd	            }|d   j                  j                  |      |d<   t        j                  ||       y )Nabccategory20130101r   r   )periodsr   r   r   r   r   )groupcategory_string
datetimetzr   rt   r;   z
2013-01-03r   )r   r   r   r   r   r=   r   )r   rh   astyper   r   r   r>   r   Categoricalr<   r   r   dtr   r$   r%   )	r5   tsalphar   r   dtir-   r1   r/   s	            r2   test_first_last_tz_multi_columnr     s     T%[)00<O
--
A,T
JC	.	

B 2WRZZ(&13F!~~O$9$9  y,GH		
 QF)H &l366>>tDH\&(+r4   rB   TFbooleanInt64z
2020-01-01z
2020-02-01r   )r   function)r    r'   minmaxc                 D   t        ddg| d      }|j                  d      }t        ddgd      }t        | d|      }t        d| i|      } t	        |d   |             }t        j                  ||       |j                  d|i      }t        j                  ||       y )	Nr   r   r8   r9   r   r:   )r   r"   r=   )	r   r   r   r   r>   r$   rq   aggr%   )	rB   r   r-   r.   rC   expected_seriesexpected_frameresult_seriesresult_frames	            r2   +test_first_last_extension_array_keeps_dtyper     s     
!Qf-	.BjjoG
AS
!CV#S9OV}C8N3GGCL(35M=/:;;X/L,7r4   c                      t        g dg dg dd      } | j                  ddg      }|j                  d      }| j                  g d   }t	        j
                  ||       y )	N)r   r   r   r   r   r   r   r   r   r   r   )rS   rS   rS   rT   rS   rS   rS   rT   rT   rT   rS   )dullr   shinyr   r   r   r   r   r   r   r   )r
   r   r   r
   r   r   r   rF   r   s       r2    test_nth_multi_index_as_expectedr     sf     7(	
*KV !!3*-G[[^F-H&(+r4   zop, n, expected_rowsheadr   r   tailr   c                     t        ddgddgddggddg      }|j                  d|	      }|j                  |   }|
||   }||   } t        ||       |      }t	        j
                  ||       y )
Nr   r   r   r   r   r
   r   r   rL   )r   r   r(   r>   r$   r%   )	opnexpected_rowsr   rM   r-   r0   r/   r1   s	            r2   test_groupby_head_tailr     s     
QFQFQF+c3Z	@B


3
*Aww}%HgJG$WQ^AF&(+r4   c                  V   t        ddgddgddggddg      } | j                  d	dg   }| j                  d      }|j                  d
      }|j	                  d	      }t        j                  ||        t        j                  ||       | j                  d      }|j                  d
      }|j	                  d	      }t        j                  ||        t        j                  ||       | j                  d      }|j	                  d	      }|j                  d
      }t        j                  ||       t        j                  ||        | j                  d      }|j	                  d	      }|j                  d
      }t        j                  ||       t        j                  ||        y )Nr   r   r   r   r   r
   r   r   r   r   )r   r(   r   r   r&   r$   r%   r   )r-   r/   r0   result1result2s        r2   test_group_selection_cacher     sZ   	QFQFQF+c3Z	@Bww1vH


3AffqfkGeeAhG'2&'8,


3AffqfkGeeAhG'2&'8,


3AeeAhGffqfkG'8,'2&


3AeeAhGffqfkG'8,'2&r4   c                  <   t        dgg d      } | j                  d      j                  d      }| j                  d d }t	        j
                  ||       | j                  ddg      j                  d      }| j                  d d }t	        j
                  ||       y )Nr   r9   r:   rt   r   r9   r`   r:   rF   r   s      r2   test_nth_emptyr   =  s    	!o	6BZZ_  $Fwwr{H&(+ZZc
#''+Fwwr{H&(+r4   c                  ~   t        g dg dddt        j                  gg dg dgg d      } | j                  d	      j	                  d
      }| j
                  d
dg   }t        j                  ||       | j                  d	      j	                  dd      }| j
                  ddg   }t        j                  ||       y )N)r   r:   r   )r   r9   2   r   r9   )r   rt      )r   ru      )r
   r   r   r   r
   r   r   r   r   r   r   r   r*   r+   r   r&   r(   r$   r%   r   s      r2   test_nth_column_orderr   I  s     
	q#rvv&6}U
B ZZ_  #Fww1vH&(+ZZ_  E 2Fww1vH&(+r4   r   )Nr   r   c                    t        t        j                  dt        j                  dt        j                  gg dg dd      }|j                  d      j	                  d|       }|j
                  dd	g   }t        j                  ||       y )
Nr9   r:   r   r   r   r   rV   )r   r   r   r   ra   r   r   r   r   r   r   r   r-   r1   r/   s       r2   test_nth_nan_in_grouperr   Y  ss     
&&#rvvsBFF3  	

B ZZ_  6 2Fww1vH&(+r4   c                     t        t        j                  dt        j                  dt        j                  gg dd      }|j                  d      d   j	                  d|       }|d   j
                  ddg   }t        j                  ||       y )	Nr9   r:   r   r8   r   r   r   r   )r   r*   r+   r   r&   r(   r$   rq   r   s       r2   test_nth_nan_in_grouper_seriesr   i  sz     
&&#rvvsBFF3 	

B ZZ_S!%%a%7F#w||QF#H68,r4   c            	         t        g ddt        j                  d      gz  t        g dd      d      } | j	                  d      j                         }t        d	t        j                  d      gz  t        g d
      j                  t        j                  g d            d      }t        g dd      |_
        t        j                  ||       y )N)r    r    secondthirdr   r   NaT)r9   r:   rt   r9   r:   r   r;   )r   r   
categoriesr   r   )r9   rt   r9   r   )r   r  )r    r   r   r   )r   r*   
datetime64r   r   r    r   r   CategoricalDtyper   r"   r$   r%   r   s      r2   ,test_first_categorical_and_datetime_data_natr  x  s    	Cu-.. !:*M	

B ZZ &&(Fu-.. 188##O4	
H 7gFHN&(+r4   c            	         t        g dg dg dg dd      } | j                  ddi      } | j                  dd	g
      j                         }t        g dt	        g d      j                  t        j                  g d            d      }t        j                  g ddd	g      |_	        t        j                  ||       y )N)r   r   r   r   r   )r   r   r   r   r   )appleorangemangor  r  )jupitermercurymarsvenusr  rX   r   r   r
   r   )by)r  r  r  )r	  r  r  )r	  r  r
  r  )r   r   ))r   r   )r   r   )r   r   )names)r   r   r   r    r   r   r  r   from_tuplesr"   r$   r%   r   s      r2   (test_first_multi_key_groupby_categoricalr    s    	 *@A		

B 
C$	%BZZC:Z&,,.F,45<<##$KL	
H  ++&sCjHN &(+r4   )r    r'   r&   c                     t        dgt              }t        |||d|gg dt              j                  d      }| dk(  r t        ||       d      }n t        ||              }t	        j
                  ||       y )	Nyr;   )r   r   r   r   r   )r"   r<   r   rf   r&   r   )r   rp   r   r>   r$   rq   )r5   r@   r/   rd   r1   s        r2   %test_groupby_last_first_nth_with_noner    s~     se6*H	}c=I gAg	 	 &v&q)&v&(68,r4   zarg, expected_rows)r   r   r   r   r|   )r   r   r   r   r   r   r   r   r   r   c                     |j                   |   }|j                  |      }| j                  |   }t        j                  ||       t        j                  ||       y )N)r&   r(   r$   r%   )slice_test_dfslice_test_groupedargr   r1   
equivalentr/   s          r2   
test_slicer    sT      ##C(F#'',J!!-0H&(+*h/r4   c                     |j                   dddd f   }|j                  ddt        dd       g      }| j                  g d   }t        j                  ||       t        j                  ||       y )Nr   r   r|   r  )r&   slicer(   r$   r%   )r  r  r1   r  r/   s        r2   test_nth_indexedr    sj      ##Aq"#I.F#''AuR(?@J!!"78H&(+*h/r4   c                     t        j                  t        d      5  | j                  d       d d d        y # 1 sw Y   y xY w)NzInvalid indexr   gQ	@)r   r   	TypeErrorr&   r  s    r2   test_invalid_argumentr!    s5     
y	8 %t$% % %s	   7A c                     t        j                  t        d      5  | j                  t	        d d d             d d d        y # 1 sw Y   y xY w)NzInvalid stepr   r   )r   r   r   r&   r  r   s    r2   test_negative_stepr#    s>     
z	8 6uT4456 6 6s   AAc                     |j                  t        j                  ddg            }| j                  g d   }t	        j
                  ||       y )Nr   r   r   )r&   r*   r?   r(   r$   r%   )r  r  r1   r/   s       r2   test_np_intsr%    sA      ##BHHaV$45F!!/2H&(+r4   c            
         t        t        j                  t        j                  dd      t        j                  dd      g      t        j                  t        j                  dd      t        j                  dd      g      gg dg dg      } t	        dt        t        |             i| 	      }|j                  ddgd
      j                  d      }g d}t        t        j                  t        j                  dd      t        j                  dd      g      t        j                  t        j                  dd      t        j                  dd      g      gg dg dg      }t	        ||dg      }t        j                  ||       y )Nr   r   r   r`      )r   r   r   r   r   )r   r   r   r   r   colr=   F)rg   observed)r   r   r   )r   r   r   )r   r   r   r   )r   r   CategoricalIndexIntervalr   ri   lenr   r&   r$   r%   )
idx_result	df_resultr1   val_expectedidx_expectedr/   s         r2   test_groupby_nth_intervalr1    s@   Q!2BKK14E FGQ!3R[[R5H IJ	
 
*+J 5%J"89LIaVe<@@CFLQ!2BKK14E FGQ!3R[[R5H IJ	
 
IL \E7KH&(+r4   z<ignore:invalid value encountered in remainder:RuntimeWarningc                     t        ddgdt        j                  gdt        j                  gdt        j                  ggddg      } t        ddggddg      }| j                  ddg      j	                  d	      }t        j                  ||       | j                  ddg      j                  d	      }t        j                  ||       | j                  ddg      j                  d
	      }t        j                  ||       y )Nr9   zr:   rt   XYr   r   r   r   	r   r*   r+   r   r   r$   r%   r   r&   r-   r/   r1   s      r2   test_head_tail_dropna_truer8    s    
 

sc266]S"&&MC=ACQT:
B 3*Sz:HZZc
#((1(-F&(+ZZc
#((1(-F&(+ZZc
#''!',F&(+r4   c                  6   t        ddgdt        j                  gdt        j                  ggddg      } t        ddgdt        j                  gdt        j                  ggddg      }| j                  ddgd	      j	                  d
      }t        j                  ||       | j                  ddgd	      j                  d
      }t        j                  ||       | j                  ddgd	      j                  d      }t        j                  ||       y )Nr9   r3  r:   rt   r4  r5  r   Fr   r   r   r   r6  r7  s      r2   test_head_tail_dropna_falser:    s    	S#JbffRVV}=Sz	RB3*sBFFmc266]CcSVZXHZZc
5Z1666;F&(+ZZc
5Z1666;F&(+ZZc
5Z1555:F&(+r4   	selectionrt   )r   r   Nc                    t        g dt        j                  ddgg dd      }|j                  d      |    }|j	                  d|      }|d	k(  s|d
k(  r| ddgk7  rddg}nddg}|j
                  || f   }t        j                  ||       y )Nr   r   r   )r   r   r   r   r9   r   r   r   r   r:   rt   r   r   )r   r*   r+   r   r&   r!   r$   assert_equal)r;  r   r-   r   r1   locsr/   s          r2   test_nth_after_selectionr?  )  s     
&&!Q	

B 
C	#BVVAfV%F6U?yS#J/F1v1vvvdIo&HOOFH%r4   rd   z2011-01-15 12:50:28.502376z2011-01-20 12:50:28.593448)l    m;-Ll    m;-Lc                     t        ddg| d      }|j                  d      }|j                  d      }t        d| d   gd      }t        j                  ||       y )Nr   r8   r9   r   )r   r   r&   r$   r%   )rd   r-   r.   r1   r/   s        r2   #test_groupby_nth_int_like_precisionrA  >  sV     
!Qd+	,BjjoG[[^FqQy12H&(+r4   )>numpyr*   r   pandasr   r   r   r   r   r   r   pandas._testing_testingr$   r3   markparametrizerD   rG   rO   r+   rp   rQ   r^   rm   rr   rz   r   r   r   r   r   r   r   r   r   r?   r   to_timedeltar   r   r   r   r   r   r   r   r  r  r  r  r  r  r!  r#  r%  r1  filterwarningsr8  r:  r?  rA   r4   r2   <module>rK     s5       /,d GV#45, 6," 1b'*, +, GV#45& 6& GV#45 SD%+@ABw(se$0GH	

 SBFF84FCw'ucU/FG	
	, 6,)>:,&@*,B8*-6,8, ) e!"7LIs e!"7LIs e!"7LIs	
& &38JK3E3H
 ! Cj38JK3E 1v Cj3H3E 1v%	
%-0b<c0b<0 	)L\:C@	<L93?,,2 $i0!Qw'l34AS)	 %DE8 F8 1,h 	aS	B	QF	I	aS	B	QF	I	 T2usec3Z$HI, J,'<	,,  #78, 9, #78- 9-,,,4 #;<- =-" 	tQ	L)	tR)$
a.%D/	*,AB
Qb$	 "78	000%6,,. B,,", sSEC:&>?#78& 9 @&& 
 2323	
 	/	,	,r4   