pm4py.algo.filtering.pandas.consecutive_act_case_grouping.consecutive_act_case_grouping_filter module#

PM4Py – A Process Mining Library for Python Copyright (C) 2026 Process Intelligence Solutions GmbH

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.filtering.pandas.consecutive_act_case_grouping.consecutive_act_case_grouping_filter.Parameters(*values)[source]#

Bases: Enum

CASE_ID_KEY = 'pm4py:param:case_id_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
FILTER_TYPE = 'filter_type'#
pm4py.algo.filtering.pandas.consecutive_act_case_grouping.consecutive_act_case_grouping_filter.apply(log_obj: EventLog | EventStream | DataFrame, parameters: Dict[Any, Any] | None = None) → DataFrame[source]#

Groups the consecutive events of the same case having the same activity, providing option to keep the first/last event of each group

Parameters:
  • log_obj – Log object (EventLog, EventStream, Pandas dataframe)

  • parameters – Parameters of the algorithm, including:

    • Parameters.CASE_ID_KEY => the case identifier to be used

    • Parameters.ACTIVITY_KEY => the attribute to be used as activity

    • Parameters.FILTER_TYPE => the type of filter to be applied: first => keeps the first event of each group last => keeps the last event of each group

Returns:

Filtered dataframe object

Return type:

filtered_dataframe