reduce işleci
Değer benzerliğine göre bir dizi dizeyi birlikte gruplandırın.
Bu tür her grup için işleç bir pattern
, count
ve representative
döndürür. Karakterin pattern
joker karakteri temsil ettiği *
grubu en iyi şekilde açıklar. count
, gruptaki değerlerin sayısıdır ve representative
grubundaki özgün değerlerden biridir.
Sözdizimi
T reduce
|
[kind
=
ReduceKind] by
İfade [with
[ =
threshold
Eşik] [,
=
characters
Karakterler]]
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Zorunlu | Açıklama |
---|---|---|---|
İfade | string |
✔️ | Azaltılan değer. |
Threshold | real |
Azaltma işlemini tetikleyebilmek için gruplandırma ölçütleriyle eşleştirmek için gereken en düşük satır kesirini belirleyen 0 ile 1 arasında bir değer. Varsayılan değer 0,1'dir. Büyük girişler için küçük bir eşik değeri ayarlamanızı öneririz. Daha küçük bir eşik değeriyle, daha benzer değerler birlikte gruplandırılır ve bu da daha az ama daha benzer gruplara neden olur. Daha büyük bir eşik değeri daha az benzerlik gerektirir ve bu da daha az benzer olan daha fazla grupla sonuçlanır. Bkz. Örnekler. |
|
Karakterler | string |
Terimler arasında ayrı olan karakterlerin listesi. Varsayılan değer, ascii olmayan her sayısal karakterdir. Örnekler için bkz . Karakter Davranışı parametresi. | |
ReduceKind | string |
Tek geçerli değer olur source . belirtilirsesource , işleci sütunu tarafından Pattern toplama yerine tablodaki var olan satırlara eklerPattern . |
Döndürülenler
, count
ve representative
başlıklı pattern
grup ve sütun sayısı kadar satırı olan bir tablo. En pattern
iyi, karakterin joker karakteri veya rastgele ekleme dizesi için yer tutucuyu temsil ettiği *
grubu açıklar. count
, gruptaki değerlerin sayısıdır ve representative
grubundaki özgün değerlerden biridir.
Örneğin, sonucu reduce by city
şunları içerebilir:
Desen | Sayı | Vekil |
---|---|---|
San* | 5182 | San Bernard |
Aziz* | 2846 | Saint Lucy |
Moskova | 3726 | Moskova |
*-üzerinde-* | 2730 | Bire Bir |
Paris | 2716 | Paris |
Örnekler
Küçük eşik değeri
range x from 1 to 1000 step 1
| project MyText = strcat("MachineLearningX", tostring(toint(rand(10))))
| reduce by MyText with threshold=0.001 , characters = "X"
Çıktı
Desen | Sayı | Vekil |
---|---|---|
MachineLearning* | 1000 | MachineLearningX4 |
Büyük eşik değeri
range x from 1 to 1000 step 1
| project MyText = strcat("MachineLearningX", tostring(toint(rand(10))))
| reduce by MyText with threshold=0.9 , characters = "X"
Çıktı
Desen | Sayı | Vekil |
---|---|---|
MachineLearning* | 177 | MachineLearningX9 |
MachineLearning* | 102 | MachineLearningX0 |
MachineLearning* | 106 | MachineLearningX1 |
MachineLearning* | 96 | MachineLearningX6 |
MachineLearning* | 110 | MachineLearningX4 |
MachineLearning* | 100 | MachineLearningX3 |
MachineLearning* | 99 | MachineLearningX8 |
MachineLearning* | 104 | MachineLearningX7 |
MachineLearning* | 106 | MachineLearningX2 |
Karakter Davranışı parametresi
Karakterler parametresi belirtilmemişse, ascii olmayan her sayısal karakter bir terim ayırıcısı olur.
range x from 1 to 10 step 1 | project str = strcat("foo", "Z", tostring(x)) | reduce by str
Çıktı
Desen | Sayı | Vekil |
---|---|---|
Diğer | 10 |
Ancak, "Z" öğesinin bir ayırıcı olduğunu belirtirseniz, içindeki her değer str
2 terim gibidir: foo
ve tostring(x)
:
range x from 1 to 10 step 1 | project str = strcat("foo", "Z", tostring(x)) | reduce by str with characters="Z"
Çıktı
Desen | Sayı | Vekil |
---|---|---|
Foo* | 10 | fooZ1 |
Temizlenmiş girişe uygula reduce
Aşağıdaki örnekte, daraltılmakta reduce
olan sütundaki GUID'lerin azaltmadan önce değiştirildiği bir "temizlenmiş" girişe işlecinin nasıl uygulanabileceği gösterilmektedir
// Start with a few records from the Trace table.
Trace | take 10000
// We will reduce the Text column which includes random GUIDs.
// As random GUIDs interfere with the reduce operation, replace them all
// by the string "GUID".
| extend Text=replace_regex(Text, @"[[:xdigit:]]{8}-[[:xdigit:]]{4}-[[:xdigit:]]{4}-[[:xdigit:]]{4}-[[:xdigit:]]{12}", @"GUID")
// Now perform the reduce. In case there are other "quasi-random" identifiers with embedded '-'
// or '_' characters in them, treat these as non-term-breakers.
| reduce by Text with characters="-_"
İlgili içerik
Not
işlecinin reduce
uygulanması büyük ölçüde Risto Vaarandi tarafından yapılan Olay Günlüklerinden Araştırma Desenleri için A Veri Kümeleme Algoritması kağıdını temel alır.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin