HOME


sh-3ll 1.0
DIR:/usr/local/lib64/python3.6/site-packages/pandas/tests/series/__pycache__/
Upload File :
Current File : //usr/local/lib64/python3.6/site-packages/pandas/tests/series/__pycache__/test_api.cpython-36.pyc
3

���h�f�@s�ddlmZddlZddlZddlZddlZddlmZddl	Z
ddl	mZmZm
Z
mZmZmZmZmZmZmZmZddljZddlmZddljjjZGdd�d�ZGdd	�d	�Z dS)
�)�OrderedDictN)�
async_mark)�Categorical�	DataFrame�
DatetimeIndex�Index�Series�	Timedelta�TimedeltaIndex�	Timestamp�
date_range�period_range�timedelta_range)�PeriodArrayc@seZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zejjd#ejd$�ejd$�ejd$�ed%d&d'gd(�ejd$�ejd$�ejd$�ejd$�ej d$�ejd$�ej!d$�ed)d*g�ed+d,�e"d-�D��e#j$j%e&d.d/��e#j$j%e&d0d1d(d2gd/��g�d3d4��Z'd5d6�Z(d7d8�Z)d9d:�Z*d;d<�Z+d=d>�Z,d?d@�Z-dAdB�Z.dCdD�Z/dEdF�Z0dGdH�Z1dIdJ�Z2dKdL�Z3dMdN�Z4dOdP�Z5dQdR�Z6dSdT�Z7dUdV�Z8dWdX�Z9dYdZ�Z:d[d\�Z;d]d^�Z<e=�d_d`��Z>dadb�Z?dcdd�Z@deS)f�TestSeriesMisccCs|d}|j|jkst�dS)N�)�name�AssertionError)�self�datetime_series�result�r�>/tmp/pip-build-5_djhm0z/pandas/pandas/tests/series/test_api.py�test_scalarop_preserve_namesz*TestSeriesMisc.test_scalarop_preserve_namecCs|j�}|j|jkst�dS)N)�copyrr)rrrrrr�test_copy_name#szTestSeriesMisc.test_copy_namecCsVd|j_|jjdkst�||ks$t�|j�}d|j_tj|jj�|jjdksRt�dS)N�foo)�indexrrr�printingZpprint_thing)rr�cprrr�test_copy_index_name_checking'sz,TestSeriesMisc.test_copy_index_name_checkingcCs.|dd�j|dd��}|j|jks*t�dS)N�)�appendrr)rrrrrr�test_append_preserve_name4sz(TestSeriesMisc.test_append_preserve_namecCs||}|j|jkst�|j|�}|j|jks2t�||dd�}|j|jksRt�|j�}d|_||}|jdksvt�|j|�}|jdks�t�ddddddd	d
g}|dd�|D�}x\|D]T}|j�}t||�|�}|j|jks�t�|j�}d
|_t||�|�}|jdks�t�q�WdS)Nrzsomething else�add�sub�mul�div�truediv�floordiv�mod�powcSsg|]}d|�qS)�rr)�.0�oprrr�
<listcomp>KszATestSeriesMisc.test_binop_maybe_preserve_name.<locals>.<listcomp>�changed���)rrr&rr$�getattr)rrrr�opsr.�srrr�test_binop_maybe_preserve_name8s,


z-TestSeriesMisc.test_binop_maybe_preserve_namecCsZ||dk}|j|jkst�|dddg}|j|jks:t�|dd�}|j|jksVt�dS)Nrr�r!�
)rr)rrrrrr�test_getitem_preserve_nameXsz)TestSeriesMisc.test_getitem_preserve_namecCs|j|�}tj||�dS)N)�_pickle_roundtrip�tm�assert_series_equal)rrZunp_tsrrr�test_pickle_datetimesbs
z$TestSeriesMisc.test_pickle_datetimescCs|j|�}tj||�dS)N)r9r:r;)r�
string_seriesZ
unp_seriesrrr�test_pickle_stringsfs
z"TestSeriesMisc.test_pickle_stringsc	Cs,tj��}|j|�tj|�}|SQRXdS)N)r:Zensure_cleanZ	to_pickle�pdZread_pickle)r�obj�pathZ	unpickledrrrr9js


z TestSeriesMisc._pickle_roundtripcCsvdddd�}t|�}t|t|j��d�}tj||�t|dddd	gd�}td
dtjdgdddd	gd�}tj||�dS)
Ngg�?g@)�a�b�c)rrCrD�drB�rr)r�sorted�keysr:r;�np�nan)rrEr�expectedrrr�test_constructor_dictqsz$TestSeriesMisc.test_constructor_dictcCs>|dd�td�D��}t|�}tt|j���}tj||�dS)Ncss|]}|d|fVqdS)g$@Nr)r-�xrrr�	<genexpr>|sz@TestSeriesMisc.test_constructor_subclass_dict.<locals>.<genexpr>r7)�ranger�dict�itemsr:r;)rZ
dict_subclass�data�seriesrKrrr�test_constructor_subclass_dict{sz-TestSeriesMisc.test_constructor_subclass_dictcCsptdd�td�D��}t|�}tt|j��t|j���}tj||�Gdd�dt�}t||��}tj||�dS)Ncss"|]}d|��tjj�fVqdS)�colN)rI�random)r-�irrrrN�sz>TestSeriesMisc.test_constructor_ordereddict.<locals>.<genexpr>�c@seZdZdS)z6TestSeriesMisc.test_constructor_ordereddict.<locals>.AN)�__name__�
__module__�__qualname__rrrr�A�sr\)rrOr�list�valuesrHr:r;)rrRrSrKr\rrr�test_constructor_ordereddict�sz+TestSeriesMisc.test_constructor_ordereddictcCs�ddddddi}t|j��}t|�}tdd�|D�tjjd	d�|D��d
�}tj||�d|d<|jd
d|df�t|�}tdd�|D�tj	dd�|D�dd�d
�}|j
|jd
�}tj||�dS)NrBgrCg�?rDg@cSsg|]}|d�qS)rFr)r-rMrrrr/�szCTestSeriesMisc.test_constructor_dict_multiindex.<locals>.<listcomp>cSsg|]}|d�qS)rr)r-rMrrrr/�s)rg�[@�zrcSsg|]}|d�qS)rFr)r-rMrrrr/�scSsg|]}|d�qS)rr)r-rMrrrr/�sF)Z
tupleize_cols)rBrB)rCrB)rCrD)rGrQrr?�
MultiIndex�from_tuplesr:r;�insertrZreindexr)rrEZ_drrKrrr� test_constructor_dict_multiindex�s&(z/TestSeriesMisc.test_constructor_dict_multiindexc	Csxtdddgtjdddgdd�d	�}ttjddd�dtjddd�dtjddd�ditjdddgdd�d	�}tj||�dS)
Nr\�B�Crr7�r4)�unit)rRr)rr?Zto_timedeltar:r;)rrKrrrr�%test_constructor_dict_timedelta_index�s z4TestSeriesMisc.test_constructor_dict_timedelta_indexcCsHtjddddgdd�}|jddgdd�}|dks4t�|jjd	ksDt�dS)
NrFr�zSparse[int])�dtyperT)�inplaceg�?)r?r�dropr�sparseZdensity)rr4�return_valuerrr�'test_sparse_accessor_updates_on_inplace�sz6TestSeriesMisc.test_sparse_accessor_updates_on_inplacecCsttd��}dt|�kst�dt|�ks,t�dt|�ks<t�ttddd��}dt|�ks\t�dt|�kslt�dt|�ks|t�ttd�d	d
�}dt|�ks�t�dt|�ks�t�dt|�ks�t�ttddd��jd	�}dt|�ks�t�dt|�ks�t�dt|�k�st�dS)NZabcd�str�dt�catz1/1/2015r!)�periodsZabbcd�category)rk)rr]�dirrr�astype)rr4rrr�test_tab_completion�s z"TestSeriesMisc.test_tab_completioncCsTddddddddd	d
dg}dd
�}ttd��jd�}||�}tj|tt|���dS)N�
categories�codes�ordered�set_categories�add_categories�remove_categories�rename_categories�reorder_categories�remove_unused_categories�
as_ordered�as_unorderedcSs dd�|jj�D�}tt|��S)NcSsg|]}|jd�s|�qS)�_)�
startswith)r-r,rrrr/�szXTestSeriesMisc.test_tab_completion_with_categorical.<locals>.get_dir.<locals>.<listcomp>)rs�__dir__rG�set)r4�resultsrrr�get_dir�szDTestSeriesMisc.test_tab_completion_with_categorical.<locals>.get_dir�aabbcderu)rr]rwr:�assert_almost_equalrGr�)rZ
ok_for_catr�r4r�rrr�$test_tab_completion_with_categorical�sz3TestSeriesMisc.test_tab_completion_with_categoricalrr7r�barZbazrTFcCsg|]}d|���qS)rBr)r-rWrrrr/�szTestSeriesMisc.<listcomp>�e�ABCDZEFGHrrFrjcCsrtj|td�}t|�}xVt|jjdd��D]@\}}|dkr^t|t�sj|j	�sj||ksjt
�q*||ks*t
�q*WdS)N)rrkr)�level�d)r?r�objectrv�	enumerater�unique�
isinstancerq�isidentifierr)rrr4Zdir_srWrMrrr�test_index_tab_completion�s$z(TestSeriesMisc.test_index_tab_completioncCs`ttd�}tdg�}d}tjt|d��t|�WdQRXtjt|d��t|�WdQRXdS)N)rkrFz8'Series' objects are mutable, thus they cannot be hashed)�match)rr��pytest�raises�	TypeError�hash)r�s_emptyr4�msgrrr�test_not_hashables

z TestSeriesMisc.test_not_hashablecCstj|j|�dS)N)r:Zassert_contains_allr)rrrrr�
test_containsszTestSeriesMisc.test_containscCs*x$t|�D]\}}|||ks
t�q
WdS)N)r�r)rrrW�valrrr�test_iter_datetimessz"TestSeriesMisc.test_iter_datetimescCs*x$t|�D]\}}|||ks
t�q
WdS)N)r�r)rr=rWr�rrr�test_iter_stringssz TestSeriesMisc.test_iter_stringscCs|j}|�|jkst�dS)N)rHrr)rrZgetkeysrrr�	test_keysszTestSeriesMisc.test_keyscCstj|j|dd�dS)NF)Zcheck_dtype)r:r�r^)rrrrr�test_values%szTestSeriesMisc.test_valuescCs*x$|j�D]\}}|||ks
t�q
WdS)N)�	iteritemsr)rr�idxr�rrr�test_iteritems_datetimes*sz'TestSeriesMisc.test_iteritems_datetimescCs>x$|j�D]\}}|||ks
t�q
Wt|j�d�s:t�dS)N�reverse)r�r�hasattr)rr=r�r�rrr�test_iteritems_strings.sz%TestSeriesMisc.test_iteritems_stringscCs*x$|j�D]\}}|||ks
t�q
WdS)N)rQr)rrr�r�rrr�test_items_datetimes5sz#TestSeriesMisc.test_items_datetimescCs>x$|j�D]\}}|||ks
t�q
Wt|j�d�s:t�dS)Nr�)rQrr�)rr=r�r�rrr�test_items_strings9sz!TestSeriesMisc.test_items_stringsc	Cs:ttjjd��}d}tjt|d��|j�WdQRXdS)Nr7z''Series' object has no attribute 'info')r�)rrIrV�randnr�r��AttributeError�info)rr4r�rrr�test_raise_on_info@sz!TestSeriesMisc.test_raise_on_infocCs�x�d	D]�}ttjd�dd�}|dkr.|j�}n|j|d�}tj|ddd�<|dksZ|dkr�tj|d�slt�tj|d�s�t�qtj|d�s�t�tj|d�st�qWdS)
NFTr7�float64)rk)�deeprr)NFT)rrI�aranger�NaN�isnanr)rr�r4�s2rrr�	test_copyFs

zTestSeriesMisc.test_copycCs�ttddd�g�}ttddd�g�}x�d	D]�}ttddd�g�}|dkrR|j�}n|j|d�}tjddd�|d<|dks�|dkr�tj||�tj||�q*tj||�tj||�q*WdS)
Nz
2012/01/01�UTC)�tzz
1999/01/01FT)r�r)NFT)rrrr?r:r;)rrKZ	expected2r�r4r�rrr�test_copy_tzaware\s

z TestSeriesMisc.test_copy_tzawarecCsjtddtjg�}tj|jdd�|jdd��|j�jd�dksBt�|jd�dksTt�|j	d�dksft�dS)NrFrZrows)Zaxisrrjr)
rrIrJr:r;Zdropna�sumrZ_get_axis_numberZ_get_axis_name)rr4rrr�test_axis_aliasws
zTestSeriesMisc.test_axis_aliascCstjtj�st�dS)N)�pydocZgetdocrrr)rrrr�test_class_axis~szTestSeriesMisc.test_class_axiscCstj|�dS)N)rIr�)rrrrr�test_numpy_unique�sz TestSeriesMisc.test_numpy_uniquec'Cstdg�}|j�}|dkst�||jdks0t�t|t�s>t�tdgdgd�}|j�}t|t�sdt�|dkspt�tddg�}d}tjt	|d��|j�WdQRXt
jd	dd
�}tjt	|d��|j�WdQRXtjt	|d��t|�j�WdQRX|dd�j�}t|t��st�t|�dd�j�}t|t��s<t�||}tjt	|d��|j�WdQRXtjt	|d��t|�j�WdQRX|dd�j�}t|t
��s�t�t|�dd�j�}t|t
��s�t�t|ddgd�}|dd�j�}||dk�st�dS)
NrFrg�?rj)rrz#can only convert an array of size 1)r�z
2016-01-01)rtr!�)r�itemrZilocr��int�floatr�r��
ValueErrorr?rrr	)rr4rZserr�Zdtir�Ztdirrr�	test_item�sD
zTestSeriesMisc.test_itemcCs�ttjjdd�dddgtddd�d�}d	d
�}|j|�}|j�}tj||�t	tjjd��}t	tj
|��}t	dtd�d
d�}tj||�t	tjjd��}tj|j
dd�|jj
dd��dS)Ni�rjr\rerfz1/1/2000)rt)�columnsrcSs||j�S)N)Zidxmax)rMrrr�f�sz-TestSeriesMisc.test_ndarray_compat.<locals>.fr7rFr�)rrk�F)�order)rrIrVr�r�apply�maxr:r;rZ	ones_likerOr�Zravelr^)rZtsdfr�rrKr4rrr�test_ndarray_compat�s
z"TestSeriesMisc.test_ndarray_compatcCsDtjtd��}|jdgdd�}|dks*t�t|jj��dks@t�dS)N�abcrT)rlr)r?rr]rmr�lenrq�lower)rr4rorrr�$test_str_accessor_updates_on_inplace�sz3TestSeriesMisc.test_str_accessor_updates_on_inplacec	s�dddg}tddddg�}x>|D]6�t�fdd	�|jD��}tjttj��|j�|�q Wttd
��}tjt	dd��|jj
d
�WdQRXdS)N�strip�rstrip�lstripz jackzjill z jesse Zfrankcsg|]}tt��|��qSr)r2rq)r-rM)�methodrrr/�sz5TestSeriesMisc.test_str_attribute.<locals>.<listcomp>r!zonly use .str accessor)r�r)rr^r:r;r2rqrOr�r�r��repeat)r�methodsr4rKr)r�r�test_str_attribute�s

z!TestSeriesMisc.test_str_attributecCsPtjtd�}|jst�tjdgtd�}x$tjdg�|gD]}|js8t�q8WdS)N)rkrF)rrk)r?rr��emptyr)rr�r�Zfull_seriesrrr�test_empty_method�s

z TestSeriesMisc.test_empty_methodc�s�tjddd�ddlm}d}|j|�IdHddl}|jdkrLtjd�}ntjt	dd	�}|�,|d
��t
|jjdd��WdQRXWdQRXdS)
NZIPythonz6.0.0)Z
minversionr)�provisionalcompleterz$import pandas as pd; s = pd.Series()z0.17.0F)Zcheck_stacklevel�ignorezs.rF)
r�ZimportorskipZIPython.core.completerr�Zrun_code�jedi�__version__r:Zassert_produces_warning�DeprecationWarningr]Z	CompleterZcompletions)r�ipr��coder��warningrrr�test_tab_complete_warning�s


z(TestSeriesMisc.test_tab_complete_warningcCs<ttd��}|jdkst�ttd�dd�}|jdks8t�dS)N�	ZInt64)rk)rrO�sizer)rr4rrr�test_integer_series_size�sz'TestSeriesMisc.test_integer_series_sizecCsHtjddgdd�}|jiks t�d|jd<|d}|jddiksDt�dS)NrrFr�)r�version)r?r�attrsr)rr4rrrr�
test_attrss

zTestSeriesMisc.test_attrsN)ArYrZr[rrr r#r5r8r<r>r9rLrTr_rdrirprxr�r��mark�parametrizer:ZmakeUnicodeIndexZmakeStringIndexZmakeCategoricalIndexrZ
makeDateIndexZmakePeriodIndexZmakeTimedeltaIndexZmakeIntIndexZ
makeUIntIndexZmakeFloatIndexrOr?rarb�zipr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�r�r�rrrrrst
 


&
	,
rc@s�eZdZejjddd�dd�dd�dd�dd�dd�d	d�d
d�g�dd��Zd
d�Zdd�Zdd�Z	dd�Z
dd�Zdd�ZdS)�TestCategoricalSeriesr�cCs|jjdddg�S)NrFrrj)rsr|)rMrrr�<lambda>szTestCategoricalSeries.<lambda>cCs|jjdddgdd�S)NrrjrFT)r{)rsr�)rMrrrr�scCs|jjdddg�S)NrFrrj)rsr)rMrrrr�scCs
|jj�S)N)rsr�)rMrrrr�scCs|jjdg�S)Nr)rsr~)rMrrrr�scCs|jjdg�S)Nr6)rsr})rMrrrr�scCs
|jj�S)N)rsr�)rMrrrr�scCs
|jj�S)N)rsr�)rMrrrr�scCs6tdddgdd�jd�}d}||�j}||ks2t�dS)NrFrrjr\)rru)rrwrr)rr�r4rKrrrr�!test_getname_categorical_accessors
z7TestCategoricalSeries.test_getname_categorical_accessorcCs�ttddtjdg��}tj|jjtddg��|jj	s@t
d��tddtjdgddgd�}|jjddgdd�}|dkszt
�tj|j
|�|jjddg�}tj|j
|�d|dd�<|jj�}tj|jjtdg��dS)NrBrCF)ryT)rl)rrrIrJr:�assert_index_equalrsryrr{rr|Zassert_categorical_equalr^r�)rr4�expro�resrrr�test_cat_accessor#s
z'TestCategoricalSeries.test_cat_accessorc
Cszddlm}tj|kst�ttd��jd�}t|j|�s<t�tdg�}tj	t
dd��|jWdQRXt|d�svt�dS)	Nr)�CategoricalAccessorr�rurFzonly use .cat accessor)r�rs)Zpandas.core.arrays.categoricalr�rrsrr]rwr�r�r�r�r�)rr�r4�invalidrrr�test_cat_accessor_api4s
z+TestCategoricalSeries.test_cat_accessor_apic	Cs8ttd��jd�}tjtdd��d|j_WdQRXdS)Nr�ruz You cannot add any new attribute)r�rB)rr]rwr�r�r�rsZxlabel)rrDrrr�#test_cat_accessor_no_new_attributesAsz9TestCategoricalSeries.test_cat_accessor_no_new_attributescCs^ttd��jd�}|jddd�}|dks,t�|jjdd�}|dksFt�t|jj�dksZt�dS)Nr�rurT)rlr)	rr]rwrmrrsr�r�ry)rr4rorrr�$test_cat_accessor_updates_on_inplaceGsz:TestCategoricalSeries.test_cat_accessor_updates_on_inplacec	0Cs8d}tjt|d��tdddg�jWdQRXtjt|d��tdddg�j�WdQRXtjt|d��tdddg�jWdQRXtjt|d��ttjd	��jWdQRXtjt|d��ttd
�g�jWdQRXttddddgdd��}t	dddg�}t
j|jj|�dddg|j_t	dddg�}t
j|jj|�td
ddd
gdd�}t
j
|jj|�|jj�slt�|jj�}|jj�s�t�|jjdd�}|dk�s�t�|jj�s�t�ttddddgdd��}t	dddg�}tjddddgtjd�}|jjdddg�}t
j|jj|�t
j|jj�|�t
j|j�|�ttddddgdddgd��}t	ddg�}tjddddgtjd�}|jj�}t
j|jj|�t
j|jj�|�t
j|j�|�d}tjt|d��|jddddg�WdQRXttddddgdd��}|jjdd��}ttddddgdddgdd��}t
j
||�dS)Nz3Can only use \.cat accessor with a 'category' dtype)r�rFrrjrBrCrDg@Z20130101T)r{rZint8)rk)rl)ryz1'Series' object has no attribute 'set_categories'r6cSs|j�S)N)�upper)rMrrrr��szDTestCategoricalSeries.test_categorical_delegations.<locals>.<lambda>r\rerf)ryr{)r�r�r�rrsrIr�rrrr:r�ryr;rzr{rr�r��arrayZobject_r|Zassert_numpy_array_equalr^Z	__array__r�r)	rr�r4Zexp_categoriesZ	exp_codesroZ
exp_valuesrrKrrr�test_categorical_delegationsOs^

z2TestCategoricalSeries.test_categorical_delegationscs�ddlm}ttdddd��}|jd�}ttdddd	��}|jd�}ttd
d��}|jd�}dd
�}d|t�||fd|t�||fd|t	�||fg}	t
|j|�s�t�dd)ifdd*ifdd+ifdd,ifdd-ifdd.ifg}
dd�|
D��ddg��xV|	D�]L\}�}}
���fdd�t
|j�D�}dd�|D�}x,|
D]$}|dt
|j�k�r2|j|��q2Wxn|D]f\}}}tj��@|dk�r�tjd t�t|
j|�||�}t|j|�||�}WdQRXtj||��q`Wx4�D],}|d/k�r�q�t|
j|�}t|j|�}�q�Wt
|t��rtj||�n&t
|t��r4tj||�ntj||��q�Wtd#d$d%g�jd�}d&}tjt|d'��|jWdQRXt|d(��s�t�dS)0Nr)�
Propertiesz1/1/2015r!ZMET)rtr�ru�D)�freqrtz1 daysz10 dayscSs|jS)N)Z_datetimelike_ops)rMrrrr��szLTestCategoricalSeries.test_dt_accessor_api_for_categorical.<locals>.<lambda>ZDatetimeZPeriodr	�strftime�%Y-%m-%dZ
tz_convert�EST�round�floor�ceilZasfreqcSsg|]}|d�qS)rr)r-r�rrrr/�szNTestCategoricalSeries.test_dt_accessor_api_for_categorical.<locals>.<listcomp>Ztz_localize�
componentscs2g|]*}|jd�p(|�kp(|�kp(|�ks|�qS)r�)r�)r-r�)�
_ignore_names�_special_func_names�
attr_namesrrr/�s

cSsg|]}|fif�qSrr)r-r�rrrr/�sZ	to_periodr��week�
weekofyearrFrrjz+Can only use .dt accessor with datetimelike)r�rq)r)r)r�)r�)r�)r�)r	r
)Zpandas.core.indexes.accessorsr�rrrwr
rrrr
r�rrrrvr"�warnings�catch_warnings�simplefilter�UserWarningr2r:Zassert_equalrZassert_frame_equalr;r�r�r�r�r�)rr�Zs_drZc_drZs_prZc_prZs_tdrZc_tdrZget_opsZ	test_dataZspecial_func_defsrr4rDZ
func_namesZ	func_defsZf_def�func�args�kwargsr�r��attrr�r�r)rrrr�$test_dt_accessor_api_for_categorical�sb


	




z:TestCategoricalSeries.test_dt_accessor_api_for_categoricalN)
rYrZr[r�r�r�r�r�r�r�r�r�rrrrrr�s 

Er�)!�collectionsrr�rZnumpyrIr�Zpandas.util._test_decoratorsrZpandasr?rrrrrr	r
rrr
rZpandas._testingZ_testingr:Zpandas.core.arraysrZpandas.io.formats.printing�io�formatsrrr�rrrr�<module>s4
s