@@ -177,14 +177,27 @@ def summarize_intervals(self, sample_series, limit_type):
177
177
178
178
interval_points = []
179
179
extended_intervals = []
180
- for interval in np .split (sample_series , gap_positions ):
180
+ # Initialize the starting index for slicing
181
+ start_idx = 0
182
+ for end_idx in gap_positions :
183
+ interval = sample_series .iloc [start_idx :end_idx ]
181
184
lower = interval .index [0 ]
182
185
upper = interval .index [- 1 ]
183
186
interval_points .append ((lower , upper ))
184
187
# Extended interval with 1 hour in each direction
185
188
extend_lower = lower - np .timedelta64 (1 , "h" )
186
189
extend_upper = upper + np .timedelta64 (1 , "h" )
187
190
extended_intervals .append ((extend_lower , extend_upper ))
191
+ start_idx = end_idx
192
+
193
+ # Capture the last interval
194
+ interval = sample_series .iloc [start_idx :]
195
+ lower = interval .index [0 ]
196
+ upper = interval .index [- 1 ]
197
+ interval_points .append ((lower , upper ))
198
+ extend_lower = lower - np .timedelta64 (1 , "h" )
199
+ extend_upper = upper + np .timedelta64 (1 , "h" )
200
+ extended_intervals .append ((extend_lower , extend_upper ))
188
201
189
202
return interval_points , extended_intervals
190
203
0 commit comments