Spaces:
Sleeping
Sleeping
Create modules/filters.py
Browse files- modules/modules/filters.py +20 -0
modules/modules/filters.py
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
def apply_filters(df, alert_filter, cam_filter):
|
2 |
+
"""
|
3 |
+
Filters the DataFrame based on selected Alert Levels and Camera Status.
|
4 |
+
|
5 |
+
Parameters:
|
6 |
+
- df (pd.DataFrame): The pole monitoring dataset
|
7 |
+
- alert_filter (list): List of alert levels to keep ["Green", "Yellow", "Red"]
|
8 |
+
- cam_filter (str): Camera status filter - "Online", "Offline", or "All"
|
9 |
+
|
10 |
+
Returns:
|
11 |
+
- pd.DataFrame: Filtered dataset
|
12 |
+
"""
|
13 |
+
# Filter by alert level
|
14 |
+
filtered_df = df[df["Alert Level"].isin(alert_filter)]
|
15 |
+
|
16 |
+
# Filter by camera status if not "All"
|
17 |
+
if cam_filter != "All":
|
18 |
+
filtered_df = filtered_df[filtered_df["Camera Status"] == cam_filter]
|
19 |
+
|
20 |
+
return filtered_df
|