Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -298,23 +298,22 @@ def generate_windows_from_selection(selected_indices, window_size, window_type):
|
|
| 298 |
|
| 299 |
windows = []
|
| 300 |
if window_type == "contiguous":
|
|
|
|
| 301 |
for i in range(len(selected_indices) - window_size + 1):
|
| 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 |
-
#
|
| 308 |
-
|
| 309 |
-
|
| 310 |
-
|
| 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 |
-
#
|
| 316 |
-
|
| 317 |
-
|
|
|
|
| 318 |
|
| 319 |
return windows
|
| 320 |
|
|
|
|
| 298 |
|
| 299 |
windows = []
|
| 300 |
if window_type == "contiguous":
|
| 301 |
+
# Only sliding windows
|
| 302 |
for i in range(len(selected_indices) - window_size + 1):
|
| 303 |
windows.append(selected_indices[i:i+window_size])
|
| 304 |
else: # non-contiguous
|
| 305 |
from itertools import combinations
|
| 306 |
all_combos = list(combinations(selected_indices, window_size))
|
| 307 |
|
| 308 |
+
# Get the contiguous windows (to exclude them)
|
| 309 |
+
contiguous_windows = []
|
| 310 |
+
for i in range(len(selected_indices) - window_size + 1):
|
| 311 |
+
contiguous_windows.append(tuple(selected_indices[i:i+window_size]))
|
|
|
|
|
|
|
|
|
|
| 312 |
|
| 313 |
+
# Filter: keep only combinations that are NOT in contiguous_windows
|
| 314 |
+
for combo in all_combos:
|
| 315 |
+
if combo not in contiguous_windows:
|
| 316 |
+
windows.append(list(combo))
|
| 317 |
|
| 318 |
return windows
|
| 319 |
|