Aynı vakadaki tüm olayların değerlerini toplamak için kullanılan işlevler.
Vaka toplamlarını anlama
Process Mining’de vaka, bir sürecin tek bir örneğini temsil eder (ör. bir sipariş, bir destek kaydı veya bir müşteri yolculuğu). Her vaka birden fazla olay, yani tek tek adım veya etkinlik içerir.
Vaka toplam işlevleri, bir vakadaki tüm olayların değerlerini hesaplar ve sonucu her olay için kullanılabilir hâle getirir. Böylece şunları yapabilirsiniz:
- Bir vakanın toplam değerlerini hesaplayın (ör. toplam sipariş tutarı)
- Vakaların içindeki örüntüleri bulun (ör. yeniden çalışma olaylarının sayısı)
- Tek tek olayları vaka düzeyindeki istatistiklerle karşılaştırın
Yaygın örüntüler
-
Vaka toplamlarını hesaplama:
caseSum(ItemAmount) // Total order value
caseCount() // Number of events in case
caseCountDistinct(Resource) // Unique resources involved
-
Uç değerleri bulma:
caseMin(Timestamp) // First event time
caseMax(Timestamp) // Last event time
caseMax(Timestamp) - caseMin(Timestamp) // Total case duration
-
Koşullu toplamlar:
caseCountIf(Status == "Error") // Error count
caseSumIf(Amount, Activity == "Payment") // Total payments
caseAvgIf(Duration, Activity == "Review") // Avg review time
-
Olayı vakayla karşılaştırma:
Duration / caseAvg(Duration) // Is this event faster/slower than average?
caseSum
(attribute) Geçerli vakadaki tüm olayların sayısal bir öznitelik değerlerini toplar.
| Parametreler | | attribute | number | Toplanacak öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseSum(ItemAmount) → Vakada bulunan tüm ItemAmount değerlerinin toplamı |
caseAvg
(attribute) Geçerli vakadaki tüm olayların sayısal bir özniteliğinin ortalamasını hesaplar.
| Parametreler | | attribute | number | Ortalaması alınacak öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseAvg(ProcessingTime) → Olay başına ortalama işlem süresi |
caseMin
(attribute) Geçerli vakadaki tüm olayların öznitelik değerleri arasından en küçüğünü döndürür.
| Parametreler | | attribute | number | En küçük değeri döndürülecek öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseMin(ItemPrice) → Vakada görülen en düşük fiyat |
caseMax
(attribute) Geçerli vakadaki tüm olayların öznitelik değerleri arasından en büyüğünü döndürür.
| Parametreler | | attribute | number | En büyük değeri döndürülecek öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseMax(ItemPrice) → Vakada görülen en yüksek fiyat |
caseCount
() Geçerli vakadaki olay sayısını döndürür.
| Döndürülen değer | sayı |
| Örnekler | caseCount() → Vakada bulunan olay sayısı |
caseMedian
(attribute) Geçerli vakadaki tüm olayların öznitelik değerlerinin medyanını döndürür.
| Parametreler | | attribute | number | Medyanı döndürülecek öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseMedian(Duration) → Vakada Duration için ortadaki değer |
caseCountDistinct
(attribute) Geçerli vakadaki bir özniteliğin farklı değerlerini sayar.
| Parametreler | | attribute | any | Farklı değerleri sayılacak öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseCountDistinct(Resource) → Vakada bulunan benzersiz kaynak sayısı |
caseStdDev
(expr) Vakada yer alan olayların standart sapmasını hesaplar.
| Parametreler | | expr | number | Değer ifadesi | |
| Döndürülen değer | sayı |
| Örnekler | caseStdDev(Amount) → Vakadaki standart sapma |
caseSumIf
(attribute, condition) Yalnızca koşulu karşılayan olayların değerlerini toplar.
| Parametreler | | attribute | number | Toplanacak öznitelik | | condition | boolean | Filtreleme koşulu | |
| Döndürülen değer | sayı |
| Örnekler | caseSumIf(Amount, Status == "Approved") → Status değeri Approved olan olaylardaki Amount toplamı |
caseAvgIf
(attribute, condition) Yalnızca koşulu karşılayan olayların değerlerinin ortalamasını hesaplar.
| Parametreler | | attribute | number | Ortalaması alınacak öznitelik | | condition | boolean | Filtreleme koşulu | |
| Döndürülen değer | sayı |
| Örnekler | caseAvgIf(Duration, Activity == "Review") → Review etkinliklerinin ortalama süresi |
caseCountIf
(condition) Geçerli vakada koşulu karşılayan olayları sayar.
| Parametreler | | condition | boolean | Sayım koşulu | |
| Döndürülen değer | sayı |
| Örnekler | caseCountIf(Status == "Error") → Vakada bulunan hata olaylarının sayısı |
caseMinIf
(attribute, condition) Koşulu karşılayan olayların değerleri arasından en küçüğünü döndürür.
| Parametreler | | attribute | number | En küçük değeri döndürülecek öznitelik | | condition | boolean | Filtreleme koşulu | |
| Döndürülen değer | sayı |
| Örnekler | caseMinIf(Timestamp, Activity == "Start") → İlk Start etkinliğinin zaman damgası |
caseMaxIf
(attribute, condition) Koşulu karşılayan olayların değerleri arasından en büyüğünü döndürür.
| Parametreler | | attribute | number | En büyük değeri döndürülecek öznitelik | | condition | boolean | Filtreleme koşulu | |
| Döndürülen değer | sayı |
| Örnekler | caseMaxIf(Timestamp, Activity == "End") → Son End etkinliğinin zaman damgası |
Kümülatif toplamlar
Kümülatif toplamlar, geçerli olay da dahil olmak üzere o ana kadarki birikimli değerleri hesaplar. Vakadaki olaylar arasında kronolojik olarak ilerledikçe toplam güncellenir.
Şu amaçlarla kullanabilirsiniz:
- Birikimli toplamları izleme
- Olayın sıradaki konumunu belirleme
- Hareketli ortalamaları hesaplama
Kümülatif toplam örüntüleri
-
Birikimli toplamlar: Bir değerin vaka boyunca nasıl biriktiğini izleyin:
caseRunningSum(ItemAmount) // Cumulative order total at each event
| Olay | Tutar | caseRunningSum(Amount) |
| 1 | 100 | 100 |
| 2 | 50 | 150 |
| 3 | 75 | 225 |
-
Olayın sıradaki konumu: Bir olayın vaka sıralamasındaki yerini belirleyin:
caseRunningCount() // 1, 2, 3, 4...
-
Hareketli ortalama: Geçerli noktaya kadar olan ortalamayı hesaplayın:
caseRunningAvg(Duration) // Average duration so far
-
Konuma dayalı mantık:
if(caseRunningCount() == 1, "First",
if(caseRunningCount() == caseCount(), "Last", "Middle")
)
caseRunningSum
(attribute) Geçerli olay da dahil olmak üzere, o ana kadarki kümülatif toplamı hesaplar.
| Parametreler | | attribute | number | Toplanacak öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseRunningSum(ItemAmount) → Her olay için kümülatif toplam |
caseRunningCount
() Vakada olayların 1'den başlayan sırasını döndürür.
| Döndürülen değer | sayı |
| Örnekler | caseRunningCount() → Olay sırası: 1, 2, 3, ... |
caseRunningAvg
(attribute) Geçerli olay da dahil olmak üzere, o ana kadarki kümülatif ortalamayı hesaplar.
| Parametreler | | attribute | number | Ortalaması alınacak öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseRunningAvg(Duration) → O ana kadarki ortalama süre |
caseRunningMin
(expr) Geçerli olaya kadar olan en küçük değeri hesaplar.
| Parametreler | | expr | number | Değer ifadesi | |
| Döndürülen değer | sayı |
| Örnekler | caseRunningMin(Amount) → O ana kadarki en düşük tutar |
caseRunningMax
(expr) Geçerli olaya kadar olan en büyük değeri hesaplar.
| Parametreler | | expr | number | Değer ifadesi | |
| Döndürülen değer | sayı |
| Örnekler | caseRunningMax(Amount) → O ana kadarki en yüksek tutar |
İstatistik işlevleri
Bir vakadaki değerlerin dağılımını analiz etmeye yönelik istatistik işlevleri.
-
Yüzdelikler: Bir değerin vakadaki diğer değerlere göre nerede olduğunu bulun. Yüzdeliği 0 ile 1 arasında bir kesir olarak girin; örneğin 0.9 90. yüzdeliği ifade eder:
casePercentile(Duration, 0.5) // Median duration in this case
casePercentile(Duration, 0.9) // 90th percentile
-
Varyans: Değerlerin ne kadar dağıldığını ölçün:
caseVariance(Amount) // Variation within this case
casePercentile
(attribute, percentile) Geçerli vakadaki bir özniteliğin yüzdelik dilimini hesaplar.
| Parametreler | | attribute | number | Analiz edilecek öznitelik | | percentile | number | 0 ile 1 arasında kesir olarak yüzdelik dilim (0.9 = 90. yüzdelik dilim) | |
| Döndürülen değer | sayı |
| Örnekler | casePercentile(Duration, 0.9) → Vakada sürenin 90. yüzdelik dilimi |
caseVariance
(attribute) Geçerli vakadaki bir özniteliğin varyansını hesaplar.
| Parametreler | | attribute | number | Analiz edilecek öznitelik | |
| Döndürülen değer | sayı |
| Örnekler | caseVariance(ProcessingTime) → Vakada işlem sürelerinin varyansı |
İlgili konular