1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
U
­ý°d]Aã@sbdZddlmZddlZddlZddlmZmZmZm    Z    m
Z
m Z m Z ddl mZGdd„dƒZdS)z& test partial slicing on Series/Frame é)ÚdatetimeN)Ú    DataFrameÚ DatetimeIndexÚIndexÚSeriesÚ    TimedeltaÚ    TimestampÚ
date_rangec    @seZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Ze    j
  d ddddddg¡dd„ƒZ dd„Z dd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Zd,d-„Ze    j
  d.d/ed/ƒed/ƒ ¡g¡e    j
  d0d1ed1ƒed1ƒ ¡g¡d2d3„ƒƒZd4d5„Zd6S)7Ú TestSlicingcCs^ttj dd¡tdddd}|jd}|j|jdks<t‚|j    d}|j|jdksZt‚dS)Né
éz1/1/2000©Úperiods©Úindexz1/3/2000é)
rÚnpÚrandomZrandnr    ÚlocÚnamerÚAssertionErrorÚT©ÚselfÚdfÚresult©rújd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/indexes/datetimes/test_partial_slicing.pyÚ'test_string_index_series_name_converteds
 
 
z3TestSlicing.test_string_index_series_name_convertedcCs6d}t|dddd}tt d¡|d}|dd…dS)Nz
2013-01-07Z1dr z
US/Eastern)ÚstartÚfreqrÚtzrz 2013-01-14 23:44:34.437768-05:00)r    rrÚarange)rrÚidxrrrrÚtest_stringified_slice_with_tzsz*TestSlicing.test_stringified_slice_with_tzc    CsÌtdddd}ttdƒ|d}ttdƒ|d|d|dgd}d    }|j|}|jdd…}t ||¡|jddd
…j|}|jddd
…dd
…}t ||¡|j|}|jddd…}t ||¡dS) Nú2015-5-13 23:59:00Úminé©rr rrérrz 2015-5-14 00éÿÿÿÿ)r    rÚrangerÚilocÚtmÚassert_series_equal)    rÚdtiÚserÚser2ÚkeyrÚexpectedÚresult2Ú    expected2rrrÚ.test_return_type_doesnt_depend_on_monotonicity&s"
 
z:TestSlicing.test_return_type_doesnt_depend_on_monotonicitycCs–tdddd}ttdƒ|d}ttdƒ|d|d|dgd}d    }|j|}|dksZt‚|jddd
…j|}|dks|t‚|j|}|dks’t‚dS) Nr%r&r'r(rr)rrz2015-5-14 00:00:00r*)r    rr+rrr,)rr/r0r1r2rr4rrrÚ:test_return_type_doesnt_depend_on_monotonicity_higher_reso@s"
 
zFTestSlicing.test_return_type_doesnt_depend_on_monotonicity_higher_resoc    Csêtttdƒƒƒ}dddddg}t|ƒ}||d<tttdƒƒ|dœƒ}t ||¡td    d
d }td d dd
gi|ddd…d}td d i|dd…ddd…d}|jd}t ||¡|jddd…jd}|jddd…}t ||¡dS)Néz
2018-01-02z
2017-02-10z
2016-03-10z
2015-03-15z
2014-03-16Údate)rr9z20170101 01:00:00r'r ÚAr)rr*rz
2017-01-03)    rÚlistr+rr-Úassert_frame_equalr    rr,)    rrZ    date_listZ
date_indexr3r/rr4r5rrrÚtest_monotone_DTI_indexing_bugWs&û   "
 z*TestSlicing.test_monotone_DTI_indexing_bugcCs”tdtdddƒdd}tt t|ƒ¡|d}|d}||jjdk}t     ||¡t
tj   t|ƒd¡|d}|j d}||jjdk}t ||¡dS)    NÚBéÕr)éô©r rrrZ2005r8)r    rrrr"ÚlenrÚyearr-r.rrÚrandrr<)rr/Úsrr3rrrrÚtest_slice_yearws 
zTestSlicing.test_slice_yearÚ partial_dtimeZ2019Z2019Q4zDec 2019z
2019-12-31z 2019-12-31 23z2019-12-31 23:59cCsDtdddd}ttdƒ|d}||}|jdd…}t ||¡dS)Nz2019-12-31 23:59:55.999999999r rE©rr rr8)r    rr+r,r-r.)rrGr/r0rr3rrrÚ#test_slice_end_of_period_resolution„s
z/TestSlicing.test_slice_end_of_period_resolutioncCsttdtdddƒdd}tt t|ƒ¡|d}t|dƒd    ks@t‚ttj     t|ƒd
¡|d}t|j
d ƒd    kspt‚dS) NÚDiÐér)r@rArZ2001Q1éZr8Z1Q01) r    rrrr"rBrrrrDr©rr/rErrrrÚtest_slice_quarter˜s
zTestSlicing.test_slice_quartercCsˆtdtdddƒdd}tt t|ƒ¡|d}t|dƒdks@t‚ttj     t|ƒd    ¡|d}t|j
dƒdkspt‚t   |d|d
¡dS) NrJr?r)r@rArz2005-11ér8z11-2005) r    rrrr"rBrrrrDrr-r.rMrrrÚtest_slice_month¡s zTestSlicing.test_slice_monthc    CsØtdtdddƒdd}tt t|ƒ¡|d}|dd…}|d    d
…}t ||¡|dd…}|d    d…}t ||¡|dd…}|dd
…}t ||¡|d }||jd ks²t    ‚t
j t d d|dW5QRXdS)NrJr?r)r@rArz2005-05z2006-02Z20050501Z20060228ú2005-1-1rz^'2004-12-31'$©Úmatchz
2004-12-31© r    rrrr"rBr-r.r,rÚpytestÚraisesÚKeyError)rÚrngrErr3rrrÚtest_partial_slice«s         zTestSlicing.test_partial_slicec    Csptdtdddƒdd}tt t|ƒ¡|d}|d}t ||jdd    …¡t    j
t d
d |d W5QRXdS) NÚHr?r)ér@rArz    2005-1-31éz^'2004-12-31 00'$rRz 2004-12-31 00) r    rrrr"rBr-r.r,rUrVrW©rrXrErrrrÚtest_partial_slice_dailyÁs z$TestSlicing.test_partial_slice_dailyc    Csªtdtddddddƒdd}tt t|ƒ¡|d}|d    }t ||jdd
…¡|d }t ||jdd …¡|d |jdks„t    ‚t
j t dd|dW5QRXdS)Nrr?r)érr@rArrQéðz 2005-1-1 20é<z2005-1-1 20:00z^'2004-12-31 00:15'$rRz2004-12-31 00:15rTr]rrrÚtest_partial_slice_hourlyËsz%TestSlicing.test_partial_slice_hourlyc    Cs®tdtddddddƒdd}tt t|ƒ¡|d    }|d
}t ||jdd …¡|d }t ||jdd …¡|t    d ƒ|jdksˆt
‚t j t dd|dW5QRXdS)NÚSr?r)éé;rr@rArz2005-1-1 23:59rarQz2005-1-1 23:59:00z^'2004-12-31 00:00:00'$rRz2004-12-31 00:00:00)r    rrrr"rBr-r.r,rrrUrVrWr]rrrÚtest_partial_slice_minutelyÙsz'TestSlicing.test_partial_slice_minutelyc
CsØttddddddddddd    }tt d¡|ƒ}t |d
|jdd …¡t |d |jdd …¡t |d |jd d…¡t |d|jd d…¡|tdƒ|jdks²t    ‚t
j t dd|dW5QRXdS)Nr?r)rrei6B)Ú microsecondr_ZUS)rrr z2005-1-1 00:00r z2005-1-1 00:00:59z2005-1-1 00:01z2005-1-1 00:01:00z2005-1-1 00:00:59.999990z2005-1-1 00:00:00rR) r    rrrr"r-r.r,rrrUrVrW)rrXrErrrÚ#test_partial_slice_second_precisionçsýz/TestSlicing.test_partial_slice_second_precisionc CsÄddddddg}ddd    d
d d g}t|d d…d ƒD]Š\}}td|ƒ}tddddddƒ}t|||||gƒ}dd dg}td|i|tjd}    |    jj|ksžt    ‚t
||ƒD]l\}
} |
  ||¡} |    d| } t | tjƒsÚt    ‚| | ksæt    ‚d| ›d}t jt|d|    | W5QRXq¨|d|…D]‚}dtddƒgdtddƒgfD]^\}}||  |¡} |    d| } |    d|} t | | ¡t jt| d|    | W5QRXqBq"||dd…D]n}|d  |¡} |    d| } t | tjƒsæt    ‚| d ksôt    ‚d| ›d}t jt|d|    | W5QRXq¶tt
||ƒƒ|dd…D]|\}}|dtd|ƒ}|  |¡} d| ›d}t jt|d|    d| W5QRXt jt|d|    | W5QRXq@q2dS)Nz%Yz%Y-%mz%Y-%m-%dz %Y-%m-%d %Hz%Y-%m-%d %H:%Mz%Y-%m-%d %H:%M:%SrCÚmonthÚdayÚhourÚminuteÚsecondrz1 iÜr)rr'Úa)Zdtypez^'z'$rR)Ú    enumeraterrrrrÚint64rÚ
resolutionrÚzipÚstrftimeÚ
isinstancerUrVrWÚslicer-r.r;)rÚformatsZ resolutionsZrnumrqÚunitZmiddaterÚvaluesrÚ    timestampr3Z    ts_stringrÚmsgÚfmtÚelementZthesliceÚresÚtsrrrÚtest_partial_slicing_dataframeùs^    ú 
   $     "
 z*TestSlicing.test_partial_slicing_dataframecCsÜtddddgddddgdddd    gd
œtd d    d d d}|jddgdd}tdggtdgdddgd}|jd}t ||¡|jtd ddddf}|jd}t ||¡|jd}|j    dd… 
ddg¡}t ||¡dS)NÚACCT1ZACCT2ÚABCZMNPZXYZr)rr'r )ÚACCOUNTÚTICKERÚvalú2013-06-19 09:30:00Z5TrHrr‚rƒT)Úappend)rr„©rÚcolumns)r…r€)r!)r…r€r)z
2013-06-19r€r) rr    Z    set_indexrrr-r<rr.r,Z    droplevel)rrZdf_multir3rrrrÚ$test_partial_slicing_with_multiindexGs.
 
 
ý ú ÿ
 ÿ
 
z0TestSlicing.test_partial_slicing_with_multiindexcCs¢ttj dd¡tdddd ¡}|dd… ¡}|d}|tdƒ}t     ||¡|tdƒ}|d}t     ||¡t|ƒ}| 
d¡}|j tdƒ}t  ||¡dS)Nièz2000-1-1r rr*z2000-1-4) rrrrDr    ÚstackÚcopyrr-r.Úxsrr<)rr0Ús2r3rZdf2rrrÚ+test_partial_slicing_with_multiindex_serieses
ÿ
 
z7TestSlicing.test_partial_slicing_with_multiindex_seriesc    CsÎtt d¡tdddƒ}|dddg}tdƒ}tjtdd    |dd…W5QRXtjtd
d    ||d…W5QRXtjtdd    |jdd…W5QRXtjtd
d    |j|d…W5QRXdS) Nr z
2014-01-01r r'r8r z
2014-01-10z,Value based partial slicing on non-monotonicrRz"Timestamp\('2014-01-10 00:00:00'\))    rrr"r    rrUrVrWr)rr0Z nonmonotonicryrrrÚ(test_partial_slice_requires_monotonicityzs"ÿÿz4TestSlicing.test_partial_slice_requires_monotonicitycCsTtdgtddƒd}|jtdddƒd…}t ||¡|jdd…}t ||¡dS)NÚ1z2016-10-01T00:00:00z2016-10-01T23:59:59)rˆriàr r))rr    rrr-r<rrrrÚtest_loc_datetime_length_onesþ z(TestSlicing.test_loc_datetime_length_onerz2018-12-02 21:50:00+00:00Úendz2018-12-02 21:52:00+00:00c    CsÂtdddd}td|dgd}|||…}|jdd…dd…f}t ||¡t|ƒ}t|ƒ}tjtd    d
|||dd …d …W5QRXtjtd d
|     d¡}|||…W5QRXdS)Nz2018-12-02 14:50:00-07:00Z1min)rr’r r)r:r‡rr'zBoth dates mustrRéüÿÿÿz1:00zThe index must be timezone)
r    rr,r-r<ÚstrrUrVÚ
ValueErrorZ tz_localize)rrr’r#rrr3rrrÚ,test_getitem_with_datestring_with_UTC_offsetœs ý  "
z8TestSlicing.test_getitem_with_datestring_with_UTC_offsetcCsTtdtdƒitddddd}ttdƒtdddddd}|jd    }t ||¡dS)
Nr:r\Ú2000ÚMrHré )rr)r—r:)rr+r    rrr-r.)rrr3rrrrÚtest_slice_reduce_to_seriesÂs ÿ
z'TestSlicing.test_slice_reduce_to_seriesN)Ú__name__Ú
__module__Ú __qualname__rr$r6r7r=rFrUÚmarkZ parametrizerIrNrPrYr^rbrfrhrr‰rŽrr‘rZ to_pydatetimer–ršrrrrr
sZ
  úþ
        
 
N 
ýþ
ýþ r
)Ú__doc__rÚnumpyrrUZpandasrrrrrrr    Zpandas._testingZ_testingr-r
rrrrÚ<module>s  $