ó
¦Õ\c           @   s_  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 Z d  d l	 Z
 d  d l j j Z d  d l m Z d  d l Z d  d l j Z d  d l j Z d  d l m Z d  d l m Z d  d l m Z m Z d  d l  m! Z! m" Z" m# Z# m$ Z$ m% Z% d  d	 l m& Z& d  d
 l' m( Z( m) Z) m* Z* m+ Z+ i e
 j, i d d d g d 6d d d g d 6d d d d g da6e
 j, i d d d g d 6d d d g d 6d d d d g db6e
 j, i d d d g d 6d d d g d 6d d d d g dc6Z- e) i d d 6d d 6d e
 j. g  d  Z/ e j, e- d e/ d d d d g  Z0 e0 j1   Z2 d   Z3 d   Z4 d   Z5 d   Z6 d   Z7 d   Z8 d    Z9 d!   Z: d"   Z; d#   Z< d$   Z= e j> j? d% d e j@ d d& e j> jA g  d'    ZB d(   ZC d)   ZD d*   ZE e j> j? d+ d, ddf d. def g  d0    ZF e j> j? d1 d, d. g  d2    ZG d3   ZH d4   ZI e j> j? d5 e jJ e jK e j@ e jL d& e j> jA d6 d7  g e j@ e jM d& e j> jA d6 d7  g g  d8    ZN d9   ZO e j> j? d: dfdgg  d=    ZP d>   ZQ d?   ZR d@   ZS dA   ZT dB   ZU dC   ZV dD   ZW dE   ZX dF   ZY e j> jA d6 dG  dH    ZZ dI   Z[ dJ   Z\ dK   Z] dL   Z^ dM   Z_ dN   Z` dO   Za dP   Zb dQ   Zc dR   Zd dS   Ze dT   Zf dU   Zg e j> j? dV d, dhf d. dif g  d`    Zh e j> j? d1 d, d. g  da    Zi e j> j? d1 d, d. g  db    Zj e j> j? dV d, e
 jk dc dd de g d df dg dh g e
 j, di dj dk g dk dl dj g g d dm dn g do df dg dh g f f d. e
 jk dp dq dr g d df dg dh g e
 j, ds dt du g dv dw dx g g d dm dn g do df dg dh g f f g  dy    Zl dz   Zm d{   Zn d|   Zo d}   Zp d~   Zq d   Zr d   Zs d   Zt d   Zu e j> jv e+ d k  d6 d d    Zw e j> j? d d d d d g  d    Zx e j> j? d d d d d g  d    Zy d   Zz d   Z{ d   Z| d   Z} d   Z~ e j> j d    Z d   Z d   Z e j> j? d e e g  e j> j? d d d d d g  e j> j? d d d d d g  e j> j? d e e d g  e j> j? d d   d   g  d        Z d   Z d   Z e j> j e j> j? d% d d/ d  g  e j> j? d” d¢ d£ d¤ d„ g  e j> j? d¦ d§ dØ d© g  e j> j? dŖ d« d¬ d¬ 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 d¹   Z dŗ   Z d»   Z d¼   Z d½   Z d¾   Z e j> j? dæ e g d f d e g f e j e g e g f 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Ŗ dĶ   Z« dĪ   Z¬ dĻ   Z­ e j> j? dŠ e e g  dŃ    Z® e j> j? dŠ e e g  dŅ    ZÆ e j> j? dÓ d d g e g  e j> j? dŠ e e g  dŌ     Z° dÕ   Z± e j> jv e d6 dÖ d×    Z² dŲ   Z³ dŁ   Z“ dŚ   Zµ dŪ   Z¶ dÜ   Z· dŻ   Zø e j> j dŽ    Z¹ dß   Zŗ dą   Z» dį   Z¼ dā   Z½ dć   Z¾ 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 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ū e e g  e j> j? dü e jÖ dż  e× e jŲ jŲ dž dż   e
 jŁ d’ d dż g  d    ZŚ d  ZŪ d  ZÜ d  ZŻ d  ZŽ e j> j? deß e j e
 jk e
 j. g  d   Zą d  Zį d	  Zā d
  Zć e j> j? ddh e f de f de f g  d   Zä e j> j? ddh e f de f de f g  d   Zå d  Zę d  Zē e j> j? d1 ddg  d   Zč e j> j? d% d d d/ g  e j> j? dd d g  e j> j? dd d d d/ g  d     Zé e j> j? dd d g  d   Zź e j> j? dd d g  d   Zė d  Zģ d  Zķ d  Zī e j> j? d e e g  e j> j? de e g  d    Zļ e j> j? d d!d"d#d$d%d&d'd(d)d*d+d,g  d-   Zš d.  Zń d/  Zņ d0  Zó e j> jv e+ d k  d6 d1e j> j? d2e jō d g d d g g  d3    Zõ e j> j? d4d d g  d5   Zö d6  Z÷ d7  Zų e j> j? d8d  d e e d  d9g f d  d e e d9g f d d e e d d g f d d e e d g f d:d e e d  d9g f d:d e e d  d9g f d;d e e d9g f d d< e e d g f d d< e e d g f d d; e e d d g f g
  d<   Zł e j> j? d=eś d-  d d f eś d-  d  d f eś d-  d d- f d  d d d g d d f d  d d d g d  d f d  d d d g d d f d  d d d g d9d f e
 jŁ d>d d- d d f e
 jŁ d>d d- e
 jū d> d f e
 jŁ d>d d- d e
 jū d? f e
 jŁ d>d d- e
 jū d@ d f e
 jŁ d>d d- d e
 jū dA f g  dB   Zü dC  Zż dD  Zž dE  Z’ dF  Z dG  Ze j> j? d5 e je jg  dH   ZdI  ZdJ  ZdK  ZdL  ZdM  Z	dN  Z
dO  ZdP  ZdQ  ZdR  ZdS  ZdT  ZdU  ZdV  ZdW  ZdX  ZdY  ZdZ  Zd[  Ze j> jA d6 d\ d]   Ze j> jv e d6 d^d_   Zd`  Zd S(j  i’’’’N(   t   product(   t   add(   t   format(   t   compute_as_if_collection(   t   PY2(   t	   put_linest   M(   t   repartition_divisionst   acat   _concatt   Scalart   has_parallel_type(   t   methods(   t	   assert_eqt	   make_metat   assert_max_depst   PANDAS_VERSIONi   i   i   t   ai   i   i   t   bt   indexi    t   xi   i   i	   t   i8c          C   s£  t  j d d d d d d d d d	 g	 d
 d d d d d d d d d g	 d d }  t t d d |   t j t j t  j d d g   t t t d d k t t d d k  t t d d g t d d g  t t j	 t j	  t j
 j   j   t j
 j   k st  t j t j
 j   j   t j
 j    s?t  t j t j
 j   j   t j
 j    sot  t j j t j j k st  t t  st  d  S(   Ni   i   i   i   i   i   i   i	   i
   R   i    i   t   nameR   R   (   t   pdt   SeriesR   t   dt   tmt   assert_index_equalt   columnst   Indext   fullR   R   t   meant   computet   AssertionErrort   npt   allcloset   vart   stdR   t   _namet   repr(   t   expected(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_Dataframe%   s    '!	")!*00c           C   sĄ  t  t j d  t j d   t  t j d  t j d   t  t j d  t d j d   t  t d j d  t d j d   t  t d j d  t d j d   t  t d j d  t d d j d   t t j d d t j  t t j d d t j  k st  t t j d d t j  t t j d d t j  k s^t  t  t j	 d  t j	 d   t  t j	 d  t j	 d   t  t j	 d  t d	 j	 d   t  t d j	 d  t d j	 d   t  t d j	 d  t d j	 d   t  t d j	 d  t d
 d j	 d   t t j	 d d t j  t t j	 d d t j  k szt  t t j	 d d t j  t t j	 d d t j  k s¼t  d  S(   Ni   i   R   i    R   R    (   R   i    (   R   i    (   R   i   (   R   i   (
   R   R   t   headR   t   dskt   sortedt   Falset   daskR!   t   tail(    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_head_tail:   s(    #''+''#''+'c           C   sģ   t  t j d d d t j d   t  t j d d d d t t j d   t  t j d d d t j d   t  t j d d d t j d   t  t j d d d t j d   t j t   t j d d d Wd  QXd  S(   Ni   t   npartitionsi   R    i’’’’i   (   R   R   R*   R   R-   t   pytestt   raisest
   ValueError(    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_head_npartitionsR   s    %+%%%c        
   C   ss   t  j d    t j d  Wd  QXt  j d    t j d  Wd  QXt  j d    t j d d d Wd  QXd  S(   Nid   i   R1   i   (   R2   t   warnst   NoneR   R*   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_head_npartitions_warn\   s    c           C   sD   t  t j j d  t j d   t  t j j d  t j d   d  S(   Ni   i   (   R   R   R   R*   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_index_headg   s     c           C   sS   t  t j t j  s t  t  t j d t j  s: t  t t d t d  d  S(   Ni   (   t
   isinstanceR   R   t   ddR   R!   R   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_Seriesl   s    c       
      s°   x© t  j t j j d d  d t d  t  j t j j d d  d t  j d d d d d g D]D }  t j |  d	    t	   j
 |  j
  t j t   f d
    qd Wd  S(   Ni
   i   R   t
   abcdefghijs
   2011-01-01t   freqt   Dt   periodsi   c              s
     j  j  S(   N(   R   (    (   t   ddf(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   <lambda>y   t    (   R   t	   DataFrameR"   t   randomt   randnt   listt
   date_rangeR;   t   from_pandasR   R   R2   R3   t   AttributeError(   t   case(    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_Indexr   s    *c          C   sł   t  j d  }  t i |  d	 6d d  } t | d  s= t  d t |  k sU t  t | |   t |  d k sz t  t j	 d  }  t i |  d
 6d |   } t | d  sø t  d t |  k sŠ t  t | |   t |  d k sõ t  d  S(   Ni   R   i    R   t   dtypes   dd.Scalar<a, dtype=int64>s
   2001-01-01s   dd.Scalar<a, type=Timestamp>(   R   i    (   R   i    (
   R"   t   int64R
   t   hasattrR!   t   dirR   R'   R   t	   Timestamp(   t   valt   s(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_Scalar|   s    c              s)  d t  t  k s t  d t  t  k s0 t  t j t d    t j t j	 i d d d g d 6 d d   d t     k s t  t j t j	 i d d g d 6d d g d	 6 d d   d t     k sŁ t  d	 t     k sń t  t j t
 j   d d   t j t   f d
    d  S(   NR   t   fooc           S   s   t  j S(   N(   R   RU   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB      RC   i   i   i   s   a b cR1   i   c              s     j  S(   N(   RU   (    (   t   df(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB      RC   (   RP   R   R!   R2   R3   RJ   R;   RI   R   RD   R   t   makeTimeDataFrame(    (    (   RV   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_attributes   s    .8c           C   s©   t  j t j t j d d g   t  j t d d g j t j d d g   t d j d k sg t  t d d j d k s t  t d t d j d  k s„ t  d  S(   NR   R   i   (	   R   R   R   R   R   R   R   R!   R7   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_column_names   s
    ",c          C   sø   t  j j d  k s t  t j d d d d d d d d d	 d
 g
 d d }  t j t j	 j
 d d  |   } t j | d  } | j j d k s t  | j j   j d k s“ t  d  S(   Ni    i   i   i   i   i   i   i   i   i	   R   R   i
   (   R   R   R   R7   R!   R   R   RD   R"   RE   RF   R;   RI   R    (   t   idxRV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_index_names£   s    3!R1   t   marksc         C   sÄ   t  j t  j d d d  } t  j t  j d d d d d  } t  j i | d 6| d 6 } t j | d |  } | j d j | j   j d j k oµ | j j   d j k n sĄ t	  d  S(	   Nt   20130101R@   i
   t   tzs
   US/Easternt   notzR1   i    (
   R   R   RH   RD   R;   RI   R^   R>   R    R!   (   R1   t   s_naivet   s_awaret   pdfRA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_timezone_freq­   s
    $c       	   C   sŁ  t  j i d d d d d d d g d 6d d d d d d d g d	 6 }  t j |  d  } d
 d g | _ d
 d g |  _ t j | j t  j d
 d g   t j | j j t  j d
 d g   t	 | |   d } t
 j t   } d d d d g | _ Wd  QX| t | j  k st  t  j i d d d d g d 6d d d d g d 6 }  t j |  d d } d
 d g |  _ d
 d g | _ t j | j t  j d
 d g   t j | j j t  j d
 d g   t	 | |   d  S(   Ni   i   i   i   i   i   i   R   R   R   t   ysI   Length mismatch: Expected axis has 2 elements, new values have 4 elementst   At   0t   BR1   (   Re   Rf   (   Rg   i   (   R   RD   R;   RI   R   R   R   R   t   _metaR   R2   R3   R4   t   strt   valueR!   (   RV   RA   t   msgt   err(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_columnsŗ   s&    %""%5"%c          C   sŗ   t  j d d d d d d d g d d	 }  t j |  d  } d
 |  _ d
 | _ |  j d
 k sc t  t | |   |  j } | j } d
 | _ d
 | _ | j d
 k s© t  t | |  d  S(   Ni   i   i   i   i   i   i   R   R   t   renamed(   R   R   R;   RI   R   R!   R   R   (   RS   t   dst   indt   dind(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_seriesÖ   s    *						c          C   sŌ  t  j d d d d d d d g d d	 }  t j |  d  } t | j d
  |  j d
   | j d	 k sp t  t | j   |  j    | j d d t |  j d d t | j d k sÄ t  t | |   t  j d d d d d d d g d d	 }  t j |  d  } x t t	 g D] } | j d   d | } t | |  j d     | j
 | k sft  | j |  d | } t | |  j |    | j
 | k st  qWt j t   | j d   d t Wd  QXt | j d    |  j d     | j |  } t | |  j |    | j
 s0t  | j   } | j d   d t } t | |  j d     | j
 s}t  | j d   d t d t } | | k s­t  |  j d   d t t | |   d  S(   Ni   i   i   i   i   i   i   R   R   Rd   t   zt   inplaceR   R   t   cR   t   et   ft   gc         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ū   RC   t   sorted_indexc         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ü   RC   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   (   R   R   R;   RI   R   t   renameR   R!   t   TrueR-   t   known_divisionsR2   R3   R4   t   clear_divisions(   RS   Ro   t	   is_sortedt   rest   ds2(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_series_methodč   s@    **%s   method,test_valuest   tdigesti
   R.   i   c         C   sC  |  d k r t  j d  n  t j t t | d   | d  } t j i t t | d   | d d 6t t | d   | d d 6 } t j | | d  } t j | | d  } d d g } t	 | j
   | j
 d	 |    t	 | j
   | j
 d	 |    t	 | j
 d
 |  | j
 d
 | d	 |    t	 | j
   | j
 d d d	 |    t	 | j
   | j
 d d d	 |    t j i t t | d   | d d 6t t | d   | d d 6t d | d   | d d 6 } t j | | d  } t	 | j
   | j
 d	 |    t	 | j
   | j
 d d d	 |    d  S(   NR   t   cricki   i    R   R   g      Š?g      č?t   percentiles_methodt   percentilest   split_everyi   t   abcdefRu   (   R2   t   importorskipR   R   RG   t   rangeRD   R;   RI   R   t   describe(   t   methodt   test_valuesRS   RV   Ro   RA   t   test_quantiles(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_describe  s(    '(%%%(#R   c         C   sĖ   |  d k r t  j d  n  t j t j i d d g d 6 d  } t  j t   } | j d |   Wd  QXd t	 |  k s t
  t  j t   } | j j d |   Wd  QXd	 t	 |  k sĒ t
  d  S(
   NR   R   R   R   Re   i   R   s)   DataFrame contains only non-numeric data.s,   Cannot compute ``describe`` on object dtype.(   R2   R   R;   RI   R   RD   R3   R4   R   Ri   R!   Re   (   R   RA   t   rec(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_describe_empty5  s    (c          C   sõ   t  j d d  }  t j |   } xĶ d d d d g d d d d g d d d g g D] } x t t t j g D]~ } | d k r | j	 d |  j
   } n | j	 d | |   j
   } t | d d	  t | d
 d  t | d d  qk WqR Wd S(   s§   make sure describe is sorting percentiles parameter, q, properly and can
    handle lists, tuples and ndarrays.

    See https://github.com/dask/dask/issues/4642.
    i    ie   g      Š?g      ą?g      č?g®Gįz®ļ?R   s   25%g      9@s   50%g      I@s   75%g     ĄR@N(   t   dat   arangeR;   t   from_dask_arrayR7   RG   t   tupleR"   t   arrayR   R    R   (   Re   Ro   t   qt	   f_convertt   r(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt%   test_describe_for_possibly_unsorted_qD  s    !c       
   C   s  t  j t j j d d  d t d  }  t  j t j j d d  d t d  } t j |  d  } t j | d  } t | j	   |  j	    t | j
   |  j
    t | j   |  j    t | j   |  j    t | j	 d d  |  j	 d d   t | j
 d d  |  j
 d d   t | j d d  |  j d d   t | j d d  |  j d d   t j	 | d | t | |  j	    t j
 | d | t | |  j
    | j d |  t | |  j    | j d |  t | |  j    t j	 | d | d d t | |  j	 d d   t j
 | d | d d t | |  j
 d d   | j d | d d  t | |  j d d   | j d | d d  t | |  j d d   t | j j	   |  j j	    t | j j
   |  j j
    t | j j   |  j j    t | j j   |  j j    t  j i d d t j d	 d d
 d d g d 6d d t j t j t j d t j t j g d 6t j g d d 6 }  t j |  d  } t |  j	   | j	    t |  j   | j    t |  j   | j    t |  j
   | j
    t |  j	 d t  | j	 d t   t |  j d t  | j d t   t |  j d t  | j d t   t |  j
 d t  | j
 d t   t |  j	 d d  | j	 d d   t |  j d d  | j d d   t |  j d d  | j d d   t |  j
 d d  | j
 d d   t |  j	 d d d t  | j	 d d d t   t |  j d d d t  | j d d d t   t |  j d d d t  | j d d d t   t |  j
 d d d t  | j
 d d d t   d  S(   Nid   i   R   t   abcdet   axisi   t   outi   i   i   i   i   R   R   Ru   i   t   skipna(   R   RD   R"   RE   RF   RG   R;   RI   R   t   cumsumt   cumprodt   cummint   cummaxR   t   nanR-   (   RV   t   df_outRA   t   ddf_out(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_cumulative[  sh    **%%%%+.%%%%%%%%111t   funct   reasons?   ValueError: Can only compare identically-labeled Series objectsc         C   sö   t  j i d d d d d d d d g d	 6 } t j | d
 d } t |  | | j d k   |  | | j d k    t  j i d d d d d  d d d  d d g
 d	 6 } t j | d
 d } t |  | | j d k   |  | | j d k    d  S(   Ni   i   i   i   i   i   i   i   R   R1   (   R   RD   R;   RI   R   R   R7   (   R¦   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_cumulative_empty_partitions  s    
.34c       	   C   sN  t  j i t j d d d t j d g d 6d d t j d t j t j g d 6d d d d t j d g d 6d	 d
 d d d d d g }  t j |  d  } t | j j   |  j j    t | j	 j   |  j	 j    t | j
 j   |  j
 j    t | j   |  j    t | j d d  |  j d d   t | j d d g  |  j d d g   t | j d d d g  |  j d d d g   t | j d d d g d d  |  j d d d g d d   t |  j d d   |  j d d g  t | j d d   |  j d d    t |  j d d  |  j  t | j d d  |  j d d   t |  j d d  |  j d
 d d d d g  t | j d d  |  j d d   t |  j d d  |  j d
 d d d d g  t | j d d  |  j d d   t |  j d d  |  j d d g  t | j d d  |  j d d   d  S(   Ni   i   i   i   R   i   Rd   Rs   R   i
   i   i   i(   i2   i<   t   howt   allt   subsett   threshi    (   R   RD   R"   R¢   R;   RI   R   R   t   dropnaRd   Rs   R7   t   loc(   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dropna±  s0    ("%+1&%%/%/%&s   lower, upperg      @g      @c         C   s  t  j i d d d d d d d d d	 g	 d
 6d d d d d d d d d g	 d 6 } t j | d  } t  j d d d d d d d d d	 g	  } t j | d  } t | j d |  d |  | j d |  d |   t | j d |   | j d |    t | j d |  | j d |   t | j d |  d |  | j d |  d |   t | j d |   | j d |    t | j d |  | j d |   d  S(   Ni   i   i   i   i   i   i   i   i	   R   R   t   lowert   upper(   R   RD   R;   RI   R   R   t   clip(   R°   R±   RV   RA   RS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_clipŌ  s    +(*%%%c       	   C   sń  t  j i d d d g d 6 }  t  j i d g d 6 } t  j i d d 6d d 6 } t j |  d  } t j | d  } t j | d	  } t |  j   | j    t t  j d g d
 d | j    t | j   | j    t j t	   } | j d d  Wd  QXd j
 t |   } | t | j  k s:t  t j t   } | j d d	  Wd  QXd j
 d	 t |   } | t | j  k st  t j t   } | j d d  Wd  QXd j
 t |   } | t | j  k sķt  d  S(   Ni   i   i   R   i    t   testid   R   i   R   R   s)   {0} does not support squeeze along axis 0s   No axis {0} for object type {1}s    No axis test for object type {0}(   R   RD   R   R;   RI   R   t   squeezeR2   R3   t   NotImplementedErrorR   t   typeRi   Rj   R!   R4   (   RV   t   df2RS   RA   t   ddf2Ro   t   infoRk   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_squeezeé  s*    %c          C   så  t  j i d d d d d d d d d	 g	 d
 6d d d d d d d d d g	 d 6 }  t j |  d  } t  j i t t t g d d
 6t t t g d d 6 } t j | d  } t  j i d d d d d d d d d	 g	 d
 6d d d d d d d d d g	 d 6d d d d d d d d d d g	 } t j | d  } t  j i t t t g d d
 6t t t g d d 6d d d d d d	 d d d d g	 } t j | d  } t  j i d d d d d d d d d	 g	 d
 6d	 d d d d d d d d g	 d 6d d d d d	 d d d d g	 d 6d d d d d d d d d d g	 } t j | d  }	 t  j i t t t g d d
 6t t t g d d 6t g d	 d 6t g d	 d 6d d d d d d	 d d d d g	 }
 t j |
 d  } | | |  | f | j d d d d g  | |  | f | | | | f | j d d d d g  | j d d	 d d g  | | f |	 | | |
 f |	 j d d d d g  | | |
 f | | |  | f | | | | f |	 |
 | |
 f g	 } x1| D])\ } } } } t | t j  sŽt  t | t j t  j f  s’t  t | t  j  st  t | t  j  s/t  t	 | j
 |  | j
 |   t	 | j |  | j |   t	 | j
 | |  | j
 | |   t	 | j | |  | j | |   t	 | j
 | j |  | j
 | j |   t	 | j | j |  | j | j |   t	 | j j
 | j  | j j
 | j   t	 | j j | j  | j j | j   t	 | j j
 | j | j  | j j
 | j | j   t	 | j j | j | j  | j j | j | j   q“Wd  S(   Ni   i   i   i   i   i   i   i   i	   R   R   R   i    i
   i   i   i   Ru   R   (   R   RD   R;   RI   R{   R-   t   repartitionR:   R!   R   t   wheret   maskR   (   t   pdf1t   ddf1t   pdf2R¹   t   pdf3t   ddf3t   pdf4t   ddf4t   pdf5t   ddf5t   pdf6t   ddf6t   casesRA   t   ddcondRb   t   pdcond(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_where_mask  sd    +(+%$$+"%$$$0	$!''--++9c           C   si   t  t j d   t j t j  t j t j  t  t j d   t j t j d  t j t j d  d  S(   Nc         S   s   |  | S(   N(    (   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   F  RC   c         S   s   |  | | S(   N(    (   R   R   Ru   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   H  RC   i   (   R   R;   t   map_partitionsR   R   R   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt"   test_map_partitions_multi_argumentE  s    !c          C   sA  t  t j d   d t t  t  t j d    t  t j d    }  t  |  t j d d   t  t j d    t j d d d g d t j d	 t	 t
 i d d 6d
 t  } t j d   |  }  |  j t j t j f k rų |  j   d k sž t  t j d   |  }  |  j t j k r7|  j   d k s=t  d  S(   Nc         S   s   |  S(   N(    (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   M  RC   t   metac         S   s   |  S(   N(    (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   N  RC   c         S   s   |  j  d d  S(   NR   i   (   t   sum(   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   O  RC   R   i   c         S   s   d S(   Ni   (    (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   R  RC   RM   t   check_divisionsR   i    c         S   s   d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   U  RC   i   c         S   s   d S(   Ng      @(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   W  RC   g      @(   R   i    (   R   R   RĪ   R   RŃ   R   R   R"   RN   R-   R
   t   intR;   RM   t   int32R    R!   t   float64(   t   resultR   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partitionsL  s    33c          C   sS   t  j t  j d d  }  t |  t j  s3 t  t d   |  D  sO t  d  S(   Nt	   schedulers   single-threadedc         s   s   |  ] } | t  j k Vq d  S(   N(   R   RD   (   t   .0R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>^  s    (	   R   RĪ   R·   R    R:   R   R   R!   RŖ   (   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partitions_type[  s    c       	   C   s  d   }  t  t j |  t d t j  t  t j |  t d t j  k sQ t  t  t j d   t d t d d j  t  t j d   t d t d d j  k s« t  d   }  t  t j |  t t d t j  t  t j |  t t d t j  k st  d  S(   Nc         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   b  RC   RŠ   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   e  RC   t   tokeni   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   f  RC   c         S   s   |  S(   N(    (   R   Rd   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   h  RC   (   R,   R;   RĪ   R   R.   R!   (   R¦   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partitions_namesa  s    	*'3	!c          C   sĆ  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } t j d   | d | } t j | j | j  t |  |  t j d   | j	 d | j	 } | j
 | j	 j
 k sÄ t  t |  j	 |  t j d   | j	 d | j	 } | j
 | j	 j
 k st  t |  j	 |  t j d   |  } t | t j  sMt  | j d k sbt  t j d   | d d } t | t j  st  | j
 d k sŖt  | j d k sæt  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   R1   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   q  RC   RŠ   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   u  RC   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   y  RC   c         S   s   |  j  |  j S(   N(   R   Rd   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   }  RC   R   c         S   s   |  j  d S(   Ni   (   R   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   (   R   R   (   R   RD   R;   RI   RĪ   R   R   R   R   R   R   R!   R:   R   RM   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partitions_column_infom  s$    5!!c          C   s'  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } | j d    } t | t j  st t  t j | j	 | j	  | j d    } t | t j
  s“ t  | j d k sÉ t  | j d   d d } t | t j
  sł t  | j d k st  | j d k s#t  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   R1   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  j  d S(   Ni   (   R   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   R   c         S   s   |  j  d S(   Ni   (   R   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   RŠ   (   R   R   (   R   RD   R;   RI   RĪ   R:   R!   R   R   R   R   RM   R   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_map_partitions_method_names  s    5c          C   sö   t  j t d  d d }  t  j i t j d d t j d 6t j d d d t j d	 6d
 |  } t j | d d } | j	 d   d d d d g } | j
 d | j | j  } t | |  | j	 d    } | j d  } t | |  d  S(   NR   R   t   myindexi   RM   Re   i
   i   Rg   R   R1   i   c         S   s   |  j  d |  j |  j  S(   Nt   C(   t   assignRe   Rg   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   RŠ   t   i4Rą   c         S   s   |  j  d  S(   Nt   newindex(   t   rename_axis(   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ¤  RC   Rć   (   Re   Rā   (   Rg   Rā   (   Rą   Rā   (   R   R   RG   RD   R"   R   RŌ   R;   RI   RĪ   Rį   Re   Rg   R   Rä   (   R   RV   RA   R   t   sol(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt-   test_map_partitions_propagates_index_metadata  s    "	s   now we use SubgraphCallablesc          C   sž   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } d d  } | j j | d d } d t t | j   k sŖ d t t | j   k sŖ t	  t
 |  j d |  | j j | d d j | j j | d d j k sś t	  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   R1   c         S   s   |  | S(   N(    (   RS   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRw   ®  s    s   ['x', 5]s   {'x': 5}(   R   RD   R;   RI   R   RĪ   Ri   t   dictR.   R!   R   R&   (   RV   R   Rw   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt)   test_map_partitions_keeps_kwargs_readable©  s    5<c          C   sl   t  j i d d d d d g d 6 }  t j |  d d } d   } t j | | | j  } t | |  d  S(	   Ni   i   i   i   i   R   R1   c         S   s:   t  |   t  |  k s t  t  |   d k s6 t  |  S(   Ni    (   t   lenR!   (   RV   t   df_x(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   checkĀ  s    (   R   RD   R;   RI   RĪ   R   R   (   RV   RA   Rė   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt5   test_metadata_inference_single_partition_aligned_args»  s
    %	c          C   sP  t  j   }  t  j d d  } t j   } t |  |  t | |  |  j | j k s\ t  t  j j   }  t  j j d d  } t j j   } t |  |  t | |  |  j | j k sĮ t  t  j j   }  t  j j d d  } t j j   } t |  |  t | |  |  j | j k s&t  t j	 t
   t  j d t  Wd  QXd  S(   NR   i   t   keep(   R   t   drop_duplicatesR   R   R&   R!   R   R   R2   R3   R¶   R-   (   R   t   res2Rå   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_drop_duplicatesĖ  s(    c          C   sņ   t  j i d d d d d d g d 6d d d d d d g d 6 }  t j |  d	 d } x i d
 d 6i d d 6g D]y } t |  j j |   | j j |    xK d g d d d g g D]1 } t |  j d | |  | j d | |   qµ Wqq Wd  S(   Ni   i   i   R   R   R   Ru   Rd   R1   t   firstRķ   t   lastR«   (   R   RD   R;   RI   R   R   Rī   (   RV   RA   t   kwargt   ss(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_drop_duplicates_subsetå  s    "!c          C   s(  t  j t j j d d  d t d  }  t j |  d  } | j d k sQ t	  | j
 d  } t | t j  sx t	  t | |  j d d ! | j
 d
  } t | |  j d d ! | j
 d  } t | |  j d d	 ! t |  t |  t |  t |   k st	  | j j
 d  } t | t j  s7t	  t | |  j j d d ! | j j
 d
  } t | |  j j d d ! | j j
 d  } t | |  j j d d	 ! t |  t |  t |  t |  j  k sŽt	  t j t   | j
 d  Wd  QXt j t   | j
 d  Wd  QXd  S(   Ni
   i   R   R   i   i    i   i   i	   i   i   i   i’’’’(   i    i   i   i	   (   R   RD   R"   RE   RF   RG   R;   RI   t	   divisionsR!   t   get_partitionR:   R   R®   Ré   R   R   R2   R3   R4   (   Rb   RA   t   div1t   div2t   div3(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_get_partitionņ  s.    *25c           C   sI   t  j d k s t  t  j j d k s- t  t  j j d k sE t  d  S(   Ni   i   (   R   t   ndimR!   R   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_ndim  s    c           C   s"   t  j t j k j   s t  d  S(   N(   R   t   dtypesR   RŖ   R!   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_dtype  s    c       	   C   s©   t  j i d d d d d d d g d 6 }  t j |  d d } | j j   } |  j j   } t | |  | j j d d  } t | |  | j | j k s„ t  d  S(   Ni   i   i   i   R   R1   R   (	   R   RD   R;   RI   R   t   value_countsR   R&   R!   (   RV   RA   RÖ   R(   t   result2(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_value_counts  s    +c          C   sl  t  j i d d d d d d d d d d g
 d 6d d d t j d d d d	 t j d g
 d
 6 }  t j |  d d } t | j j   t  j	 |  j j   d d  t | j
 j   t  j	 |  j
 j   d d
  t | j j d d  t  j	 |  j j   d d  t | j
 j d d  t  j	 |  j
 j   d d
  | j j d d  j | j j   j k sht  d  S(   Ni   i   i   i   R   R   Ru   R   R   Rd   R1   R   R   (   R   RD   R"   R¢   R;   RI   R   R   t   uniqueR   Rd   R&   R!   (   Rb   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_unique'  s    ...c       	   C   sÆ  d d d g }  t  j |   } i d d g d 6d d g d 6} t t j j |   t j j |    t t j j |  t j j |   t j t	   t j j t j  Wd  QXt
 j j t j j |   t j j |    t
 j j t j j |  t j j |   t j t	   t j j t j  Wd  QXt t j |   t j |    t t j |  t j |   x: t | t g D]) } t j t	   t j |  Wd  QXq~Wd  S(   Ni   i   i   i    R   R   (   R   R   R   R   R   t   isinR   R2   R3   R¶   R   t   utilsR   (   t   f_listt   f_seriest   f_dictt   obj(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_isin6  s      %%++c           C   sF   t  t  t  t  k s t  t  t j  t  t j  k sB t  d  S(   N(   Ré   R   R   R!   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_lenO  s    c           C   sI   t  t j t j  t  t j j t j j  t  t j j t j j  d  S(   N(   R   R   t   sizeR   R   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_sizeT  s    c          C   sÄ   t  j }  t |  d j   |  d f t t  t t j  f  t t j |   d t t  t t j  f  t  j j }  t |  d j   t t j   t t j |   d t t j  f  d  S(   Ni    i   (	   R   t   shapeR   R    Ré   R   R   R;   R   (   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_shapeZ  s    	6/ c           C   s6   t  t j j t j j  t  t j j t j j  d  S(   N(   R   R   R   t   nbytesR   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_nbytesd  s    s   method,expectedgffffffÖ?gffffff@g      @g       @g        g@g333333ó?g333333@g      @c         C   s§  |  d k r t  j d  n  t j j d d g d |  } t j j d d g  } t |  d k sj t  | j d k s t  t	 | j
 | j
  t | t j  sŖ t  | j   } t | t j  sĪ t  | j d t  j | d  k sō t  | j d t  j | d  k st  t j t j d	  d
 t j d	  } t j | d  } | j
 j d d g d |  } | j d d g  } t |  d k st  | j d k s³t  t	 | j
 | j
  t | t j  sŽt  | j   } t | t j  st  | j d t  j | d  k s(t  | j d t  j | d  k sNt  t j j d d |  } t | t j j  st  | j   } | | d k s£t  d  S(   NR   R   g333333Ó?gffffffę?R   i   i    i   i
   R   i   g      ą?i   (   g333333Ó?gffffffę?(   g333333Ó?gffffffę?(   R2   R   R   R   t   quantileR   Ré   R!   Rö   R   R   R:   R;   R   R    R   t   iloct   approxR"   R   RI   t   coreR
   (   R   R(   RÖ   t   expRS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_quantilei  s8    &&'&&c         C   s°   |  d k r t  j d  n  t j i d t j d g d 6 } t j | d  } | j   } | j d |   } t	 | |  | j
 j   } | j
 j d |   } t	 | |  d  S(   NR   R   i    i   Re   R   (   R2   R   R   RD   R"   R¢   R;   RI   R  R   Re   (   R   RV   RA   R(   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_quantile_missing  s    "c         C   s   |  d k r t  j d  n  t j j g  d |  } t j j g   } | j d k s[ t  | j	 d k sp t  | j
   j	 d k s t  t | |  d  S(   NR   R   R   R   (   NN(   R2   R   R   R   R  R   Rö   R7   R!   R   R    R   (   R   RÖ   R  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_empty_quantile£  s    g      #@g     =@g     3@Re   t   XRg   g      @g     8@g      -@g     @A@g      Š?g      č?R   g     0@g     @B@g     :@g      ų?g     5@g      '@g     Ą1@g     ąB@g     Ą;@c            so   d k r t  j d  n  t j i t j d  d 6t j d d  d 6t j d d  d	 6d
 d d d g d d 6d d d d	 d g } t j | d      j d   } | j	 d k sĆ t
  | j d k sŲ t
  | j   } t | t j  sü t
  | j d k st
  t j | j t j d d d	 g   | | d k j   sRt
    j d d g d  } | j	 d k st
  | j d k st
  | j   } t | t j  s»t
  t j | j t j d d g   t j | j t j d d d	 g   | | d k j   j   s$t
  t   j d d d   | j d d   t  j t    f d    d  S(   NR   R   i   Re   i(   R  i
   i   Rg   R   R   Ru   R   i   Rą   R   i   R   i   g      ą?i    g      Š?g      č?R   c              s     j  d d g d d d  S(   Ng      Š?g      č?R   i   R   (   R  (    (   RA   R   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ż  RC   (   Re   R  (   g      Š?g      č?(   R2   R   R   RD   R"   R   R;   RI   R  R1   R!   Rö   R    R:   R   R   R   R   R   R   RŖ   R   R   R3   R4   (   R   R(   RV   RÖ   (    (   RA   R   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dataframe_quantile°  s4    %"%"+c          C   s  t  j d d  }  t j |   } x d d d g d d d d g d d d g d d d d g g D]W } | j |  j   } t | j d d  t | j d d  t | j d d	  q^ W| j d g  j   } t | j d d  | j d  j   } t | d  d
 S(   s   check that quantile is giving correct answers even when quantile parameter, q, may be unsorted.

    See https://github.com/dask/dask/issues/4642.
    i    ie   g      Š?g      ą?g      č?g®Gįz®ļ?g      9@g      I@g     ĄR@N(   R   R   R;   R   R  R    R   R®   (   Re   Ro   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt%   test_quantile_for_possibly_unsorted_qą  s    *c           C   s   t  t j t j  d  S(   N(   R   R   R   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_index÷  s    c          C   sŅ  t  j i t d  d 6g  t d d  D] }  t |   ^ q& d 6d t  j t d   } t j | d d	 } t j | d d	 d
 t } | j	 s t
  | j d d d d d | j j   d | j | j d d   d t  j d d d   } | j d d d d d | j j   d | j | j d d   d t  j d d d   } | j d d d d d | j j   d | j | j d d   d t  j d d d   } t | |  t | |  | j d | j d  } t | | j d | j d   | j d | j  } t | | j d | j   t j t   | j d | j d  Wd  QXt j t  ! | j d t t d    Wd  QXt j t   | j d | j  Wd  QXt j t   | j d | j  Wd  QXd  S(   Ni   R   i
   i   R   R   t   abcdefghR1   i   t   sortRu   i   R   t   stringRv   Rw   Rx   c         S   s   |  j  |  j S(   N(   R   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   t   dtiā  i   i   c         S   s   |  j  |  j S(   N(   R   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  j  |  j S(   N(   R   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   i	   RU   (   R   RD   R   t   floatR   RG   R;   RI   R-   R|   R!   Rį   R   RŃ   R   RQ   R   R   R2   R3   R4   t	   TypeError(   t   iRV   RA   t   ddf_unknownR   t   res_unknownRå   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_assignū  sL    ,			 "c          C   sl   t  j t j i t d  d 6 d d }  |  j d |  j j    } |  j d d    } t | |  d  S(   Ni
   Re   R1   i   Rg   c         S   s   |  j  j   S(   N(   Re   t   shift(   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   1  RC   (	   R;   RI   R   RD   R   Rį   Re   R)  R   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_assign_callable.  s    +c             sć  t  j i t d  d 6d d d d d d d	 d	 d	 g	 d
 6d t  j d	 d d d d d d d d g	 d d }  t j |  d d   t   j j d    |  j j d     t	 d   |  j j
 D  } t   j j |  |  j j |   t   j j |  |  j j |   t  j |  } t   j j |  |  j j |   t   j j |  |  j j |   t   j j | d   j |  j j |   t   j j | d d |  j j |   t j t   f d    d  S(   Ni	   R   i   i   i   i   i   i   i    R   R   i   R   Rß   R1   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ;  RC   c         s   s   |  ] } | | d  f Vq d S(   i   N(    (   RŁ   t   v(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr><  s    RŠ   R   c              s     j  j t j  S(   N(   R   t   mapR   R   (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   D  RC   (   R   R   (   R   RD   R   R   R;   RI   R   R   R,  Rē   t   valuesR   R   R2   R3   R$  (   RV   t   lk(    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map5  s    %3+%%%%.+c          C   ss   t  t j d d d g  t j d d d g  g  }  t |  j  d d g k sW t  t |   d k so t  d  S(   NR   R   R   i    (   R	   R   RD   RG   R   R!   Ré   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_concatG  s    !c          C   s   t  j d t  j d  }  t |   |  j   } t |  |  t t  j t t  j  t  j j    t t  j j   t t  j j    t  j j   j    d  S(   NRu   i   (   R   Rį   R   R·   t   _argsR   RŃ   (   Rv   Rw   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_argsN  s
    %c          C   sG   t  j s t  t j t d t d d  d  d  g }  |  j sC t  d  S(   NR   Rö   (   R   R|   R!   R;   RD   R+   RŠ   R7   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_known_divisionsV  s    $c          C   s2  i t  j i d d d g d 6d d d g d 6 d 6t  j i d d d g d 6d d d g d 6 d 6t  j i d d d g d 6d
 d
 d
 g d 6 d 6}  t i d d 6d d 6 } t j |  d	 | d  d  d  d  g  } | j d d  } t | j j   | j j    t | j | j	 d | j | j	 d  d  S(   Ni   i   i   R   i   i   i   R   R   i    i   i   i	   R   RŲ   t   sync(   R   i    (   R   i   (   R   i   (
   R   RD   R   R;   R7   R    R   R   RŃ   R   (   R+   RŠ   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_unknown_divisions\  s    303$s   0.22.0sK   Parameter min_count not implemented in DataFrame.sum() and DataFrame.prod()c       
   C   sN  t  j d  d d g d  d d g d d d g g  t  j d d  d  g d  d d g d d d g g  g }  g  |  D] } t j | d d ^ qm } d d	 g } x­ t |  |  D] \ } } x | D] } x| d d	 d d g D]h } t | j d
 | d |  | j d
 | d |   t | j d
 | d |  | j d
 | d |   qÖ Wq½ WqŖ Wd  S(   Ni   i   i   i   i   i	   R1   i    i   t	   min_countR   (	   R   RD   R7   R;   RI   t   zipR   RŃ   t   prod(   t   dfsRV   t   ddfst   axesRA   R   R6  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_with_min_counth  s    (t   joint   innert   outert   leftt   rightc   	      C   s  t  j i t j j d  d 6t j j d  d 6d d d d d d	 d
 d d d d g
 } t  j i t j j d  d 6t j j d  d 6d d d	 d d d d d d d d g
 } t j | d	  } t j | d	  } | j | d |  \ } } | j | d |  \ } } t | |  s!t	  t | |  s6t	  | d j | d d |  \ } } | d j | d d |  \ } } t | |  st	  t | |  s¦t	  | j | d |  d d \ } } | j | d |  d d \ } } t | |  sżt	  t | |  st	  | d j | d d |  d d \ } } | d j | d d |  d d \ } } t | |  syt	  t | |  st	  d  S(   Ni
   Re   Rg   R   i   i   i   i   i   i	   i   i   i   i    i   i   i   R=  t
   fill_value(
   R   RD   R"   RE   RF   R;   RI   t   alignR   R!   (	   R=  t   df1at   df1bt   ddf1at   ddf1bt   res1Rļ   t   exp1t   exp2(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_align~  s0    ''##!!))c   	      C   s  t  j i t j j d  d 6t j j d  d 6t j j d  d 6d d d d d	 d
 d d d d d g
 } t  j i t j j d  d 6t j j d  d 6t j j d  d 6d d d
 d d d d	 d d d d g
 } t j | d
  } t j | d
  } | j | d |  d d \ } } | j | d |  d d \ } } t | |  sSt	  t | |  sht	  | j | d |  d d \ } } | j | d |  d d \ } } t | |  sæt	  t | |  sŌt	  | j | d |  d d \ } } | j | d |  d d \ } } t | |  s+t	  t | |  s@t	  | j | d |  d d \ } } | j | d |  d d \ } } t | |  st	  t | |  s¬t	  t
 j t   | j | d |  d d Wd  QXt
 j t  & | d j | d d |  d d Wd  QXd  S(   Ni
   Re   Rg   Rą   R   i   i   i   i   i   i	   i   i   i   R?   i    i   i   i   R=  R   R   t   XXX(   R   RD   R"   RE   RF   R;   RI   RC  R   R!   R2   R3   R4   (	   R=  RD  RE  RF  RG  RH  Rļ   RI  RJ  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_align_axis£  s<    ''!!!!!!!!c          C   s  t  j i t j j d d t j g d  d 6t j j d d t j g d  d 6 }  t  j i t j j d d d g d  d 6t j j d d d	 g d  d 6 } t j |  d
  } t j | d  } d   } xē | | |  | f | j | j |  j | j f | j	 | j	 |  j	 | j	 f g D] \ } } } } x t
 d  f t
 d f | d  f g D]b \ }	 }
 | j | |	 d |
 } t | j | |	 d |
 |  t | j | |	 d |
 |  qMWqWt | j | t
 d t |  j | t
 d t  | j | t
  j | j | t
  j k st  d  S(   Ni   i   id   Re   R   R   Rg   i   Ru   i   i   c         S   s   |  S(   N(    (   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ö  RC   RB  t	   overwrite(   R   RD   R"   RE   t   choiceR¢   R;   RI   Re   Rg   R   R7   t   combineR   R-   R&   R!   (   t   df1Rø   RĄ   R¹   Rń   t   ddat   ddbR   R   R¦   RB  Rå   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_combineĶ  s"    +((%	1.'c          C   s²  t  j i t j j d d t j g d  d 6t j j d d t j g d  d 6 }  t  j i t j j d d d g d  d 6t j j d d d	 g d  d 6 } t j |  d
  } t j | d  } t | j	 |  |  j	 |   t | j	 |  |  j	 |   t | j
 j	 | j
  |  j
 j	 | j
   t | j
 j	 | j
  |  j
 j	 | j
   t | j j	 | j  |  j j	 | j   t | j j	 | j  |  j j	 | j   d  S(   Ni   i   id   Re   R   R   Rg   i   Ru   i   i   (   R   RD   R"   RE   RO  R¢   R;   RI   R   t   combine_firstRe   Rg   (   RQ  Rø   RĄ   R¹   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_combine_firstę  s    +((%+++c          C   s]  d d l  m }  m } t j d  } | j } t j   } t j | d d } | d } |  | |   } t	 | |  |  | |   } t	 | |  |  | | j
   } t	 | j
 |  |  | | j
   } t	 | j
 |  |  | | j   } t	 | j |  |  | | j   } t	 | j |  | j
 j   }	 |  | |	   }
 t	 |	 |
  d  S(   Ni’’’’(   t   loadst   dumpst   cloudpickleR1   i   i   (   t   pickleRW  RX  R2   R   R   RW   R;   RI   R   Re   R   RŃ   (   RW  RX  RY  t   cp_dumpsR   RV   Rø   t   a2t   i2RS   t   s2(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dataframe_picklableū  s*    	
c          C   s  t  j d d g d  \ }  } t |  t j  s6 t  t | t j  sN t  |  j | j k sf t  t |  j    t | j    t t	  k s t  t  j d d g d  \ } } | j |  j k sŠ t  | j | j k sč t  t  j d d d g d  } t
 g  | D] } | j ^ q } | j |  j | j g  t |  d k sVt  t j t   t  j d d g d  Wd  QXd  S(   Ng      ą?i*   gŁ?g¹?i   (   R   t   random_splitR:   R;   RD   R!   R&   Ré   R    R   t   sett   updateR2   R3   R4   (   R   R   R\  t   b2t   partst   pt   names(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_random_partitions  s    4"c          C   sY   t  j d d d d d d g d d }  t j |  d	 d
 } t | j   |  j    d  S(   Ng+ŁĪ÷ń?gClēū @gClēū@gX9“Čv¾ó?g¬Zd;ß@g¬Zd;ß	@R   R   R1   i   (   R   R   R;   RI   R   t   round(   t   psRS   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_series_round1  s    'c             s  d   }  t  j i d d d d d d g d 6t d	  d
 6d d d d d d d g } t j | d      j d d d d d g  } | j d* k s t  t   |  t t	 t j | j
 | j d f  | j d   xr d d g d d g d g d d g d d g d d d d g d d d d g g D]"  t j t    f d    q&Wt  j t j j d d  d t d  } x4t d d  D]#} t j | |  } t | |  xd d g d d d g d d d g d d d d g d d d g d d d d g d d d d d g d d d d d d d d g g D]  | j d   } |  | |  | j t   k sjt  t | |  | j j d   } |  | j |  | j t   k s·t  t | j |  q*WxŪ d d g d d d d g d d d d d g g D]©  | j d  d t  } |  | |  | j t   k sBt  t | |  | j j d  d t  } |  | j |  | j t   k st  t | j |  qüWqWt  j i d d d d d d d d d d g
 d 6d d d d d d d d d d g
 d
 6d t d  } xžt d d  D]ķ} t j | |  } t | |  xö t d  t d   t d!  t d"  t d#  t d$  t d%  t d&  t d  g	 D]  | j d   } |  | |  | j t   k sßt  t | |  | j j d   } |  | j |  | j t   k s,t  t | j |  qWxĢ t d'  t d(  t d)  g D]©  | j d  d t  } |  | |  | j t   k sØt  t | |  | j j d  d t  } |  | j |  | j t   k sūt  t | j |  qbWq"Wd  S(+   Nc         S   s   g  | j  D] } | d j d  r
 | ^ q
 } t |  } t j g  | D] } t t j | j  |  ^ qH  } t |  |  t |  |  d S(   s   Check data is split properlyi    s   repartition-splitN(	   R.   t
   startswithR,   R   t   concatR   R;   RD   R   (   t   origR   t   kt   keyst   sp(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   _check_split_data9  s    /	+i   i   i   i   i   i   R   t   abdabdRd   R   i
   i   i   i(   i2   i<   Rö   i    iF   c              s     j  d   S(   NRö   (   R¼   (    (   R   t   div(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Q  RC   i   R   t   abxyziū’’’iž’’’i	   t   forcei   R=   t   ajt   ajjt   adjt   abfjt   ahjjt   acdjt   adfijt   abdefgijt   Yadijmt   acmrxzt   Yajz(   i
   i   i2   i<   (   R   RD   RG   R;   RI   R¼   Rö   R!   R   R   R.   R&   R  R2   R3   R4   R"   RE   RF   R   R   R   R{   (   Rq  RV   R   Rb   Re  RA   t   rddft   rds(    (   R   Rs  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition7  s    		2! *377.($(c          C   sD  t  d d g d d d g d d d  }  |  i t j d d d t f d 6t j d d d t f d 6d d 6d d 6k sy t  t  d d d g d d	 d d g d d d  }  |  i t j d d d t f d 6t j d d d	 t f d 6t j d d	 d t f d 6t j d d d t f d 6t j d d g f d 6d d 6d  d! 6k s@t  d  S("   Ni    i   R   R   Ru   i   i   i   i   i   (   R   i    (   R   i    (   R   i    (   R   i   (   R   i    (   Ru   i    (   R   i   (   Ru   i   (   R   i    (   R   i    (   R   i   (   R   i   (   R   i   (   R   i   (   R   i   (   R   i   (   R   i    (   R   i   (   Ru   i    (   R   i   (   Ru   i   (   R   i   (   Ru   i   (   R   R   t   boundary_sliceR-   R{   R!   Rl  (   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_divisions  s    '-c       	   C   s  t  j i d d d d d d g d 6t d  d	 6d
 d d d d d d g }  t j |  d d d d d g } t | t j  s t  | j d k s t  t | |   t j |  j	 d d d d d g } t | t j
  sä t  | j d k sł t  t | |  j	  d  S(   Ni   i   i   i   i   i   R   Rr  Rd   R   i
   i   i   i(   i2   i<   Rö   (   i
   i   i2   i<   (   i
   i   i2   i<   (   R   RD   RG   R;   R¼   R:   R!   Rö   R   Rd   R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt$   test_repartition_on_pandas_dataframe”  s    2!$t	   use_indext   nRn  RM   s   M8[ns]t	   transformc         C   s   |  S(   N(    (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ³  RC   c         C   s   |  j  S(   N(   R   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ³  RC   c   	   
   C   sż   t  j i d d d d d d g d d 6t d	  d d
 6d t  j d d d d d d g d d | } | |  } t j | d | d |  } | j d |  } t | |  | j | k sĆ t	  t
 j | j
 | j    } t t t |   sł t	  d  S(   Ni   i   i   i   i   i   i
   R   Rr  Rd   R   i   i   i(   i2   i<   RM   R1   R   (   R   RD   RG   R   R;   RI   R¼   R   R1   R!   R.   t   gett   __dask_keys__RŖ   R,  Ré   (	   R  R  Rn  RM   R  RV   R   R   Rd  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_npartitionsÆ  s    &.c          C   sr   t  j i d d d g d 6d t  j d  t  j d  t  j d  g }  t j |  d	 d } | j d	 d
  d  S(   Ni   i   i   R   R   s   2017-05-09 00:00:00.006000s   2017-05-09 02:45:00.017999s   2017-05-09 05:59:58.938999R1   i
   (   R   RD   RQ   R;   RI   R¼   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt(   test_repartition_npartitions_same_limitsĮ  s    c          C   sĶ   t  j i d d d d d d g d d 6d	 t d
  d }  t j |  d d } | j d d  } | j d k sx t  t | |   | j d d  } | j d k s¬ t  t | |   | j	 sÉ t  d  S(   Ni   i   i   i   i   i   i
   R   R   Rr  R1   (
   R   RD   RG   R;   RI   R¼   R1   R!   R   R|   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_object_indexĢ  s    )ió   R>   t   1Dt   7Dt   28ht   1ht   ends
   2000-04-15s   2000-04-15 12:37:01s   2000-01-01 12:37:00t   starts
   2000-01-01s   2000-01-01 12:30:00c         C   s„   t  j |  } t  j |  } t  j d | d | d d  } t  j i t j t |   d 6d | } t j | d |  d d } | j	 d |  } t
 | |  d  S(	   NR  R  R>   t   60sR   R   R1   R   (   R   RQ   RH   RD   R"   R   Ré   R;   RI   R¼   R   (   R1   R>   R  R  Rp   RV   RA   R¹   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_freqŚ  s    +c          C   só   t  j i t j j d  d 6d t  j t j j d  d  }  t j |  d d } | j d d  } x3 | j d	 d
 !D]! } | | j	 d  k sy t
  qy W| j d |  j j   k sĄ t
  | j d
 |  j j   k sā t
  t | |  d  S(   Ni
   R   R   g   čvH7BR1   i   R>   t   15si   i’’’’i    (   R   RD   R"   RE   t   DatetimeIndexR;   RI   R¼   Rö   Rh  R!   R   t   mint   maxR   (   RV   RA   R¹   Rs  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_freq_divisionsź  s    """c          C   s   t  j i d d d g d 6 }  t j |  d d } t j t   } | j d d  Wd  QXd t | j	  k sw t
  d	 t | j	  k s t
  d  S(
   Ni   i   i   R   R1   R>   t   1st   onlyt
   timeseries(   R   RD   R;   RI   R2   R3   R$  R¼   Ri   Rj   R!   (   RV   RA   Rŗ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_freq_errors÷  s    c          C   s±   t  j d d d d }  t  j t j j d d d t |   d f d	 t d
  d |  } t j	 | d d j
 d d  } t | |  d | j k  o¢ d k n s­ t  d  S(   Ns   2015-01-01 00:00s    2015-05-01 23:50R>   t   10mini    id   R  i   R   t   ABCDR   R1   i   t   1Mi   i   (   R   RH   RD   R"   RE   t   randintRé   RG   R;   RI   R¼   R   R1   R!   (   t   tsRV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_repartition_freq_month  s    -!c       	   C   sÄ  t  j i d d d d d  d g d 6t d  d 6d	 d
 d d d d d g }  t j |  d  } t | j j d  |  j j d   | j j d  j	   j
 d k s« t  t | j j   |  j j    t | j j d d  |  j j d d   t | j j d d  |  j j d d   t | j j   |  j j    t | j j   |  j j    t | j   |  j    t | j   |  j    t | j d d  j	    t |   k  sĄt  d  S(   Ni   i   i   i   i   R   Rr  Rd   R   i
   i   i   i(   i2   i<   t   float32t   fracg      ą?(   R   RD   R7   RG   R;   RI   R   R   t   astypeR    RM   R!   R­   t   betweenR²   t   notnullt   isnullRé   t   sample(   RV   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt'   test_embarrassingly_parallel_operations  s    2%'++c       	      s@  t  j d d  }  t j |  d d d t   t   j d  |  j d   t   j j d  |  j j d   t   j d d  |  j d d   t   j j d d  |  j j d d   t   j d d	  |  j d d	   t   j j d d	  |  j j d d	   t   j d d d
 d  |  j d d d
 d   t   j j d d d
 d  |  j j d d d
 d   t   j d d	 d
 d  |  j d d	 d
 d   t   j j d d	 d
 d  |  j j d d	 d
 d   t   j d d d |  j d d d  t   j d d d d  |  j d d d d   t   j d d d
 d d d  |  j d d d
 d d d   t j	 t
   f d    t j	 t   f d    t j	 t   f d    t  j d d  }  t j |  d d d t   t j	 t
   f d    t |  j d d d
 d    j d d d
 d   d  S(   Ngé?i*   R1   i   R   id   R   t   padt   bfillt   limiti   R   i   c              s     j  j d d d S(   Ni    R   i   (   Re   t   fillna(    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   =  RC   c              s     j  d d d S(   Ni    R°  i
   (   R±  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   >  RC   c              s     j  d d d d d S(   Ni    R°  i
   R   i   (   R±  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ?  RC   gÉ?c              s     j  d d  j   S(   NR   R®  (   R±  R    (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   C  RC   i   (   R   t   makeMissingDataframeR;   RI   R-   R   R±  Re   R2   R3   R4   R¶   (   RV   (    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_fillna!  s8    %%+%++1c          C   sh   t  j d    }  t j |    |    g d t d t d t  } | j j | j  | _ | j	   d  S(   Nc           S   s%   t  j t d d g d t j g   S(   NR   g      š?R   (   R   RD   Rē   R"   t   NaN(    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRw   I  s    RŠ   R   R   (
   R.   t   delayedR;   t   from_delayedRē   R#  R   R±  R   R    (   Rw   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_fillna_duplicate_indexH  s    0c          C   s   t  j d d  }  t j |  d d d t } t | j j | j  |  j j |  j   t | j j | j  |  j j |  j   d  S(   Ngé?i*   R1   i   R   (	   R   R²  R;   RI   R-   R   Re   R±  Rg   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_fillna_multi_dataframeR  s    +c          C   s­   t  j d d  }  t j |  d d d t } t | j   |  j    t | j   |  j    t | j d d  |  j d d   t | j d d  |  j d d   d  S(   Ngé?i*   R1   i   R   R   i   (   R   R²  R;   RI   R-   R   t   ffillRÆ  (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_ffill_bfillZ  s    %c          C   s   t  j i d t j d g d 6d t j d g d 6 }  t j |  d d } t  j d d g d d d	 g } t | j |  |  j |   d  S(
   Ni   i   Re   Rg   R1   i   i
   R   Rą   (	   R   RD   R"   R¢   R;   RI   R   R   R±  (   RV   RA   RB  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_fillna_series_typesd  s    5!c       	   C   sļ   t  j i d d d d d  d g d 6t d  d 6d	 d
 d d d d d g }  t j |  d  } | j d d  } t | |  | j d d d d  } | j d d d d  } t | |  | j d d  j | j d d  j k sė t	  d  S(   Ni   i   i   i   i   R   Rr  Rd   R   i
   i   i   i(   i2   i<   R§  g      ą?t   random_stateiŅ  (
   R   RD   R7   RG   R;   RI   R¬  R   R&   R!   (   RV   R   R   Ru   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_samplel  s    2c       	   C   s®   t  j i d d d d d  d g d 6t d  d 6d	 d
 d d d d d g }  t j |  d  } | j d d d t  } | j j	   } t
 |  t
 t |   k sŖ t  d  S(   Ni   i   i   i   i   R   Rr  Rd   R   i
   i   i   i(   i2   i<   R§  gffffffę?t   replace(   R   RD   R7   RG   R;   RI   R¬  R-   R   R    Ré   Ra  R!   (   RV   R   R   t   bb(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_sample_without_replacement|  s    2c       	   C   s’   t  j i d d d d d  d g d 6t d  d 6d	 d
 d d d d d g }  t j |  d  } t j t   | j	 d d d } Wd  QX| j	 d d d d  } t
 | |  t j t   | j	 d d
  Wd  QXt j t   | j	 d d   Wd  QXd  S(   Ni   i   i   i   i   R   Rr  Rd   R   i
   i   i   i(   i2   i<   g      ą?R¼  iŅ  R§  R  (   R   RD   R7   RG   R;   RI   R2   R6   t   UserWarningR¬  R   R3   R4   (   RV   R   R   Ru   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_sample_raises  s    2c          C   s@  t  j i d d d d g d 6 }  |  j j d  |  d <t j |  d  } d t | j j  k sh t  t	 | j j j
 |  j j j
 d t t	 | j j j   t  j |  j j j   d	 |  j d
 t  t | j j j
 j  t | j j j
 j  k s t  t | j j j   j  t | j j j   j  k s<t  d  S(   Ni   i   i   i   R   s   M8[us]t   datet   check_namesR   RM   (   R   RD   R   RØ  R;   RI   RP   R"  R!   R   RĆ  R-   t   to_pydatetimeR   R   t   objectRa  R.   (   RV   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_datetime_accessor  s    "%+6c          C   sć  t  j i d d d d g d 6d d d d	 g d
 6d d d d d g }  t j |  d  } d t | j  k st t  t | j d  s t  d t | j j	  k s« t  t | j j	 d  sĒ t  d t | j j	  k så t  t
 | j j	 j   |  j j	 j    t | j j	 j   j  t | j j	 j   j  k sFt  d t | j j	  k sdt  t
 | j j	 j   |  j j	 j    t | j j	 j   j  t | j j	 j   j  k sÅt  d t | j j	  k sćt  t
 | j j	 j d  |  j j	 j d   t | j j	 j d  j  t | j j	 j d  j  k sPt  t
 | j j	 j d d t |  j j	 j d d t  t | j j	 j d d t j  t | j j	 j d d t j  k sÕt  x t t g D] } t
 | j j	 j d d | |  j j	 j d d |  t | j j	 j d d | j  t | j j	 j d d | j  k sāt  qāWx t t g D] } t
 | j j	 j d d | |  j j	 j d d |  t | j j	 j d d | j  t | j j	 j d d | j  k s~t  q~Wt
 | j j	 d  |  j j	 d   t
 | j j	 d |  j j	 d  t
 | j j	 j d  |  j j	 j d   |  j j	 j |  j j	 j   d d } t
 | j j	 j | j j	 j   d d |  t
 | j j	 j |  j j	 j   d d |  t
 | j j	 j | j j	 j   |  j j	 j   g d d |  j j	 j |  j j	 j   |  j j	 j   g d d  x@ d d g g D]/ } t j t   | j j	 j |  Wd  QXqWt j t   | j j	 j d d  Wd  QXd  S(   Nt   abct   bcdt   cdeft   DEFGR   i   i   i   i   Rd   R   t   ERw   Rx   t   hRi   t   get_dummiesR±   t   containsR   R   RK   t   nat   regexs	   (.*)b(.*)t   sept   :RU   (   R   RD   R;   RI   RP   Rd   R!   RO   R   Ri   R   R±   Ra  R.   R   RĻ  R-   R{   t
   extractallt   catR°   R2   R3   R$  R¶   (   RV   RA   RŠ  RŃ  Rå   t   o(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_str_accessor­  sR    2%<%<+B7!-7!17!1!!'..9:c          C   s   t  i d d 6 }  t j i t j i d g d 6 d 6t j i g  d 6 d 6d |  d  d  d  g  } t | j j   d  d  S(   NR   R   i   i    (   R   i    (   R   i   (   R   R;   RD   R   R7   R   R   R  (   RŠ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_empty_maxģ  s
    #c          C   s³   t  j d  t j i d d d d g d 6d d d	 d
 g d 6 }  t j |  d d } t | j d  |  j d   t | j d d i d d 6|  j d d i d d 6 d  S(   Nt   numexpri   i   i   i   R   i   i   i   i   Rd   R1   s   x**2 > ys   x**2 > @valuet
   local_dictRj   (   R2   R   R   RD   R;   RI   R   t   query(   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_queryō  s    5c          C   sĪ   t  j d  t j i d d d d g d 6d d d	 d
 g d 6 }  t j |  d d } t |  j d  | j d   t |  j d d t | j d d t  t  j	 t
   | j d d t Wd  QXd  S(   NRŁ  i   i   i   i   R   i   i   i   i   Rd   R1   s   x + ys	   z = x + yRt   (   R2   R   R   RD   R;   RI   R   t   evalR-   R3   R¶   R{   (   Re  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_eval’  s    5s   include, excludet   datetimec         C   sU  d } t  j i d g | d 6d g | d 6d g | d 6t  j d d	 | d
 6 } t j | d d } | j d |  d |  } | j d |  d |  } t | |  t j | j	   | j	    t j | j	   | j	    t
 d k rż t j t  } n t j d   } | = t j | j   | j    t j | j   | j    Wd  QXd  S(   Ni
   i   t   cintR   t   cstrg      š?t   clfoats
   2016-01-01R@   t   cdtR1   i   t   includet   excludes   0.23.0(   R   RD   RH   R;   RI   t   select_dtypesR   R   t   assert_series_equalt   get_dtype_countsR   R2   R6   t   FutureWarningR7   t   get_ftype_counts(   Rä  Rå  R  RV   R   RÖ   R(   t   ctx(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_select_dtypes  s&    c    
      C   sE  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } t | j j d  j  t | j j d  j  k s t  t | j j d  j  t | j j d  j  k sĀ t  t | j j	   j  t | j j	   j  k sų t  t | j
 d  j j   j  t | j
 d  j j   j  k s@t  d   } d   } t t | j | | | j j  j  t t | j | | | j j  j  k s¦t  t t | j | | | j j  j  t t | j | | | j j  j  k sśt  d d d  } d d d  } d } d } d } t | j d | d | d i | d 6d i | d 6d | }	 t |	 j  t t | j d | d | d i | d 6d i | d 6d | j  k s¾t  t |	 j  t t | j d | d | d i | d 6d i | d 6d d j  k st  t |	 |  j j   d | | | |  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   R1   c         S   s   |  j  d  S(   Ni   (   t   nlargest(   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   :  RC   c         S   s   |  j  d  S(   Ni   (   Rķ  (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ;  RC   i    c         S   s   |  j    | | S(   N(   RŃ   (   R   t   c_keyt   both_key(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   chunkB  s    c         S   s   t  j |   j   | | S(   N(   R   R   RŃ   (   R   t   a_keyRļ  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   aggE  s    Rš  t	   aggregatet   chunk_kwargsRī  t   aggregate_kwargsRń  Rļ  (   R   RD   R;   RI   R,   R   Rķ  R.   R!   Rī   t   groupbyRd   R   R   Rh   R   RŃ   (
   RV   R   Rw   t   f2Rš  Rņ  Rī  Rń  Rļ  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt+   test_deterministic_apply_concat_apply_names.  s@    5<<!*		$0$0%c       
   C   s  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } d d  } d   } t | d g d | d | d t d d  } |  d d j   } t | |  t | j g d d   d d   } t	 | t
  sę t  | j   |  j j   k st  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   R1   g      š?c         S   s   |  | | j    S(   N(   R*   (   R   Rd   t   constant(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRš  a  s    c         S   s
   |  j    S(   N(   R*   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRņ  d  s    g       @Rš  Ró  Rō  Rł  c         S   s   t  j |  j   g  S(   N(   R   R   RŃ   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   m  RC   c         S   s
   |  j    S(   N(   RŃ   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   n  RC   (   R   RD   R;   RI   R   Rē   R*   R   R   R:   R
   R!   R    RŃ   (   RV   RA   Rš  Rņ  R   Rå   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_aca_meta_infer\  s    	c             sĖ  t  j i d g d d 6 }  t j |  d d  d d   d d   d d	         f d
   } t | d  d  t | d  d t  t | d  d  t | d  j j    t |  j	  j j    k sé t
  | d  } | d  } | j | j k st
  t t | j j    t | j j    @ t  j j    k sbt
  | d  j   d d d d d d k st
  t  d g d  d   d  d d d d } | j   d d d d d  d! k sšt
  t  d g d  d   d d d d } | j   d d d" d d# k sBt
  t j t   | d  Wd  QXt j t  T t  d g d  d   d d d t d d  d t d d  d t d d  Wd  QXd  S($   Ni   i<   R   R1   i   i    c         S   s   |  j    | | S(   N(   RŃ   (   R   Rd   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRš  w  s    c         S   s   |  j    | d S(   Ni   (   RŃ   (   R   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRP  z  s    c         S   s   |  j    | d S(   Ni   (   RŃ   (   R   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRņ  }  s    c            sU   t   d g d  d   d  d t d d  d t d d  d	 t d d
  d |  S(   Ng       @Rš  Ró  RP  Rō  Rł  g      š?t   combine_kwargsRõ  g      @R   (   R   Rē   (   R  (   Rņ  Rš  RP  RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     s   !i   i   i   i   i   g       @Rš  Ró  RP  Rł  g      @R   i   Rō  g      š?Rū  Rõ  i   i   i   i   i   i   i   i   (   R   RD   R;   RI   R   R-   Ra  R.   Ro  R1   R!   R&   Ré   R    R   R2   R3   R4   Rē   (   RV   Rw   t   r3t   r4R   (    (   Rņ  Rš  RP  RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_aca_split_everys  s6    ?I2!,*(!c       	   C   s§  t  j i t d  d 6t d d  d 6 }  t j |  d d } d d  } d	   } | j j | d
 | } t | |  j j    | j | d
 | } | j	 | j | d
 | j	 k sĄ t
  t | |  j    | j | d
 | d i d d 6} | j	 | j | d
 | d i d d 6j	 k | j	 | j	 k s9t
  t | |  d k j    d   } | j | d
 d   } t | t  j i |  j   d 6|  j   d 6  d  S(   Ni2   R   id   Rd   R1   i   i    c         S   s   |  | k j    S(   N(   RŃ   (   R   RR   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   «  RC   c         S   s
   |  j    S(   N(   RŃ   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ¬  RC   Ró  Rō  i   RR   c         S   s'   t  j i |  j   d 6|  j   d 6 S(   NRŃ   t   count(   R   RD   RŃ   R’  (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   sum_and_countæ  s    c         S   s   |  j  d d  j   S(   Nt   leveli    (   Rö  RŃ   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ā  RC   RŃ   R’  (   R   RD   R   R;   RI   R   t	   reductionR   R’  R&   R!   RŃ   (   RV   RA   Rš  Rņ  R   Rļ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_reduction_method§  s$    ,	'"	c             s  t  j d g d  }  t j |  d d  d d   d d   d d         f d	   } t | d
  d
  t | d  d t  t | d  d  t | d  j j    t |  j	  j j    k sā t
  | d
  } | d  } | j | j k st
  t t | j j    t | j j    @ t  j j    k s[t
  | d
  j   d d d d k st
   j  d   d  d d d d
 } | j   d d d d d k sŌt
   j  d   d d d d
 } | j   d d  d d! k st
  t j t   | d  Wd  QXt j t  K  j  d   d d
 d t d d  d t d d  d t d d  Wd  QXd  S("   Ni   i<   R1   i   i    c         S   s   |  j    | S(   N(   RŃ   (   R   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRš  Ė  s    c         S   s   |  j    | d S(   Ni   (   RŃ   (   R   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRP  Ī  s    c         S   s   |  j    | d S(   Ni   (   RŃ   (   R   Rł  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRņ  Ń  s    c            sL    j   d   d  d t d d  d t d d  d t d d	  d
 |  S(   NRó  RP  Rō  Rł  g      š?Rū  g       @Rõ  g      @R   (   R  Rē   (   R  (   Rņ  Rš  RP  RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ō  s   i   i   i   i   i   Ró  RP  Rł  g      @R   i   Rō  g      š?Rū  g       @Rõ  iK   i   i   i-   i   i   i-   i   (   R   R   R;   RI   R   R-   Ra  R.   Ro  R1   R!   R&   Ré   R    R  R2   R3   R4   Rē   (   RV   Rw   Rü  Rż  R   (    (   Rņ  Rš  RP  RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt!   test_reduction_method_split_everyĒ  s6    ?I*	(!$c          C   s³   t  j i t d  d 6t d d  d 6 }  t j |  d d } d d  } t | j | d	 d
 d | | d	 d
 d  t | j j | d	 d
 d | | j d	 d
 d  d  S(   Ni2   R   id   Rd   R1   i   i    c         S   s   |  | | S(   N(    (   R   Rd   Rs   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRw   ’  s    i   Rs   i   (   R   RD   R   R;   RI   R   t   pipeR   (   RV   RA   Rw   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_pipeū  s
    ,.c          C   s©   t  j j d d  }  t j |  d d d g } t j | d  } | j j   j	   d k sc t
  t j t j | | g  d  } | j j   j	   d k s„ t
  d  S(   Nid   i   R   R   R   i   (   R"   RE   RF   R   RD   R;   RI   R   t   nuniqueR    R!   Rl  (   t   arrRV   RA   R¹   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_gh_517  s    !!c       	   C   s5  t  j i d d d d g d 6d d d d	 g d
 6d d d d g d 6 }  t j |  d d } t | j d
 d d |  j d
 d d  t | j d
 d g d d |  j d
 d g d d  t j t   | j d d g d d Wd  QXt | j d d g d d d d |  j d d g d d d d  d  S(   Ni   i   i   i   R   i   i   i   i   Rd   i	   i
   i   i   Rs   R1   R   R   t   errorst   ignore(	   R   RD   R;   RI   R   t   dropR2   R3   R4   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_drop_axis_1  s    +7!c          C   s   t  j i t j d d t d 6 }  t j |  d  } t t j |  d  t j | d   t t j |  d  t j | d   d  S(   Ni
   RM   R   i   (	   R   RD   R"   R   R#  R;   RI   R   t   cos(   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_gh580  s    %'c          C   s=   i d d 6d d 6}  t  t j d |   t j d |    d  S(   NRe   R   Rg   R   R   (   R   R   Rz   R   (   t   renamer(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_dict%  s    c          C   s2   d   }  t  t j d |   t j d |    d  S(   Nc         S   s
   |  j    S(   N(   R±   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ,  RC   R   (   R   R   Rz   R   (   R  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_function+  s    	c              s*   i d d 6  t  j t   f d    d  S(   Ni   i    c              s   t  j d    S(   NR   (   R   Rz   (    (   R  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   3  RC   (   R2   R3   R4   (    (    (   R  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_rename_index1  s    c          C   s  t  j d d d d d d  }  t  j i d d d	 d
 g d 6d d d d g d 6d |  } t j | d d	 } t | j   | j    t | j d d d d  j   | j d d d d   t | j j   | j j    t | j j d d d d  j   | j j d d d d   d  S(   NR>   Re   R  s   1/1/2001R  s	   12/1/2004i   i   i   i   R   i
   i   i   i(   Rd   R   R1   R   R©   RS   (	   R   t   period_rangeRD   R;   RI   R   t   to_timestampR    R   (   R   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_timestamp6  s    ;!c          C   so   t  j d d d g d d }  t j |  d d } t |  j   | j    t |  j d  | j d   d  S(   Ni   i   i   R   RU   R1   t   bar(   R   R   R;   RI   R   t   to_frame(   RS   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_frameB  s    t   as_framec      	   C   s§   t  j d d d d d d g d d } t j | d	 d } |  rQ | j   } n  t j t d
 d  | j d  Wd  QXt j t d
 d  | j d  Wd  QXd  S(   Ni   i   i   i   i   i   R   RU   R1   t   messages   4 != 2s   Unexpected value(   i   i   i   i   (	   R   R   R;   RI   R  R2   R3   R4   t   to_dask_array(   R  RS   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_dask_array_raisesJ  s    'c         C   sō   t  j d d d d d g d d } t j | d d } |  rN | j   } n  | j   } t | t j  sr t	  | j
 } |  r | d d k s t	  n  t |  d k s² t	  | d	 } t |  d k sŌ t	  t d
   | D  sš t	  d  S(   Ni   i   i   i   i   R   RU   t	   chunksizei    c         s   s   |  ] } t  j |  Vq d  S(   N(   R"   t   isnan(   RŁ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>l  s    (   i   (   R   R   R;   RI   R  R  R:   R   t   ArrayR!   t   chunksRé   RŖ   (   R  RS   R   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_dask_array_unknownY  s    $	
t   lengthsc         C   sŖ   t  j d d d d d g d d } t j | d d } |  rN | j   } n  | j d	 |  } t | t j  sx t	  d } |  r | d } n  | j
 | k s¦ t	  d  S(   Ni   i   i   i   i   R   RU   R  R#  (   i   i   (   (   i   i   (   i   (   (   i   (   R   R   R;   RI   R  R  R:   R   R   R!   R!  (   R  R#  RS   R   RÖ   t   expected_chunks(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_dask_arrayo  s    $c          C   so  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } d   } t | j j d   d d t f |  j j d     t | j d   d d d d  t f |  j d   d d  t | j d   d d d d  t f |  j d   d d  t	 j
 d   6 t | j d   d d |  j d   d d  Wd  QXt	 j
 d   6 t | j d   d d |  j d   d d  Wd  QXd   } t | j j | d d t f d t f g |  j j |   t	 j
 d   * t | j j |  |  j j |   Wd  QXt	 j t   | j d   d d Wd  QXt	 j t   | j d   d d Wd  QXd  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   c         S   s   |  d |  d S(   NR   Rd   (    (   t   row(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   RŠ   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d |  d S(   Ni    i   (    (   t   xy(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   R   c         S   s   |  d |  d S(   Ni    i   (    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d |  d S(   Ni    i   (    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   R   c         S   s   |  d |  d S(   Ni    i   (    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d |  d S(   Ni    i   (    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  d |  d S(   Ni    i   (    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  S(   N(    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   |  S(   N(    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         S   s   t  j |  |  g  S(   N(   R   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   i    c         S   s   |  S(   N(    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   „  RC   c         S   s   |  S(   N(    (   R'  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ø  RC   R   (   R   RD   R;   RI   R   R   t   applyRÓ   R7   R2   R6   R3   R¶   (   RV   RA   R¦   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_apply  s.    5	!$$	=+sD   Global filter is applied by another library, and not reset properly.c          C   sm  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } d   } t j t   } | j | d d Wd  QXt |  d k s t	  t j d   & } | j | d d d d  t f Wd  QXt |  d k så t	  t j t   } | j d   d d Wd  QXt |  d k s+t	  d t | d j  k sJt	  d t | d j  k sit	  d  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   c         S   s   |  d |  d S(   NR   Rd   (    (   R&  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ²  RC   R   RŠ   i    c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ½  RC   s   'x'RN   (   R   RD   R;   RI   R2   R6   RĮ  R(  Ré   R!   R7   RÓ   Ri   R  (   RV   RA   R¦   t   w(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_apply_warns«  s    5	%c          C   s   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } t | j d    |  j d     t | j d    |  j d     d  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ę  RC   c         S   s
   |  |  f S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Č  RC   (   R   RD   R;   RI   R   t   applymap(   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_applymapĆ  s    5%c             sč   t  j i d d d d d g d 6d d d	 d
 d g d 6d d d d d g d 6 }  t j |  d d   t   j j   |  j j    t   d d g j   |  d d g j    t j t	   f d    t j t
   f d    d  S(   Ni   iž’’’i   iü’’’i   Re   g      Ąił’’’ių’’’i÷’’’i
   Rg   R   R   Ru   R   Rv   Rą   R1   i   c              s     j  j   S(   N(   Rą   t   abs(    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ņ  RC   c              s
     j    S(   N(   R.  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ó  RC   (   R   RD   R;   RI   R   Re   R.  R2   R3   R4   R$  (   RV   (    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_absĖ  s    -c          C   s   t  j i d d d g d 6d d d g d 6 }  t j |  d	 d
 } t | j   |  j    t | j d
  |  j d
   d  S(   Ng+ŁĪ÷ń?gClēū @gClēū@t   col1gX9“Čv¾ó?g¬Zd;ß@g¬Zd;ß	@t   col2R1   i   (   R   RD   R;   RI   R   Rh  (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_roundÖ  s
    c          C   sp  t  j j j d d  }  t j |  d d } | j   } | j d d  } | j d  } | j d d d } |  j   } |  j d  } t | |  t | |  t | |  t | |  | j | j   j k sÜ t	  | j | j k sō t	  | j | j k st	  | j | j k s$t	  |  j
 } |  j }	 t j | d d }
 t j |	 d d } |
 j |  } |
 j | d d } |
 j | d  } |
 j | d d d } | j |	  } | j |	 d  } t | |  t | |  t | |  t | |  | j |
 j |  j k s$t	  | j | j k s<t	  | j | j k sTt	  | j | j k slt	  d  S(	   Ng333333Ó?i*   R1   i   R   i   i
   i   (   R   t   utilt   testingR²  R;   RI   t   covR   R&   R!   Re   Rg   (   RV   RA   R   Rļ   t   res3t   res4Rå   t   sol2R   R   R   t   db(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_covŽ  sD    		!c    	         sÓ  t  j j j d d  }  t j |  d d   j   }  j d d  }  j d d  }  j d d d d  } |  j   } |  j d d  } t | |  t | |  t | |  t | |  | j  j   j k så t	  | j | j k sż t	  | j | j k st	  | j | j k s-t	  t
 j t  f d	    |  j } |  j } t j | d d   t j | d d
    j   }   j  d d }   j  d d }   j  d d d d }   j   }   j  d d } t | |  t | |  t | |  t | |  | j   j   j k sOt	  | j | j k sgt	  | j | j k st	  | j | j k st	  t
 j t    f d    t
 j t    f d    d  S(   Ng333333Ó?i*   R1   i   R   i   t   min_periodsi
   c              s     j  d d  S(   NR   t   spearman(   t   corr(    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   	  RC   i   c              s     j   d d S(   NR   R<  (   R=  (    (   R   R9  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   3	  RC   c              s     j    S(   N(   R=  (    (   R   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   4	  RC   (   R   R3  R4  R²  R;   RI   R=  R   R&   R!   R2   R3   R¶   Re   Rg   R$  (	   RV   R   Rļ   R6  R7  Rå   R8  R   R   (    (   R   R9  RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_corr	  sJ    		!c          C   s  t  j i t j d d d g  d 6t j d d d g d d	 d
 6t j d d d g  d 6d t  j d d d g d d }  t j |  d d } t | j   |  j    t | j	   |  j	    | j
 j	 | j  j j d k sģ t  | j
 j | j  j j d k st  d  S(   Ni   i   i   R   g      š?g       @g      @RM   t   f4R   Ru   R   R   Rß   R1   t   f8(   R   RD   R"   R   R   R;   RI   R   R=  R5  R   R   Rh   RM   R!   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_cov_corr_meta7	  s    "!'c          C   s   t  j t j j d d d  d d d g }  t j |  d d	 } t | j d
 d  |  j    t | j	 d
 d  |  j	    d  S(   Ni’’’’i   i -1i   R   R   R   R1   i2   R   i   (   i -1i   (
   R   RD   R"   RE   t   uniformR;   RI   R   R5  R=  (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_cov_corr_stableC	  s    -c          C   s  d }  i t  j d d |  d d d 6t j d |   d 6t j j d |  d	 |  d
 6t j j |   d 6t j j d d g d	 |  d 6t j j d d t j g d	 |  d 6t j j d d t j g d	 |  d 6d d 6t j j d d d d d g d	 |  d 6t j j d d g d	 |  d 6t j j d d d g d	 |  d 6} t  j	 |  } | d d k | d <| d j
 d t j  | d <| d j d  | d <| d j t  | d <t j | d  d } t | j d! d"  | j   d# t t | j d! d"  | j   d# t d  S($   Nič  s
   2015-01-01R@   R>   t   1Tt   datesi    t	   unique_idR  t   intst   floatsi   t   boolst   int_nansg        g      š?t
   float_nansRł  i
   i   i   i(   i2   t   int_categoricalR   R   t   categorical_binaryRu   t   categorical_nanst	   hardboolst   categoryR1   R   i   RŅ   (   R   RH   R"   R   RE   R£  RF   RO  R¢   RD   R¾  RØ  Ri   R;   RI   R   R=  R-   R5  (   R  R   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_cov_corr_mixedK	  s(    %%(%%c             sĻ   t  j t j j d   }  t j |  d d   t   j d  |  j d   t   j d  |  j d   t   j d  |  j d   t   j d d d |  j d   t j	 t
   f d	    d  S(
   Nid   R1   i
   i   i    iž’’’R   i   c              s     j  d  S(   Ng      ų?(   t   autocorr(    (   t   dx(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   j	  RC   (   R   R   R"   RE   R;   RI   R   RR  R2   R3   R$  (   R   (    (   RS  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_autocorrc	  s    %c       	   C   sJ  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } d   } t j d    | j | d d } Wd  QXt | t j  s t	  t
 j | j t  j d d g   t | |  j | d d  t j d    | j d   d d } Wd  QXt | t j  st	  | j d  k s/t	  t | |  j d   d d  d   } t j d    | j j |  } Wd  QXt | t j  st	  t
 j | j t  j d d g   t | |  j j |   t j d    | j j d    } Wd  QXt | t j  st	  | j d k s*t	  t | |  j j d     d  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   c         S   s+   t  j |  j   |  j   g d d d g S(   NR   RŃ   R   (   R   R   RŃ   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   return_dfq	  s    R   RŃ   R   c         S   s   d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ~	  RC   c         S   s   d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   	  RC   c         S   s'   t  j |  d |  d g d d d g S(   Ni   i   R   t   x2t   x3(   R   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   return_df2	  s    RV  RW  c         S   s   d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   	  RC   c         S   s   d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   	  RC   (   R   RD   R;   RI   R2   R6   R7   R(  R:   R!   R   R   R   R   R   R   R   R   (   RV   RA   RU  RÖ   RX  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_apply_infer_columnsm	  s0    5	"	"c          C   s   t  j   }  t j |  d d } d t | j  k s< t  t | j j t	 j
 |  j j   t | j j t	 j
 |  j j   d  S(   NR1   i   t   day(   R   t   makeTimeSeriesR;   RI   RP   R   R!   R   RZ  R   R   t   month(   R%  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_index_time_properties	  s
    "c             sś  d d l  m }  t j i t j j d  d 6t |  d   d 6t j j d  j d  d 6 } t	 j
 | d d	 } xd
 d g D]q    f d   } | | d d  } | | d d d d } | | d d  } t | |  t | |  | j | j k st  | | d d d g  } | | d d d g d d } | | d d d g  } t | |  t | |  | j | j k st  | | j d  } | | j d d d } | | j d  } t | |  t | |  | j | j k s t  q Wd  S(   Ni’’’’(   t   ascii_lowercasei   R   R   RÕ   Ru   R1   i   Rķ  t	   nsmallestc            s   t  |     | |   S(   N(   t   getattr(   RV   t   argst   kwargs(   t   m(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   §	  RC   i   R   i   (   R!  R^  R   RD   R"   RE   t   permutationRG   RØ  R;   RI   R   R&   R!   R   (   R^  RV   RA   Rw   R   Rļ   Rå   (    (   Rc  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_nlargest_nsmallest	  s2    "c          C   s  t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } |  j   } | j   } t d   | j D  s t  t | | d t	 |  j d t
  } | j d t
  } t d   | j D  s× t  t | | d t	 |  j j   } | j j   } t d   | j D  s't  t | | d t	 |  j j d t
  } | j j d t
  } t d   | j D  st  t | | d t	 d  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   c         s   s   |  ] } | d  k Vq d  S(   N(   R7   (   RŁ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>Å	  s    t   check_indexR  c         s   s   |  ] } | d  k Vq d  S(   N(   R7   (   RŁ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>Ź	  s    c         s   s   |  ] } | d  k Vq d  S(   N(   R7   (   RŁ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>Ļ	  s    c         s   s   |  ] } | d  k Vq d  S(   N(   R7   (   RŁ   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>Ō	  s    (   R   RD   R;   RI   t   reset_indexRŖ   Rö   R!   R   R-   R{   R   (   RV   RA   Rå   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_reset_indexæ	  s$    5c          C   sH   t  j t j i t d  d 6 d d j j   }  |  j d d  d  S(   Ni
   R   R1   i   t   bogus_keyword(   R;   RI   R   RD   R   R   RŃ   R    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt%   test_dataframe_compute_forward_kwargsŲ	  s    4c          C   s   t  j i d d d d g d 6 }  t j |  d d } xC t |  d j   | d j    D] \ } } | | k s[ t  q[ Wd  S(   Ni   i   i   i   R   R1   (   R   RD   R;   RI   R7  t	   iteritemsR!   (   RV   RA   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_series_iteritemsŻ	  s    "0c          C   s   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } xA t |  j   | j    D]$ \ } } t j | d | d  qf Wd  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   (   R   RD   R;   RI   R7  t   iterrowsR   Rē  (   RV   RA   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dataframe_iterrowsä	  s    5(c          C   s   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } x; t |  j   | j    D] \ } } | | k sf t  qf Wd  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   (   R   RD   R;   RI   R7  t
   itertuplesR!   (   RV   RA   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dataframe_itertuplesģ	  s    5(c          C   s   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } xG t |  j d t  | j d t   D] \ } } | | k sr t  qr Wd  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   R   (   R   RD   R;   RI   R7  Ro  R-   R!   (   RV   RA   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt*   test_dataframe_itertuples_with_index_falseō	  s    54c          C   s¶   t  j i d d d d g d 6d d d d	 g d
 6 }  t j |  d d } xe t |  j d d   | j d d    D]< \ } } | | k s t  t |  t |  k sr t  qr Wd  S(   Ni   i   i   i   R   i
   i   i   i(   Rd   R1   R   (	   R   RD   R;   RI   R7  Ro  R7   R!   R·   (   RV   RA   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt(   test_dataframe_itertuples_with_name_noneü	  s
    54c          C   s”   t  j i d d d d  g d 6d d d d g d	 6d
 d d d d g }  t j |  d  } t | j t  |  j t   t | j j t  |  j j t   d  S(   Ni   i   i   R   i
   i   i   i(   Rd   R   (	   R   RD   R7   R;   RI   R   RØ  R#  R   (   RV   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_astype
  s
    2c          C   s^  t  j i d d d d d g d 6d d d d d g d 6d d d	 d
 d g d 6 }  |  j i d d 6 }  t j |  d  } | j j j s t  | j i d d 6 } | j	 j j sŗ t  | j j j sĻ t  | j	 j
 d k sē t  | j   j	 j
 d k st  | j	 j d  } | j j s*t  | j
 d k s?t  | j   j
 d k sZt  d  S(   NR   R   Ru   R   Rd   Rs   i   i   i   i   i   RP  (   R   RD   RØ  R;   RI   Rd   RÕ  t   knownR!   R   RM   R    (   RV   RA   R¹   RS  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_astype_categoricals
  s    c    
      C   sÉ  t  j i d d d d d g d 6d d d d d g d 6d d d d d g d 6d d d	 d
 d g d 6 }  t j |  d  } t  j j j d d d g  } t  j j j   } | j i | d 6| d 6d d 6d d 6 } xt d t f d t	 f d t	 f g D]Q \ } } t
 | |  } t  j j j | j  s/t  | j j | k sö t  qö Wxw d t	 f | t	 f | t f g D]T \ } } | j j |  }	 t  j j j |	 j  s©t  |	 j j | k smt  qmWd  S(   NR   R   Ru   R   Rd   Rs   i   i   i   i   i   t   otherRP  R@  (   R   RD   R;   RI   t   apit   typest   CategoricalDtypeRØ  R{   R-   R`  t   is_categorical_dtypeRM   R!   RÕ  Rt  R   (
   RV   RA   RČ  RP  R¹   t   colRt  R   RM   t   dx2(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_astype_categoricals_known"
  s&    ..c          C   sČ   t  j i d d d d  g d 6d d d d g d	 6d
 d d d d g }  t j |  d  } d   } t |  j |  j j   | j |  j j    t |  j j |  j   | j j |  j    d  S(   Ni   i   i   R   i
   i   i   i(   Rd   R   i   c         S   s   |  d d k S(   Ni   i    (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   isevenC
  s    (	   R   RD   R7   R;   RI   R   Rö  Rd   RŃ   (   R   R   R~  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_groupby_callable>
  s    2	c          C   sq   t  j i d d d d g d 6 }  t j |  d d }  |  j j d    j |  j j d    j k sm t  d  S(	   Ni   i   i   i   R   R1   c         S   s   t  j |  j    S(   N(   R   R   R  (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   O
  RC   c         S   s   t  j |  j    S(   N(   R   R   R  (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   P
  RC   (   R   RD   R;   RI   R   RĪ   R&   R!   (   RV   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt!   test_methods_tokenize_differentlyL
  s    "c         C   sŻ   d d l  m } t |  t j  s( t  t | t j  s@ t  |   |   } } |  j d | d |  | j d | d t d |  | j	   } | j	   } | j
 t t |   t t |     } | | k sŁ t  d  S(   Ni’’’’(   t   StringIOt   buft   memory_usaget   verbose(   t   ioR  R:   R   RD   R!   R;   Rŗ   R{   t   getvalueR¾  Ri   R·   (   RV   RA   R  R  t   buf_pdt   buf_dat	   stdout_pdt	   stdout_da(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   _assert_infoS
  s    *c          C   sa  d d l  m }  d d l m } t t _ t j i d d d d g d 6d d	 d d	 g d
 6d t j	 t
 d   t j   g } x0 | D]( } t j | d d } t | |  q W|    } t j t j i d d d d g d 6d d	 d d	 g d
 6d t
 d  d d } | j d | d t  | j   | d  k s?t  | j d d   d  k s]t  d  S(   Ni’’’’(   R  (   t   unicodei   i   i   i   R   i    Rd   R   R1   R  R  sS   <class 'dask.dataframe.core.DataFrame'>
Columns: 2 entries, x to y
dtypes: int64(2)(   R  R  t   dask.compatibilityR  R   t   pandas_formatt
   _put_linesR   RD   t
   Int64IndexR   R;   RI   R  Rŗ   R-   R  R!   R7   (   R  R  t   test_framesRV   RA   R  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_infoc
  s    	G	Pc          C   s~  d d l  m }  d d l m } t t _ t j i d d d d g d 6d d d d g d	 6d d d d g d
 6 } t	 j
 | d d } | j d d	 g  j   } t | j   | d t |    } | j | d t | j   | d  k sō t  | j d d	 g  j d d g  } t | j   | d t |    } | j | d t | t j d   } | j   | k szt  d  S(   Ni’’’’(   R  (   R  i   i   Re   i   i   Rg   Rą   R1   R  R  sS   <class 'dask.dataframe.core.DataFrame'>
Columns: 1 entries, C to C
dtypes: int64(1)R’  RŃ   sw       <class 'dask.dataframe.core.DataFrame'>
    Columns: 2 entries, ('C', 'count') to ('C', 'sum')
    dtypes: int64(2)(   R  R  R  R  R   R  R  R   RD   R;   RI   Rö  RŃ   R  R    R-   Rŗ   R  R!   Rņ  t   textwrapt   dedent(   R  R  RV   RA   Rx   R  R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_groupby_multilevel_info~
  s(    		$		c          C   sō   d d l  m }  d d l m } t t _ t j i d d d d g d 6t j	 t
 d	   d
 6t j	 t
 d	   d 6d t j t d   } t j | d d j d
 g  } |    } | j d | d t  | d  } | j   | k sš t  d  S(   Ni’’’’(   R  (   R  i   i   i   i   R   t   aabcRd   Rs   R   R1   R  R  sŌ   <class 'dask.dataframe.core.DataFrame'>
Int64Index: 4 entries, 0 to 3
Data columns (total 3 columns):
x    4 non-null int64
y    4 non-null category
z    4 non-null object
dtypes: category(1), object(1), int64(1)(   R  R  R  R  R   R  R  R   RD   R   RG   R  R   R;   RI   t
   categorizeRŗ   R{   R  R!   (   R  R  RV   RA   R  R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_categorize_info”
  s    	!	c          C   s”   t  j d d g d d g g  }  t j |  d d } | j d | d j t   } t | |  j d |  d j t    | j d t	 j
 t  k s t  d  S(	   Nt   1t   2t   3t   4R1   i   Rd   i   (   R   RD   R;   RI   Rį   RØ  RÓ   R   Rž   R"   RM   R!   (   RV   RA   R¹   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_gh_1301»
  s
    !&c          C   sY   t  j   }  t j |  j   d d } d |  j _ t | j d d t	 d t	 |   d  S(   NR1   i   R   R,   R  (
   R   RW   R;   RI   Rg  R   R   R   t	   set_indexR{   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_timeseries_sortedÄ
  s    c          C   s¤   t  j i d d d d g d 6d d d d g d 6 }  t j |  d d } | j   } | j | j | d	 <|  j |  j |  d	 <t |  |  d	 | j k s  t	  d  S(
   Ni   i   i   i   R   i    Rd   R1   Rs   (
   R   RD   R;   RI   t   copyR   Rd   R   R   R!   (   RV   RA   Rm  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_column_assignmentĖ
  s    5c          C   sČ   t  j i d d d d g d 6 }  t j |  d d } |  j d |  j d d |  j d  } | d d g |  d	 d
 g <| j d | j d d | j d  } | d d g | d	 d
 g <t |  |  d  S(   Ni   i   i   i   R   R1   Rd   Rs   R   R   (   R   RD   R;   RI   Rį   R   R   (   RV   RA   Rø   R¹   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_columns_assignmentÖ
  s    "&&c          C   s   t  j i d d d d d g d 6d d d	 d
 d g d 6 }  t j |  d d } | j | j | _ t | |  j d |  j |  j   d  S(   Ni   i   i   i   i   R   g      š?g       @g      @g      @g      @Rd   R1   (   R   RD   R;   RI   R   Rd   R   Rį   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_attribute_assignmentć
  s
    c          C   s{   t  j t j i t d  d 6 d d }  t  j t j t d  d d d d } | |  d <t |   d k sw t  d  S(	   Ni   Re   R1   i   R   Rg   i   Rą   (   R;   RI   R   RD   R   R   Ré   R!   (   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_setitem_triggering_realignģ
  s    +*
c          C   s   t  j i d d d d d g d 6d d d	 d
 d g d 6 }  t j |  d d } | j d C_ t | j |  j d  t | |  j d |  j d   d  S(   Ni   i   i   i   i   R   g      š?g       @g      @g      @g      @Rd   R1   g      ą?(   R   RD   R;   RI   Rd   R   Rį   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_inplace_operatorsó
  s    R   RZ   id   R  t   20150101R@   c         C   s&  t  j t j j d d  d t d  d |  } t j | j j d <t j | j	 j d <t
 j | d d	 } t j d
 t  £t | j d d d |  | j d d d |   t | j d d d |  | j d d d |   t | j d |  | j d |   t | j d |  | j d | d d   | j d |  j | j d | d d  j k sft  t | j d |  | j d |   t | j d |  | j d | d d   | j d |  j | j d | d d  j k sģt  t | j j d |  | j j d |   t | j j d |  | j j d | d d   | j j d |  j | j j d | d d  j k st  t | j j d |  | j j d |   t | j j d |  | j j d | d d   | j j d |  j | j j d | d d  j k st  Wd  QXd  S(   Nid   i   R   R   R   i   iN   R1   i   t   recordR   i   R   R   i   (   R   RD   R"   RE   RF   RG   R¢   R   R  R   R;   RI   t   warningst   catch_warningsR{   R   t   idxmaxt   idxminR&   R!   R   (   RZ   R   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_idxmaxminž
  s:    0%$%$+'+c          C   sæ  t  j i d d d g d 6d d d g d 6t j g d d 6d d t j g d 6 }  |  j d	  } t j t j |  d
 d g t j | d
 d g d  } x? t t	 g D]1 } t
 | j d | d d  |  j d |   qØ Wt
 | d d d g j d | d d  |  d d d g j d |   t
 | j j d d  |  j j    t j t j | d
 d g d  } t j t   | j   j   Wd  QXt j t   | j j   j   Wd  QXd  S(   Ni   i   i   R   g      ų?R   Ru   R   i    R1   i
   R   R   (   R   RD   R"   R“  R  R;   Rl  RI   R{   R-   R   R«  R   RŖ  R2   R3   R4   R    (   RV   t   emptyRA   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_idxmaxmin_empty_partitions)  s$     % %%c          C   s   i d d d g d 6d d d g d 6}  t  j d |  d d d g  } t j | d	 d } t | j | j d k | j | j d k  d  S(
   NR   R   R0  i    i   R1  t   dataR   R1   (   R   RD   R;   RI   R   R1  R0  (   RÆ  RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_getitem_metaD  s
    c          C   s~   t  j i d d d g d	 6d d d g d
 6 }  t j |  d d } t |  d | d  t |  d d g | d d g  d  S(   Ni   i   Re   Rf   i   Rg   R  R1   (   Re   Rf   (   Rg   R  (   Re   Rf   (   Re   Rf   (   Re   Rf   (   Rg   R  (   Re   Rf   (   Rg   R  (   R   RD   R;   RI   R   (   Rb   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_getitem_multilevelN  s    /c          C   sr   t  j i t t d   d 6 }  t j |  d d } d t f d     Y} | d  } t |  | | |  d  S(   Ni
   t   column_1R1   i   t   string_subclassc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyR³  Z  s   (   R   RD   RG   R   R;   RI   Ri   R   (   RV   RA   R³  R²  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_getitem_string_subclassV  s
    "t   col_typec         C   sv   t  j i d d g d 6d d g d 6d d g d	 6 } t j | d  } |  d	 d d g  } t | | | |  d  S(
   Ni   i   Re   i   i   Rg   i   i   Rą   (   R   RD   R;   RI   R   (   R·  RV   RA   t   cols(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_getitem_column_typesa  s    6c          C   s~   t  j i d g d 6d g d 6 }  t j |  d d } | j   } d | k sV t  d | k sh t  d | k sz t  d  S(   Ni   R   i   R   R1   Ru   (   R   RD   R;   RI   t   _ipython_key_completions_R!   (   RV   RA   t   completions(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_ipython_completionj  s    #c             sÜ  t  j t j j d d  d t d  }  t j |  d    t   j	   |  j	    t   j	 d  |  j	 d   t   j	 d  |  j	 d   t   j	 d  |  j	 d   t   j	 d d d	 |  j	 d d d	  t   j
 j	   |  j
 j	    t   j
 j	 d  |  j
 j	 d   t   j
 j	 d  |  j
 j	 d   t   j
 j	 d  |  j
 j	 d     j	 d  j   j	 d  j k st    j	 d  j   j	 d
  j k sæt  t j t   f d    d  S(   Nid   i   R   R   i    i   iž’’’R   i   i   c              s     j  d  S(   Ng      ų?(   t   diff(    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   (   R   RD   R"   RE   RF   RG   R;   RI   R   R½  R   R&   R!   R2   R3   R$  (   RV   (    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_difft  s    *+%%%**c          C   sw  t  j   }  t j |  d d } t | j   |  j    t | j d  |  j d   t | j d  |  j d   t | j d  |  j d   t | j d d d |  j d d d  t | j j   |  j j    t | j j d  |  j j d   t | j j d  |  j j d   t | j j d  |  j j d   t j t	   | j d  Wd  QXd  S(	   NR1   i   i    i   iž’’’R   i   g      ų?(
   R   RW   R;   RI   R   R)  Re   R2   R3   R$  (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt
   test_shift  s    +%%%s   data_freq,divs1R?   t   Hc   	      C   sK  t  j d  } | j t  j d d |   } t j | d d } xĀ d t f d t f t j	 d d d	 t f g D] \ } } x | | f | j
 | j
 f | j | j f g D]R \ } } | j d
 d | } t | | j d
 d |  | j | k s­ t  q­ Wqs W| j j d
  } t | | j j d
   | j | k sGt  d  S(   Ni   R>   R1   i   t   St   Wi
   t   unitRĶ  i   (   R   RW   R  t   makeDateIndexR;   RI   R{   R-   R   t	   TimedeltaRe   R   R)  R   R|   R!   (	   t	   data_freqt   divs1RV   RA   R>   t   divs2R   Re  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt"   test_shift_with_freq_DatetimeIndex  s    (:s   data_freq,divsc         C   s<  t  j d  } | j t j d d d d |   } t j | d d } xr | | f | j | j f g D]R \ } } | j d d |  } t	 | | j d d |   | j
 | k sg t  qg W| j j d  } t	 | | j j d   | j
 | k sż t  t  j d  } t j t   | j j d d d Wd  QXd  S(	   Ni   s
   2000-01-01R@   R>   R1   i   i   R?   (   R   RW   R  R   R  R;   RI   Re   R)  R   R|   R!   R   R2   R3   R4   (   RĘ  t   divsRV   RA   R   Re  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_shift_with_freq_PeriodIndex°  s    +c       	   C   s>  t  j d  }  x(d d d g D]} |  j t  j d d |  }  t j |  d d } x” d t j d	 d
 d g D] } x{ | |  f | j |  j f | j	 |  j	 f g D]L \ } } | j
 d d | } t | | j
 d d |  | j sØ t  qØ Wqt W| j	 j
 d  } t | |  j	 j
 d   | j s t  q Wd  S(   Ni   t   TR?   RĄ  R>   R1   i   RĮ  i
   RĆ  RĶ  i   (   R   RW   R  t   makeTimedeltaIndexR;   RI   R   RÅ  Re   R   R)  R   R|   R!   (   RV   RĘ  RA   R>   R   Re  R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt#   test_shift_with_freq_TimedeltaIndexÅ  s    ":c             sp   t  j   }  t j |  d d   t j t   f d    t j t   f d    t j t   f d    d  S(   NR1   i   c              s     j  d d d S(   Ni   R>   RĮ  (   R)  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ś  RC   c              s     j  j d d d S(   Ni   R>   RĮ  (   Re   R)  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ū  RC   c              s     j  j d  S(   Ni   (   R   R)  (    (   RA   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   Ü  RC   (   R   t   makeDataFrameR;   RI   R2   R3   R¶   (   RV   (    (   RA   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_shift_with_freq_errorsÖ  s
    Rń   Rņ   c   	   
      s    f d   } d d g } d d d d d d	 d
 d g } xÜ | D]Ō } t  j d d d | d  d  d  } t  j t j j t |  d f  d | d d d d d g } t j | d d } xR | D]J } t | | |  | | |   t | | j	 |  | | j	 |   qĘ Wq@ Wd  S(   Nc            s   t  |     |  S(   N(   R`  (   R   t   offset(   R   (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   į  RC   t   12hR?   t   0dt   100ht   20dt   20Bt   3Wt   3Mt   400dt   13Ms   1/1/2000s   1/1/2001R>   i   R   R   Re   Rg   Rą   R1   i
   (
   R   RH   RD   R"   RE   Ré   R;   RI   R   Re   (	   R   Rw   t   freqst   offsetsR>   R   RV   RA   RŃ  (    (   R   sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_first_and_lastß  s    %*R   t	   split_outc         C   s0  d d l  m } t j t j j t |  d d t  } t	 j
 | d |  } | j d | d |  } | j | j | j    } d d l m } | |  \ }	 }
 t g  |	 j   D] \ } } | s“ | ^ q“  |  k sį t  | j | pš d	 k sü t  t | j d
 d   t | j    k s,t  d  S(   Ni’’’’(   R^  ič  R¾  R1   R   RŽ  (   t   get_depsi   RŲ   R4  (   R!  R^  R   R   R"   RE   RO  RG   R{   R;   RI   R  t   __dask_optimize__R.   R  t	   dask.coreRß  Ré   t   itemsR!   R1   R,   R    (   R1   R   RŽ  R^  RS   Ro   t   droppedR+   Rß  t   dependenciest
   dependentsRn  R+  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_hash_split_uniqueī  s    *=c      
   C   s  t  j t  j d  g d  d  d   d  f } | j   } t  j t  j d  g d  d  d   d  f } t  j j d  } | j |  | j |  | j |  t j	 t  j | | | g d d d d d	 d
 g } t
 j | d d } x t d  d d
 g g d d g  D]j \ } } | j d | d |  }	 | j d | d | d |  d d  }
 |
 j d k smt  t |	 |
  qWd  S(   Ni
   id   i   i2   i   R   R   R   Rd   Rs   R1   Rń   Rņ   R«   Rķ   R   RŽ  (   R"   t   concatenateR   R7   R   RE   t   RandomStatet   shuffleR   RD   R;   RI   R    Rī   R1   R!   R   (   R   R   Rd   Rs   t   rsRV   RA   R«   Rķ   Rå   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_split_out_drop_duplicates  s    //6.c         C   s   t  j i d d d g d d 6 } t j | d d } | j j d d	 d
 |   j d	 k sb t  t | j j d d	 d
 |   | j j    d  S(   Ni   i   i   id   R   R1   i   RŽ  i
   R   (	   R   RD   R;   RI   R   R   R1   R!   R   (   R   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_split_out_value_counts  s    #*c          C   sŚ   d d l  m }  t j i d d d d g d 6d d	 d
 d g d 6d t j d d d d g d d } t j | d  } |  | j | j  |  | j j | j j  |  | j	 j | j	 j  |  | j
 j | j
 j  d  S(   Ni’’’’(   R   R   R   Ru   R   R   i   i   i   i   Rd   R   g      š?g       @g      @g      @R   Rp   (   t   dask.array.utilsR   R   RD   R   R;   RI   R-  R   Rd   R   (   R   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyR     s    $c          C   ss   t  j i d d d g d 6 }  t j |  d d } | j   } | j d | d <t | |   |  j d |  d <d  S(   Ni   i   i   R   R1   Rd   (   R   RD   R;   RI   R   R   R   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_copy+  s    c          C   s    t  j i d d d d g d 6d d d d	 g d
 6d t  j d d d d g d d }  t j |  d  } | j   } | d =t | |   |  d =t | |   d  S(   NR   R   Ru   R   R   i   i   i   i   Rd   R   g      š?g       @g      @g      @R   Rp   (   R   RD   R   R;   RI   R   R   (   RV   R   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_del8  s    $t   deepc         C   sĖ   t  j i d d d g d 6d d d g d 6d	 d
 d g d 6 } t j | d d } t | j d |  d |  | j d |  d |   | j j d |  d |  | j j d |  d |  j   k sĒ t  d  S(   Ni   i   i   R   g      š?g       @g      @Rd   R   R   Ru   Rs   R1   R   Rš  (	   R   RD   R;   RI   R   R  R   R    R!   (   R   Rš  RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_memory_usageF  s    R  RŃ   R   R%   R$   R’  R  R  R«  RŖ  R8  RŖ   t   semc         C   s   t  j i d d d d d g d 6d d d	 d
 d g d 6 } t j | d d } t | t | |     d | t | |     d  d  S(   Ni   i   i   i   i   R   gń?g@gffffff
@g@g      @Rd   R1   (   R   RD   R;   RI   R   R`  (   R  RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt$   test_dataframe_reductions_arithmeticT  s
    c          C   sŌ   t  j d d  }  t  j t j j t |   d f  d |  } t j | d d } t | j	 d  | j	 d   t | j	 d | j	 d  t | d j	 d  | d j	 d   t | d j	 d | d j	 d  d  S(	   Ns
   01.01.2015s
   05.05.2015i   R   R1   i   s
   02.02.2015i    (
   R   RH   RD   R"   RE   Ré   R;   RI   R   R®   (   t   dtRangeRV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_datetime_loc_open_slicing`  s    -#c          C   sŹ   t  j i d d g d 6d d g d 6d d g d	 6 }  t j |  d
 d } t t  j |   t j |   t  j d d d g d  } t j | d
 d } t t  j | d t t j | d t  d  S(   Niß  ią  t   yeari   i   R\  i   i   RZ  R1   s	   3/11/2000s	   3/12/2000s	   3/13/2000id   i
   t   infer_datetime_format(   R   RD   R;   RI   R   t   to_datetimeR   R{   (   RV   RA   RS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_datetimej  s    c          C   sŠ   t  j t d   }  t j |  d d } t t  j |   t j |   t t  j |  d d t j | d d  t  j d d d g  }  t j |  d d } t t  j |  d d	 t j | d d	  d  S(
   Ni
   R1   i   RĆ  RĶ  i   s   this will errorR
  t   coerce(   R   R   R   R;   RI   R   t   to_timedelta(   RS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_to_timedeltay  s    +s   No isna methodR-  c         C   sG   t  j |   } t j | d d } t t  j |  t j |   d  S(   NR1   i   (   R   R   R;   RI   R   t   isna(   R-  RS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_isna  s    R  c         C   s  t  j d  } | d d g c d 8<t j i | d 6t  j t |   d 6 } | j d  j d j |    } t j	 | d  j d  j d j |    } t j
 | | j d	 i d
 d 6 g d d } t j
 | | j d	 i d
 d 6 g d d } t | |  d  S(   Ni
   i   i   i   Re   Rg   s   B != {}i   R   Rą   R   (   R"   R   R   RD   Ré   R  RŪ  R   R;   RI   Rl  Rz   R   (   R  R   RV   Rb   RA   RÖ   R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_slice_on_filtered_boundary  s    ,!-..c          C   sC  t  j d d d d d g  }  t j i t t |    d 6d |  } t j | d d  } | j d } t	 j
 | |  t j | d d  } | j d  } t	 j
 | |  t j | d d  } | j d  } t	 j
 | |  t j | d d	  } | j d  } t	 j
 | |  t j | d d  } | } t	 j
 | |  d  S(
   Ni’’’’iž’’’i   i   i   Rg   R   i    g      @(   R"   R   R   RD   R   Ré   R   R  R  R   t   assert_frame_equalR  (   R   RV   RÖ   R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_boundary_slice_nonmonotonic  s"    (c          C   sA   t  j   }  t j |  d d  } t  j   } t j | |  d  S(   Ni   i   (   R   RD   R   R  R   R   (   RV   RÖ   R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_boundary_slice_empty¶  s    s0   start, stop, right_boundary, left_boundary, dropiž’’’g      ąæg      ųæc   	      C   s   t  j d d d d d g  } t j i t t |   d 6d | } t j | |  | | |  } | j |  } t	 j
 | |  d  S(   Ni’’’’iž’’’i   i   i   Rg   R   (   R"   R   R   RD   R   Ré   R   R  R  R   R   (	   R  t   stopt   right_boundaryt   left_boundaryR  R   RV   RÖ   R(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_with_boundary½  s
    (s   index, left, rightt   2017s
   2017-01-10t   2016t   2018c         C   sQ   t  j i t t |    d 6d |  } t j | | |  } t j | |  d  S(   NRe   R   (   R   RD   R   Ré   R   R  R   R   (   R   R@  RA  RV   RÖ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_boundary_slice_sameŅ  s    (c          C   sq   t  j d d d d g  }  t j |  d d } t j t   } | j   Wd  QXt | j	  d k sm t
  d  S(   NR   R   Ru   R   R1   i   s'   `mean` not supported with object series(   R   R   R;   RI   R2   R3   R4   R   Ri   Rj   R!   (   RS   Ro   Rl   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt$   test_better_errors_object_reductionsę  s
    c          C   sy   t  j d    }  t j |  d  |  d  |  d  g  } | j d d  } | j   } | j j | j  su t  d  S(   Nc         S   s(   t  j t j |  d f  d t d  S(   Ni   R   t   abcd(   R   RD   R"   t   zerosRG   (   R  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   make_dfš  s    i    id   R§  gÉ?(	   R.   Rµ  R;   R¶  R¬  R    Rž   t   equalsR!   (   R  RA   R¹   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_sample_empty_partitionsļ  s
    *c             s   t  j t j d  j d   }  t j |  d d } t t t	 f } xC t
 | | | d f  D]( \    t j t    f d    q_ Wd  S(   Nid   i
   R1   i   i    c              s
       S(   N(    (    (   R   t   t(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ’  RC   (   i
   i
   (   R   RD   R"   R   t   reshapeR;   RI   RÓ   R#  t   complexR    R2   R3   R$  (   RV   RA   t   funcs(    (   R   R  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_coerceś  s
    !&c          C   s   t  j t j d  j d   }  t j |  d d } | | d | | k | d | d k g } x. | D]& } t j t	   t
 |  Wd  QXqg Wd  S(   Nid   i
   R1   i   i    (   i
   i
   (   R   RD   R"   R   R  R;   RI   R2   R3   R4   t   bool(   RV   RA   t
   conditionst   cond(    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt	   test_bool  s    !*c          C   sŲ   t  j t j j d d  d t d  }  t j |  d  } x | |  g D]z } xq |  j D]f } | | j	   | | d <| | j
   | | d <| | j   | | d <| | j   | | d <qY WqI Wt | |   d  S(	   Nid   i   R   R   t   cst   cmint   cmaxt   cp(   R   RD   R"   RE   RF   RG   R;   RI   R   R   R    R”   R   R   (   RV   RA   R   Ru   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_cumulative_multiple_columns  s    * c         C   s.  d d l  m } t j i d d d d d g d 6d	 d
 d d d g d 6d d d d d d g } t j | d d } x² d   d   d   d   g D] } y |  | |   } Wn t k
 rĘ q n X| |  j |   } | | |  t | t	 j
  st  | j d t j t j f k s t  q Wd  S(   Ni’’’’(   R   i   i   i   i   i   R   g      @g      @g       @g      "@g      $@Rd   R   R   R   Ru   R   Rv   R1   c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   "  RC   c         S   s   |  j  S(   N(   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   #  RC   c         S   s   |  j  S(   N(   Rd   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   $  RC   c         S   s   |  j  S(   N(   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   %  RC   i    (   Rķ  R   R   RD   R;   RI   t	   ExceptionRĪ   R:   R   R   R!   R!  R"   R¢   (   R¦   R   RV   RA   t   preR(   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partition_array  s"    	c             s>  t  j d    t  j d d d t j i d d d d d	 g d
 6d d d d d g d 6d d d d d d g }  t j |  d d }   f d   } x” d   d   g D] } | | |    } | |  j |  } t | t j	  sī t
  | j   } | j | j k j   st
  | j | j k j   s© t
  q© Wd  S(   Nt   sparset   numbat
   minversions   0.40.0i   i   i   i   i   R   g      @g      @g       @g      "@g      $@Rd   R   R   R   Ru   R   Rv   R1   c            s     j  t j |    S(   N(   t   COOR"   R   (   R   (   R"  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRw   <  s    c         S   s   |  S(   N(    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ?  RC   c         S   s   |  j  S(   N(   R   (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   @  RC   (   R2   R   R   RD   R;   RI   RĪ   R:   R   R   R!   R    RÆ  RŖ   t   coords(   RV   RA   Rw   R   R(   RÖ   t   computed(    (   R"  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_map_partition_sparse2  s    	c          C   s  t  j i d d d g d 6d d d d g }  t j |  d	 d } t |  j |  j j | j | j j  t |  j j |  j | j j | j  t |  j |  j j | j | j j  t |  j j |  j | j j | j  t |  j |  j j j   | j | j j j    d  S(
   Ni   i   i   R   R   i   i   i   R1   (	   R   RD   R;   RI   R   R   R-  R   RŃ   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_mixed_dask_array_operationsI  s    .c          C   sś   t  j i d d d d d g d 6d d d d d	 d
 g }  t j |  d d } t j d d d } t j t j f f | _ t	 j
 t   | j | j   Wd  QXt j d d d } t	 j
 t   } | j | Wd  QXd t | j  k sö t  d  S(   Ni   i   i   i   i   R   R   i   i   i   R1   R!  R   (   i   i   (   (   i   i   (   i   i   i   (   (   i   i   i   (   R   RD   R;   RI   R   R   R"   R¢   t   _chunksR2   R3   R4   R   R    Ri   Rj   R!   (   RV   RA   R   Rŗ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt'   test_mixed_dask_array_operations_errors[  s    :c          C   s   t  j i d d d d d g d 6d d d	 d
 d g d 6d d d g }  t j |  d d } |  j d j t  } | j d j t  } t | | d |  | d  t | | j d  d |  | d  t | d d g | d |  d d g | d  d  S(   Ni   i   i   i   i   R   g      @g      @g      @g       @g      "@Rd   R   R1   (   Ni   (
   R   RD   R;   RI   R-  RØ  R#  R   t   rechunkR7   (   RV   RA   R   RS  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt'   test_mixed_dask_array_multi_dimensionall  s    &c          C   s  t  j d d g  }  t j |  d d } y | j d    Wn+ t k
 rk } d t |  k sl t  n Xt  j i d d d g d 6d d d	 g d
 6d d d g d 6 } t j | d d } t	 j
 t   } | j | j Wd  QXd t | j  k st  d  S(   NR  R1   i   c         S   s   |  d S(   Ni   (    (   R   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   s   meta=R   Rd   R   Rs   R   i   i   Ru   (   R   R   R;   RI   R,  R4   Ri   R!   RD   R2   R3   R  R   Ru   Rj   (   RS   Ro   Rv   RV   RA   Rŗ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_meta_raisesz  s    c             sŅ   t  j d    t  j d  }  |  j j d d d } d | | d k  <t j |  } | j   j  } t | |  j  s t	  | j
   j   j   } t j d	 d
 |  } t   f d   | D  sĪ t	  d  S(   Ns   scipy.sparses
   dask.arrayič  i
   R!  id   i    gĶĢĢĢĢĢģ?RŲ   s   single-threadedc         3   s!   |  ] } t  |   j  Vq d  S(   N(   R:   t
   csr_matrix(   RŁ   R+  (   R"  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>  s    (   ič  i
   (   id   i
   (   R2   R   RE   R;   R   RĪ   R/  R:   R   R!   t
   to_delayedt   flattent   tolistR.   R    RŖ   (   R   R   RV   Rd   t   vsR-  (    (   R"  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt1   test_dask_dataframe_holds_scipy_sparse_containers  s    c             sĶ   t  j i d d d d g d 6 }  t j |  d d } t j d    | j d   d	   } t   f d
   | j j	   D  s t
  | j d      } t   f d   | j j	   D  sÉ t
  d  S(   Ni   i   i   i   R   R1   i@B c         S   s   |  S(   N(    (   R   Rd   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   ¤  RC   Rd   c         3   s   |  ] }   | k Vq d  S(   N(    (   RŁ   R+  (   t   big(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>„  s    c         S   s   |  S(   N(    (   R   Rd   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB   §  RC   c         3   s   |  ] }   | k Vq d  S(   N(    (   RŁ   R+  (   R5  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>Ø  s    (   R   RD   R;   RI   R"   t   onesRĪ   t   anyR.   R-  R!   (   RV   RA   R   R   (    (   R5  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt'   test_map_partitions_delays_large_inputs  s    "+c          C   s
  t  j i t d  d 6 }  t j |  d d } t | j d | j d   t | j d | j d   t | j d | j d   | j d  j d k s¤ t	  | j
 j d  j d k sĆ t	  | j
 j d  d  d	  j   j   d d
 d d d d g k st	  d  S(   Ni
   R   R1   i   i    i   i’’’’i   i   i   i   i	   (   R   RD   R   R;   RI   R   t
   partitionsR÷   R1   R!   R   R    R2  (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_partitions_indexer«  s    c          C   s   t  j i d d d g d 6 }  t j |  d d } t |  |  t |  j | j  t |  j d | j d  t |  j d d k | j d d k  d  S(   Ni   i   i   R   R1   i    (   R   RD   R;   RI   R   R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_mod_eq¹  s    c          C   sl   t  j i d d g d 6d d g d 6 }  t j |  j   d  } d |  |  j <d | | j <t |  |  d  S(   Ni   i   Re   i   i   Rg   (   R   RD   R;   RI   R   R   R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_setitemĀ  s
    )c          C   sg   t  j i d d d d d g d 6 }  t j |  d d } t | | j   d |  |  j   d  d  S(   Ni   i   i   i   i   R   R1   (   R   RD   R;   RI   R   RŃ   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_broadcastŹ  s    %c          C   sw   t  j i d d d d d g d 6 }  t j |  d d } t j j |  j j |  j j	   | j j | j j	    d  S(   Ni   i   i   i   i   R   R1   (
   R   RD   R;   RI   R   R  R   R   R-  R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_scalar_with_arrayŃ  s    %c           C   sG   t  t j    s t  t  t j    s0 t  t  d  sC t  d  S(   Ni{   (   R   R   RD   R!   R   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_has_parallel_typeŁ  s    c       
   C   s   t  j t  0 }  t j i d d 6d t j   d  d  g  Wd  QXd t |  j	  k s\ t
  d t |  j	  k sw t
  d t |  j	  k s t
  d  S(   Ni{   R   i   R   RD   t   pandas(   R   i   (   R2   R3   R$  R;   RD   R   R   R7   Ri   Rj   R!   (   Rŗ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_meta_error_messageß  s
    /c          C   s   t  j i d d d d d g d 6 }  t j |  d d } | j   } | j d | _ |  j   } | j d | _ t | |  t | |   d  S(	   Ni   i   i   i   i   R   R1   i
   (   R   RD   R;   RI   R   R   R   (   RV   RA   t   ddf_copyR(   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_assign_indexč  s    %c          C   s   t  j i d d d d d g d 6 }  t j |  d d } t | j d |  j d  t d | j d |  j  t | j |  j  d  S(	   Ni   i   i   i   i   R   R1   i
   (   R   RD   R;   RI   R   R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_index_divisions÷  s
    %c          C   s
  t  j i d d d d d g d 6 }  t j |  d d } t |  j d d  | j d d   t |  j i d d 6d	 d 6 | j i d d 6d	 d 6  t |  j j d d  | j j d d   t |  j j i d d 6d	 d 6 | j j i d d 6d	 d 6  d  S(
   Ni   i   i   i   i   R   R1   i
   i   (   R   RD   R;   RI   R   R¾  R   (   RV   RA   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_replace   s    %%;+c             sŁ   t  j i d d d d d g d 6 }  t j |  d d } t t d     | j d	   d
   } t   f d   | j   j	   D  s t
  | j d      } t   f d   | j   j	   D  sÕ t
  d  S(   Ni   i   i   i   i   R   R1   id   c         S   s   |  t  |  S(   N(   RŃ   (   R   Rd   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   Rd   c         3   s'   |  ] } t     t  |  k Vq d  S(   N(   Ri   (   RŁ   R+  (   t   L(    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>  s    c         S   s   |  t  |  S(   N(   RŃ   (   R   Rd   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyRB     RC   c         3   s'   |  ] } t     t  |  k Vq d  S(   N(   Ri   (   RŁ   R+  (   RF  (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pys	   <genexpr>  s    (   R   RD   R;   RI   RG   R   RĪ   R7  t   __dask_graph__R-  R!   (   RV   RA   R   (    (   RF  sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt    test_map_partitions_delays_lists
  s    %.c          C   sČ   t  j d d d g  }  t j |  d d } xN d d d g D]= } t |  j j d | d	 t  | j j d | d	 t   q= Wt j	 t
   } | j j d	 t  Wd  QXd
 t | j  k sÄ t  d  S(   Ns   a b c ds   aa bb cc dds   aaa bbb ccc ddddR1   i   i   i   R  t   expands   n=(   R   R   R;   RI   R   Ri   t   splitR{   R2   R3   R¶   Rj   R!   (   RS   Ro   R  Rŗ   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_str_expand  s     s   Need to pad columnsc          C   s“   t  j d d d g  }  t j |  d d } t |  j j d d d t  | j j d d d t   t  j d	 d
 d g  }  t j |  d d } |  j j d d d t  j   d  S(   Ns   a b c dt   aas   aaa bbb ccc ddddR1   i   R  i   RI  s   a b cs   aa bb ccs   aaa bbb ccci
   (	   R   R   R;   RI   R   Ri   RJ  R{   R    (   RS   Ro   (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_str_expand_more_columns$  s    s#   docstring not rendered on py2 buildc           C   s   d t  j j j k s t  d  S(   Ns-   Currently, only numeric describe is supported(   R;   RD   R   t   __doc__R!   (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_describe_doc2  s    c          C   s  t  j i t j d d t j d 6t j d d t j d 6t j d d t j d 6 }  t j |  d d } | j	 j
 t j k s t  | j j
 t j k s„ t  | j j
 t j k sĄ t  t  j t j d d t j  d } | j
 t j k sż t  | j d |  } | j j
 t j k s*t  | j j
 t j k sEt  | j j
 t j k s`t  | j	 j
 t j k s{t  d  S(	   Ni
   RM   Re   Rg   Rą   R1   i   R?   (   R   RD   R"   R   RŌ   RN   R¦  R;   RI   Re   RM   R!   Rg   Rą   R   Rį   R?   (   RV   RA   R{  (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   test_dtype_cast:  s    	%(   R   i    (   R   i   (   R   i   (   i   i
   (   i   i   (   i   i   (   g      @g      @(   gffffffÖ?gffffff@g      @g      @g       @(   g        g@g333333ó?g333333@g      @(  R  RØ  t	   itertoolsR    t   operatorR   R2   t   numpyR"   R@  R   t   pandas.util.testingR3  R4  R   t   pandas.io.formatsR   R  R.   t
   dask.arrayR   R   t   dask.dataframet	   dataframeR;   t	   dask.baseR   R  R   t
   dask.utilsR   R   t   dask.dataframe.coreR   R   R	   R
   R   R   t   dask.dataframe.utilsR   R   R   R   RD   R+   R   RŠ   R   R    R   R)   R0   R5   R8   R9   R<   RL   RT   RX   RY   R[   t   markt   parametrizet   paramt   xfailRc   Rm   Rr   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  R  R  R   R  R  R  R(  R*  R/  R0  R2  R3  R5  t   skipifR<  RK  RM  RT  RV  R_  Rg  Rj  t   slowR  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Ž  R7   t   numberRĘ  Rģ  Rų  Rś  Rž  R  R  R  R	  R  R  R  R  R  R  R  R  R"  R%  R)  R+  R-  R/  R2  R:  R>  RA  RC  RQ  RT  RY  R]  Re  Rh  Rj  Rl  Rn  Rp  Rq  Rr  Rs  Ru  R}  R  R  R  R  R  R  R  R  R”  R¢  R£  R¤  R„  R   R,   RE   RH   R¬  R®  R°  R±  R¶  RG   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   RQ   R
  R  R  R  R  R  t   asarrayt
   to_recordsR!  R(  R)  R+  R-  R.  R4  R8  R:  R;  R<  R=  R>  R?  RA  RC  RD  RE  RH  RK  RM  RO  RP  (    (    (    sB   lib/python2.7/site-packages/dask/dataframe/tests/test_dataframe.pyt   <module>   s\  ("/,,,$			
				
				
	-			.0$		C		#$		?											 								
	*$$$'%			3						*%**			"		Y		6			3		
	
		'	
		
							?				.		4	 	4		
							$$		'	%				*	/			
	(	
	 																#										''		
		3		
		99			$0$$				'
	
		6$		*
$$$6							*																				
		