pm4py.algo.clustering.trace_attribute_driven.variants package#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

Submodules#

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

class pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.Parameters(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: Enum

ATTRIBUTE_KEY = 'pm4py:param:attribute_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
SINGLE = 'single'#
BINARIZE = 'binarize'#
POSITIVE = 'positive'#
LOWER_PERCENT = 'lower_percent'#
pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.occu_var_act(var_list)[source]#

return dataframe that shows the frequency of each element(activity) in each variant list :param var_list: :return:

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim(var_list_1, var_list_2, log1, log2, freq_thres, num, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim_med(var_list_1, var_list_2, log1, log2, freq_thres, num, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim_dual(var_list_1, var_list_2, log1, log2, freq_thres, num, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim_percent(log1, log2, percent_1, percent_2)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim_percent_avg(log1, log2, percent_1, percent_2)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.act_sim_percent_avg_actset(log1, log2, percent_1, percent_2, actset)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.logslice_dist module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

pm4py.algo.clustering.trace_attribute_driven.variants.logslice_dist.log2sublog(log, str)[source]#
pm4py.algo.clustering.trace_attribute_driven.variants.logslice_dist.slice_dist_suc(log_1, log_2, unit)[source]#
pm4py.algo.clustering.trace_attribute_driven.variants.logslice_dist.slice_dist_act(log_1, log_2, unit, parameters=None)[source]#

pm4py.algo.clustering.trace_attribute_driven.variants.sim_calc module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

class pm4py.algo.clustering.trace_attribute_driven.variants.sim_calc.Parameters(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: Enum

ATTRIBUTE_KEY = 'pm4py:param:attribute_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
SINGLE = 'single'#
BINARIZE = 'binarize'#
POSITIVE = 'positive'#
LOWER_PERCENT = 'lower_percent'#
pm4py.algo.clustering.trace_attribute_driven.variants.sim_calc.inner_prod_calc(df)[source]#
pm4py.algo.clustering.trace_attribute_driven.variants.sim_calc.dist_calc(var_list_1, var_list_2, log1, log2, freq_thres, num, alpha, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :param alpha: the weight parameter between activity similarity and succession similarity, which belongs to (0,1) :param parameters: state which linkage method to use :return: the similarity value between two sublogs

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

class pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.Parameters(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: Enum

ATTRIBUTE_KEY = 'pm4py:param:attribute_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
SINGLE = 'single'#
BINARIZE = 'binarize'#
POSITIVE = 'positive'#
LOWER_PERCENT = 'lower_percent'#
pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.occu_suc(dfg, filter_percent)[source]#
Parameters:
  • dfg – a counter containing all the direct succession relationship with frequency

  • filter_percent – clarify the percentage of direct succession one wants to preserve

Returns:

dataframe of direct succession relationship with frequency

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.occu_var_suc(var_list, parameters=None)[source]#

return dataframe that shows the frequency of each element(direct succession) in each variant list :param var_list: :param parameters: binarize states if user wants to binarize the frequency, default is binarized :return:

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.suc_sim(var_list_1, var_list_2, log1, log2, freq_thres, num, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.suc_sim_dual(var_list_1, var_list_2, log1, log2, freq_thres, num, parameters=None)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.suc_sim_percent(log1, log2, percent_1, percent_2)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.

pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.suc_sim_percent_avg(log1, log2, percent_1, percent_2)[source]#

this function compare the activity similarity between two sublogs via the two lists of variants. :param var_list_1: lists of variants in sublog 1 :param var_list_2: lists of variants in sublog 2 :param freq_thres: same as sublog2df() :param log1: input sublog1 of sublog2df(), which must correspond to var_list_1 :param log2: input sublog2 of sublog2df(), which must correspond to var_list_2 :return: the distance matrix between 2 sublogs in which each element is the distance between two variants.