ó
šxŠ\c           @   sú   d  d l  Z  d  d l Z d  d l Z d  d l j Z d  d l Z d  d l j	 j
 Z e j d e d d ƒ d „  ƒ Z d e f d „  ƒ  YZ d e f d	 „  ƒ  YZ d
 e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   iÿÿÿÿNt   autouset   scopet   classc         #   sƒ   ˆ  j  } t j | j | j | j g ƒ } ‡  f d †  } x> | D]6 } | | ƒ s@ d } t | j | j | ƒ ƒ ‚ q@ q@ Wd  Vd  S(   Nc            s>   |  \ ‰ ‰  ‰ ˆ j  j j } t ‡  ‡ ‡ f d †  | Dƒ ƒ S(   Nc         3   s<   |  ]2 } ˆ | j  k o3 ˆ  | j  k o3 ˆ | j  k Vq d  S(   N(   t   name(   t   .0t   x(   t   dtypet   klasst   method(    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>   s   (   t   nodet   sessiont   itemst   any(   t   combot	   cls_funcs(   t   request(   R   R   R   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   has_test   s    s$   test method is not defined: {0}, {1}(	   t   clst	   itertoolst   productt   klassest   dtypesR   t   AssertionErrort   formatt   __name__(   R   R   t   combosR   R   t   msg(    (   R   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   check_comprehensiveness   s    	!"t   CoercionBasec        	   B   sM   e  Z d  d g Z d d d d d d d d	 d
 g	 Z e d „  ƒ Z d „  Z RS(   t   indext   seriest   objectt   int64t   float64t
   complex128t   boolt
   datetime64t   datetime64tzt   timedelta64t   periodc         C   s   t  |  ƒ ‚ d  S(   N(   t   NotImplementedError(   t   self(    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR   -   s    c         C   s~   t  | t j ƒ r% t j | | ƒ n+ t  | t j ƒ rJ t j | | ƒ n t ‚ | j | k se t	 ‚ | j | k sz t	 ‚ d  S(   N(
   t
   isinstancet   pdt   Seriest   tmt   assert_series_equalt   Indext   assert_index_equalR(   R   R   (   R)   t   leftt   rightR   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   _assert1   s    (   R   t
   __module__R   R   t   propertyR   R3   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR   '   s
   t   TestSetitemCoercionc           B   sû  e  Z d  Z d „  Z e j j d d e j f d e j f d( e j f e	 e j f g ƒ d „  ƒ Z
 e j j d d e j f d e j f d) e j f e	 e j f g ƒ d „  ƒ Z e j j d e j d ƒ e j f e j d* ƒ e j f g ƒ d
 „  ƒ Z e j j d d e j f d e j f d+ e j f e	 e j f g ƒ d „  ƒ Z e j j d d e j f d e j f d, e j f e	 e j f g ƒ d „  ƒ Z e j j d d e j f d e j f d e j f d- e j f e	 e j f g ƒ d „  ƒ Z e j j d e j d ƒ d f d e j f d e j f g ƒ d „  ƒ Z e j j d e j d d d ƒd f e j d d d ƒe j f e j d ƒ e j f d e j f g ƒ d „  ƒ Z e j j d e j d ƒ d f d e j f d e j f g ƒ d „  ƒ Z d „  Z e j j d d e j f d e f d e j f g ƒ d „  ƒ Z e j j d d e j f d e j f d e j f g ƒ d „  ƒ Z  e j j d d e f d e j f d e j f g ƒ d  „  ƒ Z! d! „  Z" d" „  Z# d# „  Z$ d$ „  Z% d% „  Z& d& „  Z' d' „  Z( RS(.   t   setitemc         C   s?   | j  ƒ  } | | d <t j | | ƒ | j | k s; t ‚ d S(   s6    test series value's coercion triggered by assignment i   N(   t   copyR-   R.   R   R   (   R)   t   original_seriest	   loc_valuet   expected_seriest   expected_dtypet   temp(    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt!   _assert_setitem_series_conversionA   s    
s   val,exp_dtypei   gš™™™™™ñ?y              ð?c         C   sb   t  j t d ƒ ƒ } | j t j k s- t ‚ t  j d | d d g ƒ } |  j | | | | ƒ d  S(   Nt   abcdt   at   ct   d(   R+   R,   t   listR   t   npR   R   R>   (   R)   t   valt	   exp_dtypet   objt   exp(    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_objectO   s    c         C   s»   t  j d d d d g ƒ } | j t j k s3 t ‚ | t j k r† t  j d d d d g ƒ } |  j | d | t j ƒ t j	 d ƒ n  t  j d | d d g ƒ } |  j | | | | ƒ d  S(   Ni   i   i   i   gš™™™™™ñ?s    GH12747 The result must be float(
   R+   R,   R   RD   R    R   R!   R>   t   pytestt   xfail(   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_int64[   s    i   i	   c         C   sÖ   t  j d d d d g d t j ƒ} | j t j k s< t ‚ | t j k r˜ t  j d d d d g d t j ƒ} |  j | | | t j ƒ t j	 d ƒ n  t  j d | d d g d t j ƒ} |  j | | | | ƒ d  S(   Ni   i   i   i   R   i    s3   BUG: it must be Series([1, 1, 3, 4], dtype=np.int16(
   R+   R,   RD   t   int8R   R   t   int16R>   RJ   RK   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_int8l   s    $$$c         C   sh   t  j d d d d g ƒ } | j t j k s3 t ‚ t  j d | d d g ƒ } |  j | | | | ƒ d  S(   Ngš™™™™™ñ?gš™™™™™@gffffff
@gš™™™™™@(   R+   R,   R   RD   R!   R   R>   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_float64{   s    c         C   sh   t  j d	 d
 d d g ƒ } | j t j k s3 t ‚ t  j d | d d g ƒ } |  j | | | | ƒ d  S(   Ni   y              ð?i   y               @i   y              @i   y              @y      ð?      ð?y       @       @y      @      @y      @      @y      ð?      ð?y      @      @y      @      @(   R+   R,   R   RD   R"   R   R>   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_complex128‡   s    i   c         C   sa  t  j t t t t g ƒ } | j t j k s3 t ‚ | t j k r† t  j t t t t g ƒ } |  j	 | | | t j ƒ t
 j d ƒ n¦ | t j k rÙ t  j t t t t g ƒ } |  j	 | | | t j ƒ t
 j d ƒ nS | t j k r,t  j t t t t g ƒ } |  j	 | | | t j ƒ t
 j d ƒ n  t  j t | t t g ƒ } |  j	 | | | | ƒ d  S(   Ns#   TODO_GH12747 The result must be ints%   TODO_GH12747 The result must be floats'   TODO_GH12747 The result must be complex(   R+   R,   t   Truet   FalseR   RD   R#   R   R    R>   RJ   RK   R!   R"   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_bool“   s     s
   2012-01-01s   datetime64[ns]R   c         C   s¤   t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } | j d k sT t ‚ t  j t  j d ƒ | t  j d ƒ t  j d ƒ g ƒ } |  j | | | | ƒ d  S(   Ns
   2011-01-01s
   2011-01-02s
   2011-01-03s
   2011-01-04s   datetime64[ns](   R+   R,   t	   TimestampR   R   R>   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_datetime64­   s    t   tzs
   US/Easterns   datetime64[ns, US/Eastern]s
   US/Pacificc         C   sÔ   d } t  j t  j d d | ƒt  j d d | ƒt  j d d | ƒt  j d d | ƒg ƒ } | j d k sr t ‚ t  j t  j d d | ƒ| t  j d d | ƒt  j d d | ƒg ƒ } |  j | | | | ƒ d  S(   Ns
   US/Easterns
   2011-01-01RW   s
   2011-01-02s
   2011-01-03s
   2011-01-04s   datetime64[ns, US/Eastern](   R+   R,   RU   R   R   R>   (   R)   RE   RF   RW   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt    test_setitem_series_datetime64tz¾   s    s   12 days   timedelta64[ns]c         C   s¤   t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } | j d k sT t ‚ t  j t  j d ƒ | t  j d ƒ t  j d ƒ g ƒ } |  j | | | | ƒ d  S(   Ns   1 days   2 days   3 days   4 days   timedelta64[ns](   R+   R,   t	   TimedeltaR   R   R>   (   R)   RE   RF   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_timedelta64Ò   s    c         C   sË   | j  ƒ  } d | | <t j d d d d d g d | ƒ} t j | | ƒ | j j | k sb t ‚ | j  ƒ  } d | j | <t j d d d d d g d | ƒ} t j | | ƒ | j j | k sÇ t ‚ d S(   s/    test index's coercion triggered by assign key i   i   i   i   i   R   N(	   R8   R+   R,   R-   R.   R   R   R   t   loc(   R)   R9   t   loc_keyt   expected_indexR<   R=   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt    _assert_setitem_index_conversionã   s    
$$i   c         C   s³   t  j d d d d g d t d ƒ ƒ} | j j t j k sB t ‚ | t k r} | j	 ƒ  } t
 j | ƒ  d | d <Wd  QXn2 t  j t d ƒ | g ƒ } |  j | | | | ƒ d  S(   Ni   i   i   i   R   R?   i   (   R+   R,   RC   R   R   RD   R   R   t
   IndexErrorR8   RJ   t   raisesR/   R^   (   R)   RE   RF   RG   R=   t	   exp_index(    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_objectô   s    'c         C   sn   t  j d d d d g ƒ } | j j t j k s6 t ‚ t  j d d d d | g ƒ } |  j | | | | ƒ d  S(   Ni   i   i   i   i    (	   R+   R,   R   R   RD   R    R   R/   R^   (   R)   RE   RF   RG   Ra   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_int64  s    gffffff@c         C   sÈ   t  j d d d d g d d d d d	 g ƒ} | j j t j k sH t ‚ | t k r | j ƒ  } t	 j
 | ƒ  d
 | d
 <Wd  QXt	 j d ƒ n  t  j d d d d	 | g ƒ } |  j | | | | ƒ d  S(   Ni   i   i   i   R   gš™™™™™ñ?gÍÌÌÌÌÌ @gÍÌÌÌÌÌ@gffffff@i   s%   TODO_GH12747 The result must be float(   R+   R,   R   R   RD   R!   R   R_   R8   RJ   R`   RK   R/   R^   (   R)   RE   RF   RG   R=   Ra   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_float64  s    -c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_series_period"  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_complex128%  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_bool(  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_datetime64+  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_datetime64tz.  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_timedelta641  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_setitem_index_period4  s    y      ð?      ð?y      ð?      ð?i   y      ð?      ð?y      ð?      ð?y      ð?      ð?()   R   R4   R   R>   RJ   t   markt   parametrizeRD   R   RR   RI   R    R!   R"   RL   t   int32RM   RN   RO   RP   RQ   R#   RT   R+   RU   RV   RX   RY   RZ   R^   R_   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR6   =   s‚   	'									t   TestInsertIndexCoercionc           B   s  e  Z d  g Z d Z d „  Z e j j d d d e j	 f d d e j	 f e
 e
 e j	 f d d e j	 f g ƒ d „  ƒ Z e j j d d d e j f d d e j f e
 d e j f d d e j	 f g ƒ d	 „  ƒ Z e j j d d d
 e j f d d e j f e
 d e j f d d e j	 f g ƒ d „  ƒ Z e j j d e j d ƒ d f e j d d d ƒd f g d d d g ƒd „  ƒ Z d „  Z e j j d e j d d d ƒd d f e j d ƒ e j d ƒ e j	 f d d e j	 f d d e j	 f g ƒ d „  ƒ Z d „  Z d „  Z RS(   R   t   insertc         C   sG   | j  ƒ  } | j d | ƒ } t j | | ƒ | j | k sC t ‚ d S(   s#    test coercion triggered by insert i   N(   R8   Rp   R-   R0   R   R   (   R)   t   originalt   valuet   expectedR<   t   targett   res(    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   _assert_insert_conversion=  s    s"   insert, coerced_val, coerced_dtypei   gš™™™™™ñ?R   c         C   se   t  j t d ƒ ƒ } | j t j k s- t ‚ t  j d | d d d g ƒ } |  j | | | | ƒ d  S(   NR?   R@   t   bRA   RB   (   R+   R/   RC   R   RD   R   R   Rv   (   R)   Rp   t   coerced_valt   coerced_dtypeRG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_objectE  s    i    c         C   sk   t  j d d d d g ƒ } | j t j k s3 t ‚ t  j d | d d d g ƒ } |  j | | | | ƒ d  S(   Ni   i   i   i   (   R+   t
   Int64IndexR   RD   R    R   R/   Rv   (   R)   Rp   Rx   Ry   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_int64Q  s    g      ð?g        c         C   sk   t  j d d d d g ƒ } | j t j k s3 t ‚ t  j d | d d d g ƒ } |  j | | | | ƒ d  S(   Ng      ð?g       @g      @g      @(   R+   t   Float64IndexR   RD   R!   R   R/   Rv   (   R)   Rp   Rx   Ry   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_float64]  s    s   fill_val,exp_dtypes
   2012-01-01s   datetime64[ns]RW   s
   US/Easterns   datetime64[ns, US/Eastern]t   idsR$   R%   c         C   sA  t  j d d d d g d | j ƒ} | j | k s9 t ‚ t  j d | j ƒ  d d d g d | j ƒ} |  j | | | | ƒ d } | j rÃ t j t	 d | ƒ | j
 d t  j d	 ƒ ƒ Wd  QXn  t j t	 d | ƒ$ | j
 d t  j d	 d d
 ƒƒ Wd  QXd } t j t d | ƒ | j
 d d ƒ Wd  QXt j d ƒ d  S(   Ns
   2011-01-01s
   2011-01-02s
   2011-01-03s
   2011-01-04RW   s-   Passed item and index have different timezonet   matchi   s
   2012-01-01s
   Asia/Tokyos3   cannot insert DatetimeIndex with incompatible labels   ToDo: must coerce to object(   R+   t   DatetimeIndexRW   R   R   t   dateRv   RJ   R`   t
   ValueErrorRp   RU   t	   TypeErrorRK   (   R)   t   fill_valRF   RG   RH   R   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_datetimesi  s     	"%c         C   sÞ   t  j d d d d g ƒ } | j d k s0 t ‚ t  j d d d d d g ƒ } |  j | t  j d ƒ | d ƒ d } t j t d | ƒ | j	 d	 t  j
 d
 ƒ ƒ Wd  QXd } t j t d | ƒ | j	 d	 d	 ƒ Wd  QXd  S(   Ns   1 days   2 days   3 days   4 days   timedelta64[ns]s   10 days4   cannot insert TimedeltaIndex with incompatible labelR€   i   s
   2012-01-01(   R+   t   TimedeltaIndexR   R   Rv   RY   RJ   R`   R„   Rp   RU   (   R)   RG   RH   R   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_timedelta64…  s    
s   2012-01t   freqt   Ms	   period[M]c      	   C   sÔ   t  j d d d d g d d ƒ} | j d k s6 t ‚ t | t  j ƒ rT t  j } n	 t  j } | t  j d d d ƒ| t  j d d d ƒt  j d d d ƒt  j d d d ƒg d d ƒ} |  j | | | | ƒ d  S(   Ns   2011-01s   2011-02s   2011-03s   2011-04R‰   RŠ   s	   period[M](   R+   t   PeriodIndexR   R   R*   t   PeriodR/   Rv   (   R)   Rp   Rx   Ry   RG   t
   index_typeRH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_period˜  s    		!c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_complex128®  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_insert_index_bool±  s    (   R   R4   R   R   Rv   RJ   Rl   Rm   RD   R   RS   Rz   R    R!   R|   R~   R+   RU   R†   Rˆ   RŒ   RŽ   R   R   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyRo   8  s>   		!!!	!!	t   TestWhereCoercionc           B   sê  e  Z d  Z d „  Z e j j d e j e j	 g d d d g ƒe j j d d e
 j f d e
 j f d# e
 j f e e
 j f g ƒ d
 „  ƒ ƒ Z e j j d e j e j	 g d d d g ƒe j j d d e
 j f d e
 j f d$ e
 j f e e
 j f g ƒ d „  ƒ ƒ Z e j j d e j e j	 g d d d g ƒe j j d d e
 j f d e
 j f d% e
 j f e e
 j f g ƒ d „  ƒ ƒ Z e j j d d e
 j f d e
 j f d& e
 j f e e
 j f g ƒ d „  ƒ Z e j j d d e
 j f d e
 j f d' e
 j f e e
 j f g ƒ d „  ƒ Z e j j d e j d ƒ d f e j d d d ƒe
 j f g d d d g ƒd „  ƒ Z d „  Z e j j d d ƒ d „  ƒ Z d „  Z d „  Z d „  Z d „  Z d „  Z d  „  Z  d! „  Z! d" „  Z" RS((   t   wherec         C   s5   | j  ƒ  } | j | | ƒ } |  j | | | ƒ d S(   s"    test coercion triggered by where N(   R8   R’   R3   (   R)   Rq   t   condt   valuesRs   R<   Rt   Ru   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   _assert_where_conversion¹  s    R   R   R   R   s   fill_val,exp_dtypei   gš™™™™™ñ?y              ð?c   	         s)  | t  d ƒ ƒ } | j t j k s* t ‚ | t t t t g ƒ } ˆ  t k rf | t j k rf d } n ˆ  } | d | d | g ƒ } |  j	 | | ˆ  | | ƒ ˆ  t k rÄ | t t t t g ƒ } n( | ‡  f d †  d d d d	 g Dƒ ƒ } | d | d d | d
 g ƒ } |  j	 | | | | | ƒ d  S(   NR?   i   R@   RA   c         3   s   |  ] } ˆ  | Vq d  S(   N(    (   R   R   (   R…   (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>×  s    i   i   i   i   i   (
   RC   R   RD   R   R   RR   RS   R+   R,   R•   (	   R)   R   R…   RF   RG   R“   t   ret_valRH   R”   (    (   R…   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_objectÀ  s    	( c            s3  | t  j k r. | t j k r. t j d ƒ n  | d d d d g ƒ } | j t j k s^ t ‚ | t	 t
 t	 t
 g ƒ } | d ˆ  d ˆ  g ƒ } |  j | | ˆ  | | ƒ ˆ  t	 k rÎ | t	 t
 t	 t	 g ƒ } n( | ‡  f d †  d d d	 d
 g Dƒ ƒ } | d | d d | d g ƒ } |  j | | | | | ƒ d  S(   Ns   Complex Index not supportedi   i   i   i   c         3   s   |  ] } | ˆ  Vq d  S(   N(    (   R   R   (   R…   (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>ð  s    i   i   i   i   (   R+   R/   RD   R"   RJ   t   skipR   R    R   RR   RS   R•   (   R)   R   R…   RF   RG   R“   RH   R”   (    (   R…   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_int64Ü  s    ( s   fill_val, exp_dtypec            s3  | t  j k r. | t j k r. t j d ƒ n  | d d d d g ƒ } | j t j k s^ t ‚ | t	 t
 t	 t
 g ƒ } | d ˆ  d ˆ  g ƒ } |  j | | ˆ  | | ƒ ˆ  t	 k rÎ | t	 t
 t	 t	 g ƒ } n( | ‡  f d †  d d d	 d
 g Dƒ ƒ } | d | d d | d g ƒ } |  j | | | | | ƒ d  S(   Ns   Complex Index not supportedgš™™™™™ñ?gš™™™™™@gffffff
@gš™™™™™@c         3   s   |  ] } | ˆ  Vq d  S(   N(    (   R   R   (   R…   (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>  s    i   i   i   i   i   i   (   R+   R/   RD   R"   RJ   R˜   R   R!   R   RR   RS   R•   (   R)   R   R…   RF   RG   R“   RH   R”   (    (   R…   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_float64ô  s    ( c            s  t  j d d d d g ƒ } | j t j k s3 t ‚ t  j t t t t g ƒ } t  j d ˆ  d ˆ  g ƒ } |  j | | ˆ  | | ƒ ˆ  t k r¬ t  j t t t t g ƒ } n+ t  j ‡  f d	 †  d
 d d d g Dƒ ƒ } t  j d | d d | d g ƒ } |  j | | | | | ƒ d  S(   Ni   y              ð?i   y               @i   y              @i   y              @c         3   s   |  ] } | ˆ  Vq d  S(   N(    (   R   R   (   R…   (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>  s    i   i   i   i   y      ð?      ð?y       @       @y      @      @y      @      @y      ð?      ð?y      @      @y      ð?      ð?y      @      @(	   R+   R,   R   RD   R"   R   RR   RS   R•   (   R)   R…   RF   RG   R“   RH   R”   (    (   R…   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_complex128  s    +#c            s  t  j t t t t g ƒ } | j t j k s3 t ‚ t  j t t t t g ƒ } t  j t ˆ  t ˆ  g ƒ } |  j | | ˆ  | | ƒ ˆ  t k r¬ t  j t t t t g ƒ } n+ t  j ‡  f d †  d d d d g Dƒ ƒ } t  j t | d t | d g ƒ } |  j | | | | | ƒ d  S(   Nc         3   s   |  ] } | ˆ  Vq d  S(   N(    (   R   R   (   R…   (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pys	   <genexpr>1  s    i   i   i   i   i   i   (	   R+   R,   RR   RS   R   RD   R#   R   R•   (   R)   R…   RF   RG   R“   RH   R”   (    (   R…   sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_bool   s    +#s
   2012-01-01s   datetime64[ns]RW   s
   US/EasternR$   R%   c         C   s•  t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } | j d k sT t ‚ t  j t t t t g ƒ } t  j t  j d ƒ | t  j d ƒ | g ƒ } |  j | | | | | ƒ t  j t  j | d d ƒƒ } | j	 rCt  j t  j d ƒ t  j d d	 d
 ƒt  j d ƒ t  j d d	 d
 ƒg ƒ } |  j | | | | | ƒ n  t  j t  j d ƒ | d t  j d ƒ | d g ƒ } |  j | | | | | ƒ d  S(   Ns
   2011-01-01s
   2011-01-02s
   2011-01-03s
   2011-01-04s   datetime64[ns]t   periodsi   s   2012-01-02 00:00RW   s
   US/Easterns   2012-01-04 00:00i   i   (
   R+   R,   RU   R   R   RR   RS   R•   t
   date_rangeRW   (   R)   R…   RF   RG   R“   RH   R”   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_datetime645  s(    	c         C   s0  t  j d ƒ } d } t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } | j d k si t ‚ t  j t t t t g ƒ } d } t j t	 d | ƒ | j
 | | ƒ Wd  QXt  j t  j | d	 d
 ƒƒ } t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } |  j | | | | | ƒ d  S(   Ns
   2012-01-01s   datetime64[ns]s
   2011-01-01s
   2011-01-02s
   2011-01-03s
   2011-01-04s=   Index\(\.\.\.\) must be called with a collection of some kindR€   R   i   s
   2012-01-02s
   2012-01-04(   R+   RU   R/   R   R   RR   RS   RJ   R`   R„   R’   Rž   R•   (   R)   R…   RF   RG   R“   R   R”   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_datetimeR  s"    t   reasons0   GH 22839: do not ignore timezone, must be objectc      	   C   sK  t  j d d d ƒ} t j } t  j t  j d ƒ t  j d ƒ t  j d ƒ t  j d ƒ g ƒ } | j d k sr t ‚ t  j t t t t g ƒ } d	 } t	 j
 t d
 | ƒ | j | | ƒ Wd  QXt  j t  j | d d ƒƒ } t  j t  j d ƒ t  j d d d ƒt  j d ƒ t  j d d d ƒg d | ƒ} |  j | | | | | ƒ d  S(   Ns
   2012-01-01RW   s
   US/Easterns
   2011-01-01s
   2011-01-02s
   2011-01-03s
   2011-01-04s   datetime64[ns]s=   Index\(\.\.\.\) must be called with a collection of some kindR€   R   i   s
   2012-01-02s
   2012-01-04R   (   R+   RU   RD   R   R/   R   R   RR   RS   RJ   R`   R„   R’   Rž   R•   (   R)   R…   RF   RG   R“   R   R”   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_datetimetzi  s$    		c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_complex128ƒ  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_bool†  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_datetime64tz‰  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_timedelta64Œ  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_series_period  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_datetime64tz’  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_timedelta64•  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_where_index_period˜  s    y      ð?      ð?y      ð?      ð?y      ð?      ð?y      ð?      ð?y      ð?      ð?(#   R   R4   R   R•   RJ   Rl   Rm   R+   R,   R/   RD   R   RR   R—   R    R!   R"   R™   Rš   R›   R#   Rœ   RU   RŸ   R    RK   R¢   R£   R¤   R¥   R¦   R§   R¨   R©   Rª   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR‘   µ  s`   	!!!!								t   TestFillnaSeriesCoercionc        	   B   sí  e  Z d  Z d „  Z d „  Z e j j d e j	 e j
 g d d d g ƒe j j d d e j f d	 e j f d# e j f e e j f g ƒ d „  ƒ ƒ Z e j j d e j	 e j
 g d d d g ƒe j j d d e j f d	 e j f d$ e j f e e j f g ƒ d „  ƒ ƒ Z e j j d d e j f d	 e j f d% e j f e e j f g ƒ d „  ƒ Z e j j d e j	 e j
 g d d d g ƒe j j d e j d ƒ d f e j d d d ƒe j f d e j f d e j f g d d d d d g ƒd „  ƒ ƒ Z e j j d e j	 e j
 g ƒ e j j d e j d d d ƒd f e j d ƒ e j f e j d d d ƒe j f d e j f d e j f g ƒ d „  ƒ ƒ Z d „  Z d „  Z d „  Z d „  Z d „  Z d  „  Z d! „  Z d" „  Z RS(&   t   fillnac         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_has_comprehensive_tests¢  s    c         C   s2   | j  ƒ  } | j | ƒ } |  j | | | ƒ d S(   s#    test coercion triggered by fillna N(   R8   R¬   R3   (   R)   Rq   Rr   Rs   R<   Rt   Ru   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   _assert_fillna_conversion¥  s    R   R   R   R   s   fill_val, fill_dtypei   gš™™™™™ñ?y              ð?c         C   se   | d t  j d d g ƒ } | j t  j k s3 t ‚ | d | d d g ƒ } |  j | | | | ƒ d  S(   NR@   RA   RB   (   RD   t   nanR   R   R   R®   (   R)   R   R…   t
   fill_dtypeRG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_object¬  s    s   fill_val,fill_dtypec         C   s   | d t  j d d g ƒ } | j t  j k s3 t ‚ | d | d d g ƒ } | t  j k ru | t j k ru t  j } n  |  j	 | | | | ƒ d  S(   Ngš™™™™™ñ?gffffff
@gš™™™™™@(
   RD   R¯   R   R!   R   R"   R+   R/   R   R®   (   R)   R   R…   R°   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_float64º  s    c         C   sk   t  j d t j d d	 g ƒ } | j t j k s6 t ‚ t  j d
 | d d g ƒ } |  j | | | | ƒ d  S(   Ni   y              ð?i   y              @i   y              @y      ð?      ð?y      @      @y      @      @y      ð?      ð?y      @      @y      @      @(   R+   R,   RD   R¯   R   R"   R   R®   (   R)   R…   R°   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_series_complex128Í  s    s
   2012-01-01s   datetime64[ns]RW   s
   US/EasternR   R$   R%   R   c         C   s˜   | t  j d ƒ t  j t  j d ƒ t  j d ƒ g ƒ } | j d k sK t ‚ | t  j d ƒ | t  j d ƒ t  j d ƒ g ƒ } |  j | | | | ƒ d  S(   Ns
   2011-01-01s
   2011-01-03s
   2011-01-04s   datetime64[ns](   R+   RU   t   NaTR   R   R®   (   R)   R   R…   R°   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_datetimeÙ  s    s   datetime64[ns, US/Eastern]s
   Asia/Tokyoc         C   sÂ   d } | t  j d d | ƒt  j t  j d d | ƒt  j d d | ƒg ƒ } | j d k sc t ‚ | t  j d d | ƒ| t  j d d | ƒt  j d d | ƒg ƒ } |  j | | | | ƒ d  S(   Ns
   US/Easterns
   2011-01-01RW   s
   2011-01-03s
   2011-01-04s   datetime64[ns, US/Eastern](   R+   RU   R´   R   R   R®   (   R)   R   R…   R°   RW   RG   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_datetime64tzí  s    	c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_series_int64  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_index_int64  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_series_bool
  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_index_bool  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_series_timedelta64  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_series_period  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_index_timedelta64  s    c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_fillna_index_period  s    y      ð?      ð?y      ð?      ð?y      ð?      ð?(   R   R4   R   R­   R®   RJ   Rl   Rm   R+   R,   R/   RD   R   RR   R±   R!   R"   R²   R³   RU   Rµ   R¶   R·   R¸   R¹   Rº   R»   R¼   R½   R¾   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR«   œ  sZ   		!!!!							t   TestReplaceSeriesCoercionc           B   sõ  e  Z d  g Z d Z i  Z d d g e d <d d g e d <d d	 g e d
 <d- d. g e d <e e g e d <e j d ƒ e j d ƒ g e d <xQ d d g D]C Z	 d j
 e	 ƒ Z e j d d e	 ƒe j d d e	 ƒg e e <qš We j d ƒ e j d ƒ g e d <e j j d d d  g ƒ e j j d d d d
 d d d d d d g	 d  d d d
 d d d! d" d" d# g	 ƒe j j d$ d d d
 d d d d d d g	 ƒ d% „  ƒ ƒ ƒ Z e j j d& d' ƒ d( „  ƒ Z e j j d& d) d* e ƒ d+ „  ƒ Z d, „  Z RS(/   R   t   replaceR@   Rw   R   i   i   R    gš™™™™™ñ?gš™™™™™@R!   i   y              ð?i   y               @R"   R#   s
   2011-01-01s
   2011-01-03s   datetime64[ns]t   UTCs
   US/Easterns   datetime64[ns, {0}]RW   s   1 days   2 days   timedelta64[ns]t   howt   dictt   to_keys   datetime64[ns, UTC]s   datetime64[ns, US/Eastern]R   R$   R%   R&   t   from_keyc   	      C   s  | d k r1 | d k r1 t  j r1 t j d ƒ n  t j d d g d d ƒ} t j |  j | d | d d	 ƒ} | j | k sƒ t	 ‚ | j
 d
 ƒ r¥ | j
 d
 ƒ r¥ d  S| d k rµ d  S| d k rç t t |  j | |  j | ƒ ƒ } n8 | d k rt j |  j | d |  j | ƒ} n t ‚ | j | ƒ } | d k rF| d k s^| d k r½| d k r½t  j ƒ  svt  j ƒ  r’t j d j | | ƒ ƒ n  t j |  j | d | d d	 d | ƒ} n7 t j |  j | d | d d	 ƒ} | j | k sôt	 ‚ t j | | ƒ d  S(   NR#   R   s   doesn't work as in PY3i   i   R   t   xxxR   t   yyyt   datetimes   datetime64[ns, US/Eastern]s   datetime64[ns, UTC]RÃ   R!   R    R"   s!   32-bit platform buggy: {0} -> {1}R   (   s   datetime64[ns, US/Eastern]s   datetime64[ns, UTC](   R    R!   (   t   compatt   PY3RJ   R˜   R+   R/   R,   t   repR   R   t
   startswithRÃ   t   zipRƒ   RÀ   t   is_platform_32bitt   is_platform_windowsR   R-   R.   (	   R)   RÂ   RÄ   RÅ   R   RG   t   replacert   resultRH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_replace_series4  s4    !"&&"R¡   s>   GH #18376, tzawareness-compat bug in BlockManager.replace_listc   	      C   s(  d } d } d } t  j d d g d d ƒ} t  j |  j | d | d d	 ƒ} | j | k sd t ‚ | d
 k r– t t |  j | |  j | ƒ ƒ } n8 | d k rÈ t  j |  j | d |  j | ƒ} n t ‚ | j	 | ƒ } t  j |  j | d | d d	 ƒ} | j | k st ‚ t
 j | | ƒ d  S(   NR   s   datetime64[ns, US/Eastern]s   timedelta64[ns]i   i   R   RÆ   R   RÇ   RÃ   (   R+   R/   R,   RË   R   R   RÃ   RÍ   Rƒ   RÀ   R-   R.   (	   R)   RÂ   RÅ   RÄ   R   RG   RÐ   RÑ   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_replace_series_datetime_tzj  s    	"&&"s7   different tz, currently mask_missing raises SystemErrort   strictc   	      C   s(  d } d } d } t  j d d g d d ƒ} t  j |  j | d | d d ƒ} | j | k sd t ‚ | d k r– t t |  j | |  j | ƒ ƒ } n8 | d	 k rÈ t  j |  j | d |  j | ƒ} n t ‚ | j	 | ƒ } t  j |  j | d | d d ƒ} | j | k st ‚ t
 j | | ƒ d  S(
   NRÃ   s   datetime64[ns]i   i   R   RÆ   R   RÇ   R   (   R+   R/   R,   RË   R   R   RÃ   RÍ   Rƒ   RÀ   R-   R.   (	   R)   RÂ   RÄ   RÅ   R   RG   RÐ   RÑ   RH   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt%   test_replace_series_datetime_datetime‰  s    "&&"c         C   s   d  S(   N(    (   R)   (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   test_replace_series_periodª  s    y      ð?      ð?y       @       @(   R   R4   R   R   RË   RR   RS   R+   RU   RW   R   t   keyRY   RJ   Rl   Rm   RÒ   RK   RÓ   RÕ   RÖ   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyR¿     s:   	 !.(   R   t   numpyRD   RJ   t   pandas.compatRÉ   t   pandasR+   t   pandas.util.testingt   utilt   testingR-   t   fixtureRR   R   R   R   R6   Ro   R‘   R«   R¿   (    (    (    sB   lib/python2.7/site-packages/pandas/tests/indexing/test_coercion.pyt   <module>   s   !û}ç