From 4e61dbe45e0b153836dbb800c60c64a9f4bea519 Mon Sep 17 00:00:00 2001 From: Christos Tsolakis Date: Fri, 6 Sep 2024 10:05:53 -0400 Subject: [PATCH] feat(args): Add ability to ignore a field Allows to exclude fields from the visualization --- multivariate_view/app/app.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/multivariate_view/app/app.py b/multivariate_view/app/app.py index 71422b6..d627ca8 100644 --- a/multivariate_view/app/app.py +++ b/multivariate_view/app/app.py @@ -43,9 +43,17 @@ def __init__(self, server=None): dest="preprocess", action='store_true', ) + self.server.cli.add_argument( + "--ignore-fields", + help="Fields to ignore from the dataset", + default=[], + nargs='+', + type=str, + ) args, _ = self.server.cli.parse_known_args() self.enable_preprocessing = args.preprocess + self.ignore_fields = args.ignore_fields file_to_load = args.data if file_to_load is None: EXAMPLE_DATA_DIR.mkdir(parents=True, exist_ok=True) @@ -85,6 +93,15 @@ def __init__(self, server=None): def load_data(self, file_to_load): header, data = load_dataset(Path(file_to_load)) + for key in self.ignore_fields: + if key in header: + index_to_remove = header.index(key) + data = np.delete(data, index_to_remove, axis=3) + else: + print( + f"Warning: field {key} is not part of the provided dataset.\nThe available fields are {header}" + ) + self.state.component_labels = header if self.enable_preprocessing: