@@ -161,25 +161,64 @@ def test_construction(self):
161
161
self .assertTrue (isnull (Timedelta ('nat' )))
162
162
163
163
# offset
164
- self .assertEqual (to_timedelta (pd .offsets .Hour (2 )),Timedelta ('0 days, 02:00:00' ))
165
- self .assertEqual (Timedelta (pd .offsets .Hour (2 )),Timedelta ('0 days, 02:00:00' ))
166
- self .assertEqual (Timedelta (pd .offsets .Second (2 )),Timedelta ('0 days, 00:00:02' ))
164
+ self .assertEqual (to_timedelta (pd .offsets .Hour (2 )),
165
+ Timedelta ('0 days, 02:00:00' ))
166
+ self .assertEqual (Timedelta (pd .offsets .Hour (2 )),
167
+ Timedelta ('0 days, 02:00:00' ))
168
+ self .assertEqual (Timedelta (pd .offsets .Second (2 )),
169
+ Timedelta ('0 days, 00:00:02' ))
170
+
171
+ # unicode
172
+ # GH 11995
173
+ expected = Timedelta ('1H' )
174
+ result = pd .Timedelta (u'1H' )
175
+ self .assertEqual (result , expected )
176
+ self .assertEqual (to_timedelta (pd .offsets .Hour (2 )),
177
+ Timedelta (u'0 days, 02:00:00' ))
178
+
179
+ self .assertRaises (ValueError , lambda : Timedelta (u'foo bar' ))
167
180
168
181
def test_round (self ):
169
182
170
183
t1 = Timedelta ('1 days 02:34:56.789123456' )
171
184
t2 = Timedelta ('-1 days 02:34:56.789123456' )
172
185
173
186
for (freq , s1 , s2 ) in [('N' , t1 , t2 ),
174
- ('U' , Timedelta ('1 days 02:34:56.789123000' ),Timedelta ('-1 days 02:34:56.789123000' )),
175
- ('L' , Timedelta ('1 days 02:34:56.789000000' ),Timedelta ('-1 days 02:34:56.789000000' )),
176
- ('S' , Timedelta ('1 days 02:34:56' ),Timedelta ('-1 days 02:34:56' )),
177
- ('2S' , Timedelta ('1 days 02:34:56' ),Timedelta ('-1 days 02:34:56' )),
178
- ('5S' , Timedelta ('1 days 02:34:55' ),Timedelta ('-1 days 02:34:55' )),
179
- ('T' , Timedelta ('1 days 02:34:00' ),Timedelta ('-1 days 02:34:00' )),
180
- ('12T' , Timedelta ('1 days 02:24:00' ),Timedelta ('-1 days 02:24:00' )),
181
- ('H' , Timedelta ('1 days 02:00:00' ),Timedelta ('-1 days 02:00:00' )),
182
- ('d' , Timedelta ('1 days' ),Timedelta ('-1 days' ))]:
187
+ ('U' ,
188
+ Timedelta ('1 days 02:34:56.789123000' ),
189
+ Timedelta ('-1 days 02:34:56.789123000' )
190
+ ),
191
+ ('L' ,
192
+ Timedelta ('1 days 02:34:56.789000000' ),
193
+ Timedelta ('-1 days 02:34:56.789000000' )
194
+ ),
195
+ ('S' ,
196
+ Timedelta ('1 days 02:34:56' ),
197
+ Timedelta ('-1 days 02:34:56' )
198
+ ),
199
+ ('2S' ,
200
+ Timedelta ('1 days 02:34:56' ),
201
+ Timedelta ('-1 days 02:34:56' )
202
+ ),
203
+ ('5S' ,
204
+ Timedelta ('1 days 02:34:55' ),
205
+ Timedelta ('-1 days 02:34:55' )
206
+ ),
207
+ ('T' ,
208
+ Timedelta ('1 days 02:34:00' ),
209
+ Timedelta ('-1 days 02:34:00' )
210
+ ),
211
+ ('12T' ,
212
+ Timedelta ('1 days 02:24:00' ),
213
+ Timedelta ('-1 days 02:24:00' )),
214
+ ('H' ,
215
+ Timedelta ('1 days 02:00:00' ),
216
+ Timedelta ('-1 days 02:00:00' )
217
+ ),
218
+ ('d' ,
219
+ Timedelta ('1 days' ),
220
+ Timedelta ('-1 days' )
221
+ )]:
183
222
r1 = t1 .round (freq )
184
223
self .assertEqual (r1 , s1 )
185
224
r2 = t2 .round (freq )
@@ -1104,20 +1143,32 @@ def test_components(self):
1104
1143
self .assertTrue (result .iloc [1 ].isnull ().all ())
1105
1144
1106
1145
def test_constructor (self ):
1107
- expected = TimedeltaIndex (['1 days' ,'1 days 00:00:05' ,
1108
- '2 days' ,'2 days 00:00:02' ,'0 days 00:00:03' ])
1109
- result = TimedeltaIndex (['1 days' ,'1 days, 00:00:05' ,
1110
- np .timedelta64 (2 ,'D' ),
1111
- timedelta (days = 2 ,seconds = 2 ),
1146
+ expected = TimedeltaIndex (['1 days' , '1 days 00:00:05' ,
1147
+ '2 days' , '2 days 00:00:02' ,
1148
+ '0 days 00:00:03' ])
1149
+ result = TimedeltaIndex (['1 days' , '1 days, 00:00:05' ,
1150
+ np .timedelta64 (2 , 'D' ),
1151
+ timedelta (days = 2 , seconds = 2 ),
1152
+ pd .offsets .Second (3 )])
1153
+ tm .assert_index_equal (result , expected )
1154
+
1155
+ # unicode
1156
+ result = TimedeltaIndex ([u'1 days' , '1 days, 00:00:05' ,
1157
+ np .timedelta64 (2 , 'D' ),
1158
+ timedelta (days = 2 , seconds = 2 ),
1112
1159
pd .offsets .Second (3 )])
1113
- tm .assert_index_equal (result ,expected )
1114
1160
1115
- expected = TimedeltaIndex (['0 days 00:00:00' , '0 days 00:00:01' , '0 days 00:00:02' ])
1161
+ expected = TimedeltaIndex (['0 days 00:00:00' , '0 days 00:00:01' ,
1162
+ '0 days 00:00:02' ])
1116
1163
tm .assert_index_equal (TimedeltaIndex (range (3 ), unit = 's' ), expected )
1117
- expected = TimedeltaIndex (['0 days 00:00:00' , '0 days 00:00:05' , '0 days 00:00:09' ])
1164
+ expected = TimedeltaIndex (['0 days 00:00:00' , '0 days 00:00:05' ,
1165
+ '0 days 00:00:09' ])
1118
1166
tm .assert_index_equal (TimedeltaIndex ([0 , 5 , 9 ], unit = 's' ), expected )
1119
- expected = TimedeltaIndex (['0 days 00:00:00.400' , '0 days 00:00:00.450' , '0 days 00:00:01.200' ])
1120
- tm .assert_index_equal (TimedeltaIndex ([400 , 450 , 1200 ], unit = 'ms' ), expected )
1167
+ expected = TimedeltaIndex (['0 days 00:00:00.400' ,
1168
+ '0 days 00:00:00.450' ,
1169
+ '0 days 00:00:01.200' ])
1170
+ tm .assert_index_equal (TimedeltaIndex ([400 , 450 , 1200 ], unit = 'ms' ),
1171
+ expected )
1121
1172
1122
1173
def test_constructor_coverage (self ):
1123
1174
rng = timedelta_range ('1 days' , periods = 10.5 )
0 commit comments