@@ -52,7 +52,7 @@ def get_expected(s, name):
52
52
result = result .astype ('int64' )
53
53
elif not com .is_list_like (result ):
54
54
return result
55
- return Series (result , index = s .index )
55
+ return Series (result , index = s .index , name = s . name )
56
56
57
57
def compare (s , name ):
58
58
a = getattr (s .dt , prop )
@@ -63,10 +63,12 @@ def compare(s, name):
63
63
tm .assert_series_equal (a , b )
64
64
65
65
# datetimeindex
66
- for s in [Series (date_range ('20130101' , periods = 5 )),
67
- Series (date_range ('20130101' , periods = 5 , freq = 's' )),
68
- Series (date_range ('20130101 00:00:00' , periods = 5 , freq = 'ms' ))
69
- ]:
66
+ cases = [Series (date_range ('20130101' , periods = 5 ), name = 'xxx' ),
67
+ Series (date_range ('20130101' , periods = 5 , freq = 's' ),
68
+ name = 'xxx' ),
69
+ Series (date_range ('20130101 00:00:00' , periods = 5 , freq = 'ms' ),
70
+ name = 'xxx' )]
71
+ for s in cases :
70
72
for prop in ok_for_dt :
71
73
# we test freq below
72
74
if prop != 'freq' :
@@ -80,9 +82,8 @@ def compare(s, name):
80
82
self .assertTrue (result .dtype == object )
81
83
82
84
result = s .dt .tz_localize ('US/Eastern' )
83
- expected = Series (
84
- DatetimeIndex (s .values ).tz_localize ('US/Eastern' ),
85
- index = s .index )
85
+ exp_values = DatetimeIndex (s .values ).tz_localize ('US/Eastern' )
86
+ expected = Series (exp_values , index = s .index , name = 'xxx' )
86
87
tm .assert_series_equal (result , expected )
87
88
88
89
tz_result = result .dt .tz
@@ -93,48 +94,50 @@ def compare(s, name):
93
94
94
95
# let's localize, then convert
95
96
result = s .dt .tz_localize ('UTC' ).dt .tz_convert ('US/Eastern' )
96
- expected = Series (
97
- DatetimeIndex ( s . values ). tz_localize ( 'UTC' ). tz_convert (
98
- 'US/Eastern' ) , index = s .index )
97
+ exp_values = ( DatetimeIndex ( s . values ). tz_localize ( 'UTC' )
98
+ . tz_convert ( 'US/Eastern' ))
99
+ expected = Series ( exp_values , index = s .index , name = 'xxx' )
99
100
tm .assert_series_equal (result , expected )
100
101
101
102
# round
102
- s = Series (pd .to_datetime (
103
- [ '2012-01-01 13:00:00' , '2012-01-01 12:01:00' ,
104
- '2012-01-01 08:00:00' ]))
103
+ s = Series (pd .to_datetime ([ '2012-01-01 13:00:00' ,
104
+ '2012-01-01 12:01:00' ,
105
+ '2012-01-01 08:00:00' ]), name = 'xxx' )
105
106
result = s .dt .round ('D' )
106
107
expected = Series (pd .to_datetime (['2012-01-02' , '2012-01-02' ,
107
- '2012-01-01' ]))
108
+ '2012-01-01' ]), name = 'xxx' )
108
109
tm .assert_series_equal (result , expected )
109
110
110
111
# round with tz
111
- result = s .dt .tz_localize ('UTC' ).dt .tz_convert ('US/Eastern' ).dt .round (
112
- 'D' )
113
- expected = Series (pd .to_datetime (['2012-01-01' , '2012-01-01' ,
114
- '2012-01-01' ]).tz_localize (
115
- 'US/Eastern' ))
112
+ result = (s .dt .tz_localize ('UTC' )
113
+ .dt .tz_convert ('US/Eastern' )
114
+ .dt .round ('D' ))
115
+ exp_values = pd .to_datetime (['2012-01-01' , '2012-01-01' ,
116
+ '2012-01-01' ]).tz_localize ('US/Eastern' )
117
+ expected = Series (exp_values , name = 'xxx' )
116
118
tm .assert_series_equal (result , expected )
117
119
118
120
# floor
119
- s = Series (pd .to_datetime (
120
- [ '2012-01-01 13:00:00' , '2012-01-01 12:01:00' ,
121
- '2012-01-01 08:00:00' ]))
121
+ s = Series (pd .to_datetime ([ '2012-01-01 13:00:00' ,
122
+ '2012-01-01 12:01:00' ,
123
+ '2012-01-01 08:00:00' ]), name = 'xxx' )
122
124
result = s .dt .floor ('D' )
123
125
expected = Series (pd .to_datetime (['2012-01-01' , '2012-01-01' ,
124
- '2012-01-01' ]))
126
+ '2012-01-01' ]), name = 'xxx' )
125
127
tm .assert_series_equal (result , expected )
126
128
127
129
# ceil
128
- s = Series (pd .to_datetime (
129
- [ '2012-01-01 13:00:00' , '2012-01-01 12:01:00' ,
130
- '2012-01-01 08:00:00' ]))
130
+ s = Series (pd .to_datetime ([ '2012-01-01 13:00:00' ,
131
+ '2012-01-01 12:01:00' ,
132
+ '2012-01-01 08:00:00' ]), name = 'xxx' )
131
133
result = s .dt .ceil ('D' )
132
134
expected = Series (pd .to_datetime (['2012-01-02' , '2012-01-02' ,
133
- '2012-01-02' ]))
135
+ '2012-01-02' ]), name = 'xxx' )
134
136
tm .assert_series_equal (result , expected )
135
137
136
138
# datetimeindex with tz
137
- s = Series (date_range ('20130101' , periods = 5 , tz = 'US/Eastern' ))
139
+ s = Series (date_range ('20130101' , periods = 5 , tz = 'US/Eastern' ),
140
+ name = 'xxx' )
138
141
for prop in ok_for_dt :
139
142
140
143
# we test freq below
@@ -149,7 +152,8 @@ def compare(s, name):
149
152
self .assertTrue (result .dtype == object )
150
153
151
154
result = s .dt .tz_convert ('CET' )
152
- expected = Series (s ._values .tz_convert ('CET' ), index = s .index )
155
+ expected = Series (s ._values .tz_convert ('CET' ),
156
+ index = s .index , name = 'xxx' )
153
157
tm .assert_series_equal (result , expected )
154
158
155
159
tz_result = result .dt .tz
@@ -159,11 +163,13 @@ def compare(s, name):
159
163
freq = 'infer' ).freq )
160
164
161
165
# timedeltaindex
162
- for s in [Series (
163
- timedelta_range ('1 day' , periods = 5 ), index = list ('abcde' )),
164
- Series (timedelta_range ('1 day 01:23:45' , periods = 5 , freq = 's' )),
165
- Series (timedelta_range ('2 days 01:23:45.012345' , periods = 5 ,
166
- freq = 'ms' ))]:
166
+ cases = [Series (timedelta_range ('1 day' , periods = 5 ),
167
+ index = list ('abcde' ), name = 'xxx' ),
168
+ Series (timedelta_range ('1 day 01:23:45' , periods = 5 ,
169
+ freq = 's' ), name = 'xxx' ),
170
+ Series (timedelta_range ('2 days 01:23:45.012345' , periods = 5 ,
171
+ freq = 'ms' ), name = 'xxx' )]
172
+ for s in cases :
167
173
for prop in ok_for_td :
168
174
# we test freq below
169
175
if prop != 'freq' :
@@ -190,21 +196,27 @@ def compare(s, name):
190
196
191
197
# both
192
198
index = date_range ('20130101' , periods = 3 , freq = 'D' )
193
- s = Series (date_range ('20140204' , periods = 3 , freq = 's' ), index = index )
194
- tm .assert_series_equal (s .dt .year , Series (
195
- np .array (
196
- [2014 , 2014 , 2014 ], dtype = 'int64' ), index = index ))
197
- tm .assert_series_equal (s .dt .month , Series (
198
- np .array (
199
- [2 , 2 , 2 ], dtype = 'int64' ), index = index ))
200
- tm .assert_series_equal (s .dt .second , Series (
201
- np .array (
202
- [0 , 1 , 2 ], dtype = 'int64' ), index = index ))
203
- tm .assert_series_equal (s .dt .normalize (), pd .Series (
204
- [s [0 ]] * 3 , index = index ))
199
+ s = Series (date_range ('20140204' , periods = 3 , freq = 's' ),
200
+ index = index , name = 'xxx' )
201
+ exp = Series (np .array ([2014 , 2014 , 2014 ], dtype = 'int64' ),
202
+ index = index , name = 'xxx' )
203
+ tm .assert_series_equal (s .dt .year , exp )
204
+
205
+ exp = Series (np .array ([2 , 2 , 2 ], dtype = 'int64' ),
206
+ index = index , name = 'xxx' )
207
+ tm .assert_series_equal (s .dt .month , exp )
208
+
209
+ exp = Series (np .array ([0 , 1 , 2 ], dtype = 'int64' ),
210
+ index = index , name = 'xxx' )
211
+ tm .assert_series_equal (s .dt .second , exp )
212
+
213
+ exp = pd .Series ([s [0 ]] * 3 , index = index , name = 'xxx' )
214
+ tm .assert_series_equal (s .dt .normalize (), exp )
205
215
206
216
# periodindex
207
- for s in [Series (period_range ('20130101' , periods = 5 , freq = 'D' ))]:
217
+ cases = [Series (period_range ('20130101' , periods = 5 , freq = 'D' ),
218
+ name = 'xxx' )]
219
+ for s in cases :
208
220
for prop in ok_for_period :
209
221
# we test freq below
210
222
if prop != 'freq' :
@@ -221,30 +233,32 @@ def get_dir(s):
221
233
results = [r for r in s .dt .__dir__ () if not r .startswith ('_' )]
222
234
return list (sorted (set (results )))
223
235
224
- s = Series (date_range ('20130101' , periods = 5 , freq = 'D' ))
236
+ s = Series (date_range ('20130101' , periods = 5 , freq = 'D' ), name = 'xxx' )
225
237
results = get_dir (s )
226
238
tm .assert_almost_equal (
227
239
results , list (sorted (set (ok_for_dt + ok_for_dt_methods ))))
228
240
229
- s = Series (period_range ('20130101' , periods = 5 , freq = 'D' ).asobject )
241
+ s = Series (period_range ('20130101' , periods = 5 ,
242
+ freq = 'D' , name = 'xxx' ).asobject )
230
243
results = get_dir (s )
231
244
tm .assert_almost_equal (
232
245
results , list (sorted (set (ok_for_period + ok_for_period_methods ))))
233
246
234
247
# 11295
235
248
# ambiguous time error on the conversions
236
- s = Series (pd .date_range ('2015-01-01' , '2016-01-01' , freq = 'T' ))
249
+ s = Series (pd .date_range ('2015-01-01' , '2016-01-01' ,
250
+ freq = 'T' ), name = 'xxx' )
237
251
s = s .dt .tz_localize ('UTC' ).dt .tz_convert ('America/Chicago' )
238
252
results = get_dir (s )
239
253
tm .assert_almost_equal (
240
254
results , list (sorted (set (ok_for_dt + ok_for_dt_methods ))))
241
- expected = Series ( pd .date_range ('2015-01-01' , '2016-01-01' , freq = 'T' ,
242
- tz = 'UTC' ).tz_convert (
243
- 'America/Chicago' ) )
255
+ exp_values = pd .date_range ('2015-01-01' , '2016-01-01' , freq = 'T' ,
256
+ tz = 'UTC' ).tz_convert ('America/Chicago' )
257
+ expected = Series ( exp_values , name = 'xxx' )
244
258
tm .assert_series_equal (s , expected )
245
259
246
260
# no setting allowed
247
- s = Series (date_range ('20130101' , periods = 5 , freq = 'D' ))
261
+ s = Series (date_range ('20130101' , periods = 5 , freq = 'D' ), name = 'xxx' )
248
262
with tm .assertRaisesRegexp (ValueError , "modifications" ):
249
263
s .dt .hour = 5
250
264
0 commit comments