3
Ud%                 @   s   d dl Zd dlZd dlZd dlmZmZmZmZ d dl	j
Zdd Zdd Zdd Zd	d
 Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd  ZdS )!    N)CategoricalSeries
date_rangeisnac             C   sT  |j |j}ytj|j|js"tW n tk
r8   Y nX |jj|jsLt|jj|js^t|jdd }|j |}x$|j D ]\}}||| kstqW | jdd }| j |}x$|j D ]\}}|| | kstqW | j |}	tj	|	j
 st| jd d d }
| j |
}x(|j D ]\}}|| | kstqW | j  }|| k	sPtd S )N
         )reindexindexnpZmay_share_memoryAssertionErrorAttributeErroris_Z	identicalitemsisnanall)datetime_seriesZstring_seriesidentityZsubIndexZ	subSeriesidxvalZ	subIndex2ZsubTSZstuffSeriesZnonContigIndexZsubNonContigresult r   a/var/www/html/virt/lib64/python3.6/site-packages/pandas/tests/series/indexing/test_alter_index.pytest_reindex	   s.    



r   c              C   s   t ddddgddtjdgd} tjdtjddtjgdd	ddddg }}tj| j|| j|  | jjd
| _tj| j|| j| dd d S )Nr                     )r
   r   objectF)Zcheck_index_type)	r   r   nantmassert_series_equalr	   Zilocr
   astype)tsijr   r   r   test_reindex_nan0   s
    (r(   c              C   sr   t dddd} t| }|jtd}tj|jtjds<t|j }|dd  j	 sXt|d d	 j
  sntd S )
Nz1/1/2000 00:00:00r   Z10s)periodsfreq   zM8[ns]r   r,   )r   r   r	   ranger   Z
issubdtypedtyper   r   r   any)rngZseriesr   maskr   r   r   test_reindex_series_add_nat<   s    r2   c              C   s   t ddd} ttjjd| d}|jt|jdd }|dd }|jjd |_t	j
|| |t|jdd  }t	j
|| d S )Nz1/1/2000r   )r)   )r
   r   r   )r   r   r   randomZrandnr	   listr
   
_with_freqr"   r#   )r0   r%   r   expectedr   r   r   test_reindex_with_datetimesH   s    r7   c             C   s   t td}|j| jdd |j| jdd}| jt| j}| jjd | _tj| | | d d d }d}tj	t
|d |j| jdd W d Q R X d S )N)r.   pad)methodr   zVInvalid fill method\. Expecting pad \(ffill\), backfill \(bfill\) or nearest\. Got foo)matchfoo)r   r    r	   r
   r4   r5   r"   r#   pytestraises
ValueError)r   empty	reindexedr%   msgr   r   r   test_reindex_cornerU   s    
rB   c              C   s  t tjddd} | d d d }|j| jdd}|j| jdd}tj|| t ddddd	d	d
d
ddg
tjdd}tj|| t dddd	dgdddddgd} ddddg}t ddddg|d}| j|j }tj||jd | j|jdd}tj|| t ddddg|d}| j|dd}tj|| t ddddgt	dd} d}| jt	|j }t dddgt	|d}tj|| t dt
ddd} | jdjdd}t dt
ddd}tj|| d S )Nr   int64)r.   r   r8   )r9   ffillr   r      r   )r
   r   r   r   abcdegfZfloat64Zinfer)ZdowncastTFZabcdZagcZbfill)r   r   aranger	   r
   r"   r#   rD   r$   r4   r-   shiftZfillna)ss2r@   Z
reindexed2r6   Z	new_indexr   r   r   r   test_reindex_padl   s4    & rQ   c              C   s   t tjddd} ddddg}| j|dd	}t tj|jd|}tj|| | j|dd
d}t ddtjdg|}tj|| | j|dddddgd}t dtjtjdg|}tj|| d S )Nr   rC   )r.   g?g?g      ?g       @Znearest)r9   g?)r9   Z	tolerancer   r   r   g333333?g{Gz?g?r   )	r   r   rM   r	   Zaroundr$   r"   r#   r!   )rO   targetr   r6   r   r   r   test_reindex_nearest   s    rS   c               C   s   d S )Nr   r   r   r   r   test_reindex_backfill   s    rT   c             C   sp   | d d d }t tjt|td|jd}|j| j}|jtjksFt	|j|jd d d }|jtj
kslt	d S )Nr   )r.   )r
   )r   r   zeroslenintr
   r	   r.   Zfloat_r   int_)r   r%   Zint_tsZreindexed_intr   r   r   test_reindex_int   s    rY   c             C   sp   | d d d }t tjt|td|jd}|j| j}|jtjksFt	|j|jd d d }|jtj
kslt	d S )Nr   )r.   )r
   )r   r   rU   rV   boolr
   r	   r.   Zobject_r   Zbool_)r   r%   bool_tsZreindexed_boolr   r   r   test_reindex_bool   s    r\   c             C   sT   | dd  }t tjt|td|jd}|j| jdd}t|d d j sPt	d S )Nr   )r.   )r
   r8   )r9   )
r   r   rU   rV   rZ   r
   r	   r   r   r   )r   r%   r[   Zfilled_boolr   r   r   test_reindex_bool_pad   s    r]   c              C   s   t ddd} tdddgdd}|j| }tttjtjtjgdddgd	}| |_tj|| ttddgdddgd	}d
dg|_|jd
dg}tj|| ttdtjgdddgd	}ddg|_|jddg}tj|| d S )NZ20000101r   )r)   rF   rG   rH   category)r.   )values
categoriesr   r   )	r   r   r	   r   r   r!   r
   r"   r#   )r
   rO   r   r6   r   r   r   test_reindex_categorical   s    
 

ra   c              C   s  t dddg} | jdddg}t ddtjgdddgd}tj|| | jdddgdd	}t dddgdddgd}tj|| t dddg}|jdddg}t ddtjgdddgd}tj|| |jdddgdd	}t dddgdddgd}t|jjtj	st
tj|| t dddgtd
}|jdddg}t ddtjgdddgtd}tj|| |jdddgdd	}t dddgdddgtd}tj|| t dddg}|jdddg}t ddtjgdddgtd}tj|| |jdddgdd	}t dddgdddgd}tj|| d S )Ng      ?g       @g      @r   r   r   )r
   r   )Z
fill_value)r.   )r
   r.   r;   TF)r   r	   r   r!   r"   r#   
issubclassr.   typeintegerr   r    )Zfloatsr   r6   intsZobjectsZboolsr   r   r   test_reindex_fill_value   s:    rf   c              C   s\   t dddd} t dddd}ttd| d	}d
}tjt|d |j|dd W d Q R X d S )NZ20131101zAmerica/Chicagor   )tzr)   Z20131103r   H)r)   r*   )r
   z/Cannot compare tz-naive and tz-aware timestamps)r:   rD   )r9   )r   r   r-   r<   r=   	TypeErrorr	   )r   ZnewidxrO   rA   r   r   r   /test_reindex_datetimeindexes_tz_naive_and_aware  s    rj   c              C   s8   t ddjddg} t tjgd dd}tj| | d S )Nzdatetime64[ns, UTC])r.   r   r   r   )r   r	   pdZNaTr"   Zassert_equal)r   r6   r   r   r   "test_reindex_empty_series_tz_dtype%  s    rl   )Znumpyr   r<   Zpandasrk   r   r   r   r   Zpandas._testingZ_testingr"   r   r(   r2   r7   rB   rQ   rS   rT   rY   r\   r]   ra   rf   rj   rl   r   r   r   r   <module>   s&   
')3
