Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -302,8 +302,19 @@ def generate_windows_from_selection(selected_indices, window_size, window_type):
|
|
| 302 |
windows.append(selected_indices[i:i+window_size])
|
| 303 |
else: # non-contiguous
|
| 304 |
from itertools import combinations
|
| 305 |
-
|
| 306 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
|
| 308 |
return windows
|
| 309 |
|
|
|
|
| 302 |
windows.append(selected_indices[i:i+window_size])
|
| 303 |
else: # non-contiguous
|
| 304 |
from itertools import combinations
|
| 305 |
+
all_combos = list(combinations(selected_indices, window_size))
|
| 306 |
+
|
| 307 |
+
# Filter out contiguous combinations
|
| 308 |
+
for combo in all_combos:
|
| 309 |
+
combo_list = list(combo)
|
| 310 |
+
# Check if this combination is contiguous in the ORIGINAL indices
|
| 311 |
+
is_contiguous = all(combo_list[i+1] - combo_list[i] == 1 for i in range(len(combo_list)-1))
|
| 312 |
+
if not is_contiguous:
|
| 313 |
+
windows.append(combo_list)
|
| 314 |
+
|
| 315 |
+
# If no non-contiguous windows found, return empty (or you could return all combinations)
|
| 316 |
+
if not windows:
|
| 317 |
+
st.warning(f"⚠️ No non-contiguous combinations found for window size {window_size}")
|
| 318 |
|
| 319 |
return windows
|
| 320 |
|