pm4py.algo.clustering.trace_attribute_driven.variants package#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

Submodules#

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

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

class pm4py.algo.clustering.trace_attribute_driven.variants.act_dist_calc.Parameters(value)[source]#

Bases: Enum

An enumeration.

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#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

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#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

class pm4py.algo.clustering.trace_attribute_driven.variants.sim_calc.Parameters(value)[source]#

Bases: Enum

An enumeration.

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#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py 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 General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

class pm4py.algo.clustering.trace_attribute_driven.variants.suc_dist_calc.Parameters(value)[source]#

Bases: Enum

An enumeration.

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.