Event abstraction

The Event Abstraction component is used to convert the low-level dataframe with detailed information about each event that has occurred into a high-level one to be exploited for diagnostic and analysis purposes by expert RPA analysts.

In particular, the high-level event log can be used to derive the flowchart representing the abstract workflow underlying the routine execution. This is done by filtering out irrelevant events, grouping similar ones together (i.e.: copy/paste actions are combined into one) and returning a descriptive string for each recorded event.

../_images/3_event_abstraction.png
modules.eventAbstraction._getHighLevelEvent(row)[source]

Convert low-level dataframe row into high-level.

Generate descriptive string for each row based on event type and other fields.

Parameters:

row – row of the dataframe

Returns:

high level description of the row

modules.eventAbstraction.aggregateData(df: DataFrame, remove_duplicates=False)[source]

Transforms low level actions used for RPA generation to high level used for DFG, petri net, BPMN.

  • rows with specific events are filtered because irrelevant for the analysis

  • rows with empty clipboard are removed because they don’t need to be abstracted to high level

  • similar events are grouped together

  • a new column called ‘customClassifier’ is added to the dataframe, containing the high level description of each row, generated using _getHighLevelEvent() method

  • if remove_duplicates is true, duplicate rows are removed

  • dataframe with high level descriptions for each row is returned

Parameters:
  • df – input dataframe

  • remove_duplicates – if true, duplicate rows are removed

Returns:

high-level dataframe, log, parameters to generate diagrams