Pm4py: COLLAB: analisa bottleneck dari csv

From OnnoWiki
Revision as of 07:21, 29 March 2025 by Onnowpurbo (talk | contribs) (Created page with "=='''Langkah 1: Buka Google Colab'''== Kunjungi: [https://colab.research.google.com](https://colab.research.google.com) =='''Langkah 2: Copy-Paste Script Ini ke Colab'''==...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Langkah 1: Buka Google Colab

Kunjungi: [1](https://colab.research.google.com)

Langkah 2: Copy-Paste Script Ini ke Colab

# Instalasi PM4Py
!pip install -q pm4py
# Import library
import pandas as pd
import matplotlib.pyplot as plt
from pm4py.objects.log.util import dataframe_utils
from pm4py.objects.conversion.log import converter as log_converter
from pm4py.objects.log.importer.pandas import importer as pandas_importer
from pm4py.algo.discovery.dfg import algorithm as dfg_discovery
from pm4py.visualization.dfg import visualizer as dfg_visualization
from pm4py.algo.analysis.performance_spectrum import algorithm as performance_spectrum

# Upload CSV
from google.colab import files
uploaded = files.upload()

# Load CSV
filename = list(uploaded.keys())[0]
df = pd.read_csv(filename)

# Ubah nama kolom agar sesuai dengan PM4Py
df.columns = ['case:concept:name', 'concept:name', 'time:timestamp']
df['time:timestamp'] = pd.to_datetime(df['time:timestamp'])

# Konversi ke event log
df = dataframe_utils.convert_timestamp_columns_in_df(df)
log = pandas_importer.apply(df)
event_log = log_converter.apply(log, variant=log_converter.Variants.TO_EVENT_LOG)

# === ANALISIS DAN VISUALISASI === #

# 1. Visualisasi DFG berdasarkan frekuensi
dfg_freq = dfg_discovery.apply(event_log, variant=dfg_discovery.Variants.FREQUENCY)
dfg_vis = dfg_visualization.apply(dfg_freq, log=event_log, variant=dfg_visualization.Variants.FREQUENCY)
dfg_visualization.view(dfg_vis)

# 2. Visualisasi bottleneck: Performance Spectrum
ps = performance_spectrum.apply(event_log)
performance_spectrum.visualize(ps)

Langkah 3: Siapkan File CSV

Format minimal yang dibutuhkan:

case_id,activity,timestamp

Contoh:

1,A,2023-01-01 10:00:00
1,B,2023-01-01 12:00:00
1,C,2023-01-01 13:30:00
2,A,2023-01-01 09:00:00
2,B,2023-01-01 09:45:00
2,C,2023-01-01 11:00:00


Pranala Menarik