From d0ee4a8c8db76900444bc3e0026b0ea54581e9e7 Mon Sep 17 00:00:00 2001 From: Alessandro Berti Date: Mon, 3 Apr 2023 07:51:23 +0200 Subject: [PATCH] fix(pm4py): fix OCEL deepcopy --- pm4py/algo/filtering/ocel/activity_type_matching.py | 4 ++-- .../ocel/split_ocel/variants/connected_components.py | 4 ++-- pm4py/objects/ocel/util/rename_objs_ot_tim_lex.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pm4py/algo/filtering/ocel/activity_type_matching.py b/pm4py/algo/filtering/ocel/activity_type_matching.py index 6fb59c0ea..21c256ce3 100644 --- a/pm4py/algo/filtering/ocel/activity_type_matching.py +++ b/pm4py/algo/filtering/ocel/activity_type_matching.py @@ -1,7 +1,7 @@ from enum import Enum from pm4py.util import exec_utils, constants from pm4py.objects.ocel.util import filtering_utils -from copy import copy +from copy import deepcopy from typing import Dict, Any, Optional, Collection from pm4py.objects.ocel.obj import OCEL from pm4py.objects.ocel import constants as ocel_constants @@ -51,7 +51,7 @@ def apply(ocel: OCEL, correspondence_dict: Dict[str, Collection[str]], temp_column = exec_utils.get_param_value(Parameters.TEMP_COLUMN, parameters, "@@temp_column") temp_separator = exec_utils.get_param_value(Parameters.TEMP_SEPARATOR, parameters, "@#@#") - ocel = copy(ocel) + ocel = deepcopy(ocel) inv_dict = set() for ot in correspondence_dict: diff --git a/pm4py/algo/transformation/ocel/split_ocel/variants/connected_components.py b/pm4py/algo/transformation/ocel/split_ocel/variants/connected_components.py index 10901dc99..17635f238 100644 --- a/pm4py/algo/transformation/ocel/split_ocel/variants/connected_components.py +++ b/pm4py/algo/transformation/ocel/split_ocel/variants/connected_components.py @@ -2,7 +2,7 @@ from typing import Optional, Dict, Any from pm4py.algo.transformation.ocel.graphs import object_interaction_graph from pm4py.objects.ocel.util import filtering_utils -from copy import copy +from copy import deepcopy from pm4py.util import exec_utils from enum import Enum import sys @@ -68,7 +68,7 @@ def apply(ocel: OCEL, parameters: Optional[Dict[Any, Any]] = None): ret = [] for cc in conn_comp: - subocel = copy(ocel) + subocel = deepcopy(ocel) subocel.objects = subocel.objects[subocel.objects[subocel.object_id_column].isin(cc)] subocel = filtering_utils.propagate_object_filtering(subocel, parameters=parameters) ret.append(subocel) diff --git a/pm4py/objects/ocel/util/rename_objs_ot_tim_lex.py b/pm4py/objects/ocel/util/rename_objs_ot_tim_lex.py index e05cfa0e2..674bfae30 100644 --- a/pm4py/objects/ocel/util/rename_objs_ot_tim_lex.py +++ b/pm4py/objects/ocel/util/rename_objs_ot_tim_lex.py @@ -1,5 +1,5 @@ from pm4py.objects.ocel.obj import OCEL -from copy import copy +from copy import deepcopy def apply(ocel: OCEL) -> OCEL: @@ -35,7 +35,7 @@ def apply(ocel: OCEL) -> OCEL: objects = {objects[i]: ot + "_" + str(i+1) for i in range(len(objects))} overall_objects.update(objects) - ocel = copy(ocel) + ocel = deepcopy(ocel) ocel.objects[ocel.object_id_column] = ocel.objects[ocel.object_id_column].map(overall_objects) ocel.relations[ocel.object_id_column] = ocel.relations[ocel.object_id_column].map(overall_objects) ocel.o2o[ocel.object_id_column] = ocel.o2o[ocel.object_id_column].map(overall_objects)