pm4py.algo.filtering.pandas.timestamp 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.filtering.pandas.timestamp.timestamp_filter 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.filtering.pandas.timestamp.timestamp_filter.Parameters(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: Enum

TIMESTAMP_KEY = 'pm4py:param:timestamp_key'#
CASE_ID_KEY = 'pm4py:param:case_id_key'#
pm4py.algo.filtering.pandas.timestamp.timestamp_filter.filter_traces_contained(df: DataFrame, dt1: str | datetime, dt2: str | datetime, parameters: Dict[str | Parameters, Any] | None = None) DataFrame[source]#

Get traces that are contained in the given interval

Parameters#

df

Pandas dataframe

dt1

Lower bound to the interval (possibly expressed as string, but automatically converted)

dt2

Upper bound to the interval (possibly expressed as string, but automatically converted)

parameters
Possible parameters of the algorithm, including:

Parameters.TIMESTAMP_KEY -> Attribute to use as timestamp Parameters.CASE_ID_KEY -> Column that contains the timestamp

Returns#

df

Filtered dataframe

pm4py.algo.filtering.pandas.timestamp.timestamp_filter.filter_traces_intersecting(df: DataFrame, dt1: str | datetime, dt2: str | datetime, parameters: Dict[str | Parameters, Any] | None = None) DataFrame[source]#

Filter traces intersecting the given interval

Parameters#

df

Pandas dataframe

dt1

Lower bound to the interval (possibly expressed as string, but automatically converted)

dt2

Upper bound to the interval (possibly expressed as string, but automatically converted)

parameters
Possible parameters of the algorithm, including:

Parameters.TIMESTAMP_KEY -> Attribute to use as timestamp Parameters.CASE_ID_KEY -> Column that contains the timestamp

Returns#

df

Filtered dataframe

pm4py.algo.filtering.pandas.timestamp.timestamp_filter.apply_events(df: DataFrame, dt1: str | datetime, dt2: str | datetime, parameters: Dict[str | Parameters, Any] | None = None) DataFrame[source]#

Get a new log containing all the events contained in the given interval

Parameters#

df

Pandas dataframe

dt1

Lower bound to the interval (possibly expressed as string, but automatically converted)

dt2

Upper bound to the interval (possibly expressed as string, but automatically converted)

parameters
Possible parameters of the algorithm, including:

Parameters.TIMESTAMP_KEY -> Attribute to use as timestamp

Returns#

df

Filtered dataframe

pm4py.algo.filtering.pandas.timestamp.timestamp_filter.filter_traces_attribute_in_timeframe(df: DataFrame, attribute: str, attribute_value: str, dt1: str | datetime, dt2: str | datetime, parameters: Dict[str | Parameters, Any] | None = None) DataFrame[source]#

Get a new log containing all the traces that have an event in the given interval with the specified attribute value

Parameters#

df

Dataframe

attribute

The attribute to filter on

attribute_value

The attribute value to filter on

dt1

Lower bound to the interval

dt2

Upper bound to the interval

parameters
Possible parameters of the algorithm, including:

Parameters.TIMESTAMP_KEY -> Attribute to use as timestamp

Returns#

df

Filtered dataframe

pm4py.algo.filtering.pandas.timestamp.timestamp_filter.apply(df, parameters=None)[source]#
pm4py.algo.filtering.pandas.timestamp.timestamp_filter.apply_auto_filter(df, parameters=None)[source]#