@@ -1153,22 +1153,33 @@ def test_resample_loffset(self):
1153
1153
rng = date_range ('1/1/2000 00:00:00' , '1/1/2000 00:13:00' , freq = 'min' )
1154
1154
s = Series (np .random .randn (14 ), index = rng )
1155
1155
1156
- result = s .resample ('5min' , closed = 'right' , label = 'right' ,
1157
- loffset = timedelta (minutes = 1 )).mean ()
1158
1156
idx = date_range ('1/1/2000' , periods = 4 , freq = '5min' )
1159
- expected = Series ([s [0 ], s [1 :6 ].mean (), s [6 :11 ].mean (), s [11 :].mean ()],
1160
- index = idx + timedelta (minutes = 1 ))
1161
- assert_series_equal (result , expected )
1162
-
1163
- expected = s .resample (
1157
+ expected_downsample = Series ([s [0 ], s [1 :6 ].mean (),
1158
+ s [6 :11 ].mean (), s [11 :].mean ()],
1159
+ index = idx + timedelta (minutes = 1 ))
1160
+ # GH 20744
1161
+ expected_upsample = Series ([s [0 ], s [5 ], s [10 ], s [- 1 ]],
1162
+ index = idx + timedelta (minutes = 1 ))
1163
+
1164
+ # loffset should work for upsample and downsample
1165
+ result_downsample = s .resample ('5min' , closed = 'right' , label = 'right' ,
1166
+ loffset = timedelta (minutes = 1 )).mean ()
1167
+ result_upsample = s .resample ('5min' , closed = 'right' , label = 'right' ,
1168
+ loffset = timedelta (minutes = 1 )).ffill ()
1169
+
1170
+ assert_series_equal (result_downsample , expected_downsample )
1171
+ assert_series_equal (result_upsample , expected_upsample )
1172
+
1173
+ # loffset should allow various types
1174
+ result = s .resample (
1164
1175
'5min' , closed = 'right' , label = 'right' ,
1165
1176
loffset = '1min' ).mean ()
1166
- assert_series_equal (result , expected )
1177
+ assert_series_equal (result , expected_downsample )
1167
1178
1168
- expected = s .resample (
1179
+ result = s .resample (
1169
1180
'5min' , closed = 'right' , label = 'right' ,
1170
1181
loffset = Minute (1 )).mean ()
1171
- assert_series_equal (result , expected )
1182
+ assert_series_equal (result , expected_downsample )
1172
1183
1173
1184
assert result .index .freq == Minute (5 )
1174
1185
0 commit comments