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

Bases: Enum

CASE_ID_KEY = 'pm4py:param:case_id_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
TIMESTAMP_KEY = 'pm4py:param:timestamp_key'#
INDEX_KEY = 'index_key'#
class pm4py.streaming.conversion.from_pandas.PandasDataframeAsIterable(dataframe: DataFrame, parameters: Dict[Any, Any] | None = None)[source]#

Bases: object

read_trace() Trace[source]#
reset()[source]#
to_trace_stream(trace_stream: LiveTraceStream)[source]#

Sends the content of the dataframe to a trace stream

Parameters#

trace_stream

Trace stream

pm4py.streaming.conversion.from_pandas.apply(dataframe, parameters=None) PandasDataframeAsIterable[source]#

Transforms the Pandas dataframe object to an iterable

Parameters#

dataframe

Pandas dataframe

parameters

Parameters of the algorithm, including: - Parameters.CASE_ID_KEY => the attribute to be used as case identifier (default: constants.CASE_CONCEPT_NAME) - Parameters.ACTIVITY_KEY => the attribute to be used as activity (default: xes_constants.DEFAULT_NAME_KEY) - Parameters.TIMESTAMP_KEY => the attribute to be used as timestamp (default: xes_constants.DEFAULT_TIMESTAMP_KEY)

Returns#

log_iterable
Iterable log object, which can be iterated directly or added to a live trace stream

(using the method to_trace_stream).

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

Bases: Enum

ACTIVITY_KEY = 'pm4py:param:activity_key'#
CASE_ID_KEY = 'pm4py:param:case_id_key'#
TIMESTAMP_KEY = 'pm4py:param:timestamp_key'#
OCEL_ACTIVITY_KEY = 'param:event:activity'#
OCEL_TIMESTAMP_KEY = 'param:event:timestamp'#
OCEL_TYPE_PREFIX = 'param:object:type:prefix:extended'#
class pm4py.streaming.conversion.ocel_flatts_distributor.OcelFlattsDistributor(parameters: Dict[Any, Any] | None = None)[source]#

Bases: object

register(object_type: str, live_event_stream: LiveEventStream)[source]#

Register a new event stream (listener) for a given object type.

Parameters#

object_type

Given object type

live_event_stream

Live event stream

append(event: Dict[str, Any])[source]#

Flattens an OCEL among all the available object types, and send its flattening to each corresponding event stream.

Parameters#

event

OCEL event (obtained for example using the ocel_iterator)