pm4py.discovery.discover_dcr#
- pm4py.discovery.discover_dcr(log: EventLog | DataFrame, post_process: Set[str] = None, activity_key: str = 'concept:name', timestamp_key: str = 'time:timestamp', case_id_key: str = 'case:concept:name', resource_key: str = 'org:resource', group_key: str = 'org:group', finaAdditionalConditions: bool = True, **kwargs) Tuple[Any, Dict[str, Any]] [source]#
Discovers a DCR graph from an event log based on the DisCoveR algorithm. This method implements the DCR discovery algorithm as described in: C. O. Back, T. Slaats, T. T. Hildebrandt, M. Marquard, “DisCoveR: accurate and efficient discovery of declarative process models”. Parameters ———- log : Union[EventLog, pd.DataFrame]
The event log or Pandas dataframe containing the event data.
- post_processOptional[str]
Specifies the type of post-processing for the event log, currently supports ROLES, PENDING, TIMED and NESTINGS.
- activity_keystr, optional
The attribute to be used for the activity, defaults to “concept:name”.
- timestamp_keystr, optional
The attribute to be used for the timestamp, defaults to “time:timestamp”.
- case_id_keystr, optional
The attribute to be used as the case identifier, defaults to “case:concept:name”.
- group_keystr, optional
The attribute to be used as a role identifier, defaults to “org:group”.
- resource_keystr, optional
The attribute to be used as a resource identifier, defaults to “org:resource”.
- findAdditionalConditionsbool, optional
A boolean value specifying whether additional conditions should be found, defaults to True.
Returns#
- Tuple[Any, dict]
A tuple containing the discovered DCR graph and a dictionary with additional information.
Examples#