ó
šxŠ\c           @   s
  d  d l  m Z d  d l Z d  d l m Z d  d l Z d  d l m Z d  d l m	 Z	 d  d l
 Z d  d l
 m Z m Z m Z m Z m Z d  d l m Z m Z d  d l j j Z d  d l m Z d	 e f d
 „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   iÿÿÿÿ(   t   OrderedDictN(   t   nan(   t   u(   t   is_integer_dtype(   t   Categoricalt	   DataFramet   Indext   Seriest   get_dummies(   t   SparseArrayt   SparseDtype(   t   assert_frame_equalt   TestGetDummiesc        
   B   s°  e  Z e j d  „  ƒ Z e j d d d e j e d3 g ƒ d „  ƒ Z	 e j 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 d „  Z e j j d i e j  i d g d 6ƒ d 6e j  i d g d 6d  e j! ƒf i e j  i d g d! 6ƒ d 6e j  i d g d" 6d  e j! ƒf i e j  i d# g d! 6ƒ d 6d d$ 6e j  i d g d 6d  e j! ƒf i e j  i d# g d! 6ƒ d 6d d% 6e j  i d g d& 6d  e j! ƒf g ƒ d' „  ƒ Z" d( „  Z# d) „  Z$ d* „  Z% d+ „  Z& d, „  Z' d- „  Z( d. „  Z) d/ „  Z* d0 „  Z+ e j j d e, e- g ƒ d1 „  ƒ Z. d2 „  Z/ RS(4   c         C   s:   t  i d d d g d 6d d d g d 6d d d g d	 6ƒ S(
   Nt   at   bt   At   ct   Bi   i   i   t   C(   R   (   t   self(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   df   s    t   paramst   uint8t   i8c         C   s   t  j | j ƒ S(   N(   t   npt   dtypet   param(   R   t   request(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyR      s    t   denset   sparsec         C   s   | j  d k S(   NR   (   R   (   R   R   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyR   !   s    c         C   s   | d  k r t j S| S(   N(   t   NoneR   R   (   R   R   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   effective_dtype'   s    c         C   s*   t  j t ƒ  t | d d ƒWd  QXd  S(   NR   t   object(   t   pytestt   raisest
   ValueErrorR   (   R   R   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_raises_on_dtype_object,   s    c         C   s  t  d ƒ } t | ƒ } t | t  d ƒ ƒ } t i d d d g d 6d d d g d 6d d d g d 6d |  j | ƒ ƒ} | r™ | j t j d	 d
 ƒ} n  t | d | d | ƒ} t | | ƒ t | d | d | ƒ} t | | ƒ t  d ƒ | _	 t | d | d | ƒ} t | | ƒ d  S(   Nt   abct   ABCi   i    R   R   R   R   t
   fill_valueg        R   (
   t   listR   R   R   t   applyt   pdR	   R   R   t   index(   R   R   R   t   s_listt   s_seriest   s_series_indext   expectedt   result(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt
   test_basic0   s     c         C   s_  t  d ƒ } t | ƒ } t i d d d d d g d 6d d d d d g d	 6d d
 d
 d
 d g d 6ƒ } t i d d d g d 6d d d g d	 6d d d g d 6d |  j | ƒ d t  d ƒ ƒ} | rt | ƒ rØ d } n | t k rí t } n d } | j t d | ƒ} n  t	 | d | d | ƒ} t
 j | | ƒ t	 | d | d | ƒ} t
 j | | ƒ t	 | d | j d | d | ƒ} | r£d j |  j | ƒ j | ƒ }	 n |  j | ƒ j }	 t i d |	 6ƒ } t
 j | j ƒ  | ƒ t	 | d d g d | d | ƒ} i d d 6d d 6}
 d
 |
 j |	 d ƒ |
 |	 <t |
 ƒ j ƒ  } t
 j | j ƒ  j ƒ  | ƒ d  S(   NR%   i    i   i   R   R   R   R   R   i   R   R   t   columnsg        R'   R   s   Sparse[{}, {}]i   t   int64R    (   R(   R   R   R   R   t   boolt   FalseR)   R	   R   t   tmR   R2   t   formatt   namet   assert_series_equalt   get_dtype_countst   gett
   sort_index(   R   R   R   R,   R-   t   s_dfR/   R'   R0   t
   dtype_namet   expected_counts(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_basic_typesE   sH    		!c         C   sî   t  j g } t | ƒ } t | d d g ƒ} t | d | ƒ} t | d | ƒ} t | d | ƒ} | j sr t ‚ | j s t ‚ | j s t ‚ | j j ƒ  d g k s® t ‚ | j j ƒ  d g k sÌ t ‚ | j j ƒ  d g k sê t ‚ d  S(   NR+   R   R   i    (   R   R   R   R   t   emptyt   AssertionErrorR+   t   tolist(   R   R   t   just_na_listt   just_na_seriest   just_na_series_indext   res_listt
   res_seriest   res_series_index(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_just_naw   s    c   
      C   sÂ  d d t  j g } t | d | d | ƒ} t i d d d g d 6d d d g d 6d |  j | ƒ ƒ} | r† | j t j d d ƒ} n  t | | ƒ t | d	 t	 d | d | ƒ} t i d d d g t 6d d d g d 6d d d g d 6d |  j | ƒ ƒ} | j
 d d t g d
 d ƒ} | j | _ | rG| j t j d d ƒ} n  t | | ƒ t t g d	 t	 d | d | ƒ} t t d d d g ƒd t g d |  j | ƒ ƒ}	 t j | j |	 j ƒ d  S(   NR   R   R   R   i   i    R'   g        t   dummy_nat   axisR+   R2   (   R   R   R   R   R   R)   R*   R	   R   t   Truet   reindexR2   R   R6   t   assert_numpy_array_equalt   values(
   R   R   R   t   st   rest   expt   res_nat   exp_nat   res_just_nat   exp_just_na(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_include_naˆ   s.    !c         C   s¹   d d  l  } d } | j d ƒ } | | | g } t | d d d | ƒ} t i d d d g d	 6d d d g t d
 ƒ | 6d t j ƒ} | r¨ | j t j	 d d ƒ} n  t
 | | ƒ d  S(   Niÿÿÿÿt   es   LATIN SMALL LETTER E WITH ACUTEt   prefixt   letterR   i   i    t   letter_es	   letter_%sR   R'   (   t   unicodedatat   lookupR   R   R   R   R   R)   R*   R	   R   (   R   R   R]   RY   t   eacuteRQ   RR   RS   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_unicode¥   s    c         C   s  | d d g } t  | d | ƒ} t i d d d g d 6d d d g d 6d d d g d 6d d d g d	 6d
 t j ƒ} | rt j i t j d d d g d
 d ƒd 6t j d d d g d
 d ƒd 6t j d d d g d
 d ƒd 6t j d d d g d
 d ƒd	 6ƒ } n  t | | ƒ d  S(   NR   R   R   i   i    t   A_at   A_bt   B_bt   B_cR   R   (   R   R   R   R   R*   R	   R   (   R   R   R   R0   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_dataframe_dummies_all_obj³   s    	(c         C   sû   t  | d | d | ƒ} | r6 t } t | d ƒ } n t j } | } t i d d d g d 6| d d d g d | ƒd 6| d d d g d | ƒd	 6| d d d g d | ƒd
 6| d d d g d | ƒd 6ƒ } | d d d	 d
 d g } t | | ƒ d  S(   NR   R   i    i   i   i   R   Ra   Rb   Rc   Rd   (   R   R	   R
   R   t   arrayR   R   (   R   R   R   R   R0   t   arrt   typR/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt"   test_dataframe_dummies_mix_defaultÅ   s    	"c            s	  d d g } t  | d | d | ƒ} t i d d d g d 6d d	 d g d
 6d	 d d	 g d 6d d d	 g d 6d	 d	 d g d 6d t j ƒ} | d g | d g <d
 d d d g } | d g | } | rÏ t j n t j ‰  | | j ‡  f d †  ƒ | | <t | | ƒ d  S(   Nt   from_At   from_BRZ   R   i   i   i   R   i    t   from_A_at   from_A_bt   from_B_bt   from_B_cR   c            s
   ˆ  |  ƒ S(   N(    (   t   x(   Rh   (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   <lambda>ã   s    (	   R   R   R   R   R*   R	   R   R)   R   (   R   R   R   t   prefixesR0   R/   t   cols(    (   Rh   s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt"   test_dataframe_dummies_prefix_listÕ   s     c         C   si  t  | d d d | ƒ} d d d d g } t d d d d d g d	 d d d d g d
 d d d d g g d d g | d t j ƒ} | j i t j d 6ƒ } | rXt j t j d d	 d
 g d d ƒt j d d d g d d d d ƒt j d d d g d d d d ƒt j d d d g d d d d ƒt j d d d g d d d d ƒg d d ƒ} n  t	 | | ƒ d  S(   NRZ   t   badR   t   bad_at   bad_bt   bad_ci   i    i   i   R2   R   R   R8   s   Sparse[uint8]RL   (
   R   R   R   R   t   astypeR3   R*   t   concatR   R   (   R   R   R   R0   t   bad_columnsR/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt!   test_dataframe_dummies_prefix_stræ   s"    !!!'c         C   sÍ   t  | d d g d d g d | ƒ} t i d d d g d 6d	 d
 d g d 6d	 d d	 g d 6d d	 d g d 6d t j ƒ} | d g | d g <| r¼ d d g } | | j d „  ƒ | | <n  t | | ƒ d  S(   NRZ   Rj   R2   R   R   R   R   R   i   i   i   R   i    Rl   Rm   R   c         S   s   t  j |  ƒ S(   N(   R*   t   SparseSeries(   Rp   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRq     s    (   R   R   R   R   R)   R   (   R   R   R   R0   R/   Rs   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_dataframe_dummies_subsetý   s    	c         C   sn  t  | d d d | ƒ} t i d d d g d 6d d d g d	 6d d d g d
 6d d d g d 6d d d g d 6d t j ƒ} | d g | d g <| d d	 d
 d d g } | rß d	 d
 d d g } | | j d „  ƒ | | <n  t | | ƒ t  | d d d g d | ƒ} | j d i d d 6d d 6ƒ } t | | ƒ t  | d i d d 6d d 6d | ƒ} t | | ƒ d  S(   Nt
   prefix_seps   ..R   i   i   i   R   i    s   A..as   A..bs   B..bs   B..cR   c         S   s   t  j |  ƒ S(   N(   R*   R}   (   Rp   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRq     s    t   __R2   t   B__bt   B__cR   R   (   R   R   R   R   R)   R   t   rename(   R   R   R   R0   R/   Rs   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt!   test_dataframe_dummies_prefix_sep
  s&     	c      
   C   s3   t  j t ƒ  t | d d g d | ƒWd  QXd  S(   NRZ   s   too fewR   (   R!   R"   R#   R   (   R   R   R   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt(   test_dataframe_dummies_prefix_bad_length"  s    c      
   C   s3   t  j t ƒ  t | d d g d | ƒWd  QXd  S(   NR   Ru   R   (   R!   R"   R#   R   (   R   R   R   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt,   test_dataframe_dummies_prefix_sep_bad_length&  s    c         C   s$  i d d 6d d 6} t  i d d d g d 6d	 d
 d	 g d 6d
 d
 d g d 6ƒ } t | d | d | ƒ} t  i d d d g d 6d d d g d 6d d d g d 6d d d g d 6d d d g d 6ƒ } d d d d g } | | j t j ƒ | | <| r| | j d „  ƒ | | <n  t | | ƒ d  S(   NRj   R   Rk   R   i   i   i   R   R   R   R   RZ   R   i    Rl   Rm   Rn   Ro   c         S   s   t  j |  ƒ S(   N(   R*   R}   (   Rp   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRq   ;  s    (   R   R   Ry   R   R   R)   R   (   R   R   Rr   R   R0   R/   R2   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt"   test_dataframe_dummies_prefix_dict*  s     
c         C   s¿  t  j t  j t  j g | j d d  d  … f <t | d t d | d | ƒj d d ƒ } | rs t } t | d ƒ } n t  j } | } t	 i d d d t  j g d	 6| d d d d g d | ƒd
 6| d d d d g d | ƒd 6| d d d d g d | ƒd 6| d d d d g d | ƒd 6| d d d d g d | ƒd 6| d d d d g d | ƒd 6ƒ j d d ƒ } t
 | | ƒ t | d t d | d | ƒ} | d	 d
 d d d g } t
 | | ƒ d  S(   Ni   RK   R   R   RL   i   i    i   R   Ra   Rb   t   A_nanRc   Rd   t   B_nan(   R   R   t   locR   RM   R<   R	   R
   Rf   R   R   R5   (   R   R   R   R   R0   Rg   Rh   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_dataframe_dummies_with_na@  s(    +	(	c         C   sN  t  j d d d g ƒ | d <t | d | d | ƒj d d ƒ } | r^ t } t | d ƒ } n t j } | } t i d d	 d
 g d 6| d d d g d | ƒd 6| d d d g d | ƒd 6| d d d g d | ƒd 6| d d d g d | ƒd 6| d d d g d | ƒd 6| d d d g d | ƒd 6ƒ j d d ƒ } t	 | | ƒ d  S(   NRp   t   yt   catR   R   RL   i   i    i   i   R   Ra   Rb   Rc   Rd   t   cat_xt   cat_y(
   R*   R   R   R<   R	   R
   R   Rf   R   R   (   R   R   R   R   R0   Rg   Rh   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt'   test_dataframe_dummies_with_categorical[  s     $	%	s   get_dummies_kwargs,expectedR   u   Ã¤t   datai   u   Ã¤_aR   Rp   u   x_Ã¤u   aRZ   R   u   xÃ¤ac         C   s   t  |   } t | | ƒ d  S(   N(   R   R   (   R   t   get_dummies_kwargsR/   R0   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_dataframe_dummies_unicodep  s    c         C   s  t  d ƒ } t | ƒ } t | t  d ƒ ƒ } t i d d d g d 6d d d g d 6d t j ƒ} t | d t d	 | ƒ} | r› | j t j	 d
 d ƒ} n  t
 | | ƒ t | d t d	 | ƒ} t
 | | ƒ t  d ƒ | _ t | d t d	 | ƒ} t
 | | ƒ d  S(   NR%   R&   i    i   R   R   R   t
   drop_firstR   R'   (   R(   R   R   R   R   R   RM   R)   R*   R	   R   R+   (   R   R   R,   R-   R.   R/   R0   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_basic_drop_first‚  s    c         C   sÍ   t  d ƒ } t | ƒ } t | t  d ƒ ƒ } t d t j d ƒ ƒ } t | d t d | ƒ} t | | ƒ t | d t d | ƒ} t | | ƒ t d t  d ƒ ƒ } t | d t d | ƒ} t | | ƒ d  S(   Nt   aaaR&   R+   i   R”   R   (   R(   R   R   R   t   arangeR   RM   R   (   R   R   R,   R-   R.   R/   R0   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_basic_drop_first_one_level™  s    c   	      C   s]  d d t  j g } t | d t d | ƒ} t i d d d g d 6d t  j ƒ} | rp | j t j d d ƒ} n  t	 | | ƒ t | d	 t d t d | ƒ} t i d d d g d 6d d d g t 6d t  j ƒj
 d t g d
 d ƒ} | r| j t j d d ƒ} n  t	 | | ƒ t t g d	 t d t d | ƒ} t d t  j d ƒ ƒ } t	 | | ƒ d  S(   NR   R   R”   R   i    i   R   R'   RK   RL   R+   (   R   R   R   RM   R   R   R)   R*   R	   R   RN   R—   (	   R   R   t   s_NARR   RS   RT   RU   RV   RW   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_basic_drop_first_NA«  s&    %	!	c         C   s   | d d g } t  | d t d | ƒ} t i d d d g d 6d d d g d 6d	 t j ƒ} | r~ | j t j d
 d ƒ} n  t | | ƒ d  S(   NR   R   R”   R   i    i   Rb   Rd   R   R'   (	   R   RM   R   R   R   R)   R*   R	   R   (   R   R   R   R0   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt!   test_dataframe_dummies_drop_firstÄ  s    c         C   s  t  j d d d g ƒ | d <t | d t d | ƒ} t i d d d g d	 6d
 d d
 g d 6d
 d
 d g d 6d
 d d g d 6ƒ } d d d g } | | j t j ƒ | | <| d	 d d d g } | rð x( | D] } t  j | | ƒ | | <qÌ Wn  t	 | | ƒ d  S(   NRp   RŒ   R   R”   R   i   i   i   R   i    Rb   Rd   R   (
   R*   R   R   RM   R   Ry   R   R   R}   R   (   R   R   R   R   R0   R/   Rs   t   col(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt2   test_dataframe_dummies_drop_first_with_categoricalÎ  s    c         C   s  t  j t  j t  j g | j d d  d  … f <t | d t d t d | ƒj d d ƒ } t i d d d t  j g d 6d	 d d	 d	 g d
 6d	 d	 d	 d g d 6d	 d	 d d	 g d 6d	 d	 d	 d g d 6ƒ } d
 d d d g } | | j t  j ƒ | | <| j d d ƒ } | r2x( | D] } t	 j
 | | ƒ | | <qWn  t | | ƒ t | d t d t d | ƒ} | d d
 d g } t | | ƒ d  S(   Ni   RK   R”   R   RL   i   i   R   i    Rb   Rˆ   Rd   R‰   (   R   R   RŠ   R   RM   R<   R   Ry   R   R*   R}   R   R5   (   R   R   R   R0   R/   Rs   Rœ   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt)   test_dataframe_dummies_drop_first_with_naÞ  s&    +	c         C   sö   t  d d d g ƒ } t j | ƒ } t d d g d d g d d g g d d d g d t j ƒ} t j | | ƒ t  t j d d d g ƒ ƒ } t j | ƒ } t d d g d d g d d g g d t j d d g ƒ d t j ƒ} t j | | ƒ d  S(   Ni   i   i    R2   R   R   R   (	   R   R*   R   R   R   R   R6   R   R   (   R   R‘   R0   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_int_intõ  s     		c      	   C   s  t  i d d d g d 6t j d d d g ƒ d 6d d d g d 6d d	 d g d
 6ƒ } d d
 d d d d g } t  d d d d d d g d d	 d d d d g d d d d d d g g d | ƒ} | | d j | ƒ | | d <t j | d d d g d | ƒ} t j | | ƒ d  S(   Ni   i   R   R   R   R   R   g      ð?g       @t   Dt   A_1t   A_2t   B_aRc   i    R2   R   (   R   R*   R   Ry   R   R6   R   (   R   R   R‘   R2   R/   R0   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_int_df  s    	!c         C   sÜ   xÕ t  t g D]Ç } t j t d ƒ d t d ƒ d | ƒ} t | d | ƒ} t j d d d g d d d g g d |  j | ƒ ƒ} t j	 | j
 d | j
 d | ƒ} t | d | d |  j | ƒ ƒ} t j | | ƒ q Wd  S(	   Nt   xyt
   categoriest   xyzt   orderedR   i   i    R2   (   R5   RM   R*   R   R(   R   R   Rf   R   t   CategoricalIndexR¦   R   R6   R   (   R   R   R¨   R   R0   R‘   Rs   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt1   test_dataframe_dummies_preserve_categorical_dtype  s    	$		c         C   s~   t  j t d d d g f d d d g f g ƒ ƒ } t | d d g d | ƒ} | j d d g ƒ } t j | d g | ƒ d  S(	   Nt   GDPi   i   t   Nationt   ABt   CDR2   R   (   R   t	   from_dictR    R   RN   R6   R   (   R   R   R   t   df2(    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt*   test_get_dummies_dont_sparsify_all_columns+  s
    c         C   sÃ   d d d g | _  t | ƒ j d d ƒ } t d d d d d g d d d d d g d d d d d g g d d d d	 d	 d
 g d t j ƒj d d ƒ } | j i t j d 6ƒ } t j	 | | ƒ d  S(   NR   RL   i   i    i   i   R2   Ra   Rb   t   A_cR   (
   R2   R   R<   R   R   R   Ry   R3   R6   R   (   R   R   R0   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt"   test_get_dummies_duplicate_columns5  s    N(0   t   __name__t
   __module__R!   t   fixtureR   R   t   float64R4   R   R   R   R   R$   R1   R@   RJ   RX   R`   Re   Ri   Rt   R|   R~   R„   R…   R†   R‡   R‹   R   t   markt   parametrizeR*   R   R   R“   R•   R˜   Rš   R›   R   Rž   RŸ   R¤   Rª   RM   R5   R±   R³   (    (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyR      sR   -!				2														""$"$4				
					$
t   TestCategoricalReshapec           B   s#   e  Z e j j d  ƒ d „  ƒ Z RS(   s   ignore:\nPanel:FutureWarningc         C   sã   t  j ƒ  } d | d <| j ƒ  } | d j d ƒ | d <| d j ƒ  } t d g t | j ƒ ƒ } t i | j	 ƒ  d 6| j	 ƒ  d 6| j	 ƒ  d 6| j	 ƒ  d 6d t
 t d	 ƒ d
 d ƒd | j j d ƒ ƒ} t  j | | ƒ d  S(   Nt   foot   strt   categoryR   R   R   R    R2   t   ABCDR8   t   minorR+   t   major(   R6   t	   makePanelt   to_frameRy   t   unstackR   t   lent
   major_axisR   t   copyR   R(   t	   set_namesR   (   R   t   pR   R0   R   R/   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt    test_reshaping_panel_categoricalG  s    
(   R´   Rµ   R!   R¸   t   filterwarningsRÉ   (    (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRº   E  s   t   TestMakeAxisDummiesc           B   s   e  Z d  „  Z RS(   c         C   s  xþ t  t g D]ð } t j t d ƒ d | ƒ} t j d d g | g d d d g d d g g ƒ } t d d	 g g d
 | ƒ} t d d d g d d d g g d
 | d | ƒ} d d l m } | | ƒ } t	 j
 | | ƒ | | d d „  ƒ} t	 j
 | | ƒ q Wd  S(   NR§   R¨   t   levelsR   t   codesi    i   i
   i   R+   g      ð?g        R2   iÿÿÿÿ(   t   make_axis_dummiest	   transformc         S   s   |  S(   N(    (   Rp   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRq   l  s    (   R5   RM   R*   R©   R(   t
   MultiIndexR   t   pandas.core.reshape.reshapeRÎ   R6   R   (   R   R¨   t   cidxt   midxR   R/   RÎ   R0   (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   test_preserve_categorical_dtype]  s    !(   R´   Rµ   RÔ   (    (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyRË   [  s   (   t   collectionsR    t   numpyR   R   R!   t   pandas.compatR   t   pandas.core.dtypes.commonR   t   pandasR*   R   R   R   R   R   t   pandas.core.sparse.apiR	   R
   t   pandas.util.testingt   utilt   testingR6   R   R    R   Rº   RË   (    (    (    s@   lib/python2.7/site-packages/pandas/tests/reshape/test_reshape.pyt   <module>   s   (ÿ ÿ 2