basket-Plug-In

Das basket Plug-In findet häufige Muster von Attributen in den Daten und gibt die Muster zurück, die einen Häufigkeitsschwellenwert in diesen Daten überschreiten. Ein Muster stellt eine Teilmenge der Zeilen dar, die denselben Wert für mindestens eine Spalte aufweisen. Das basket Plug-In basiert auf dem Apriori-Algorithmus , der ursprünglich für das Basket Analysis Data Mining entwickelt wurde.

Syntax

T | evaluatebasket([ Schwellenwert,WeightColumn,MaxDimensions,CustomWildcard,CustomWildcard, ... ])

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Typ Erforderlich Beschreibung
Schwellenwert long Ein double im Bereich von 0,015 bis 1, der das minimale Verhältnis der Zeilen festlegt, die als häufig betrachtet werden sollen. Muster mit einem kleineren Verhältnis werden nicht zurückgegeben. Der Standardwert ist 0,05. Um den Standardwert zu verwenden, geben Sie die Tilde ein: ~.

Beispiel: T | evaluate basket(0.02)
WeightColumn string Der Spaltenname, der verwendet werden soll, um jede Zeile in der Eingabe entsprechend der angegebenen Gewichtung zu berücksichtigen. Muss ein Name einer numerischen Spalte sein, zint. B. , long. real Standardmäßig weist jede Zeile eine Gewichtung von 1 auf. Um den Standardwert zu verwenden, geben Sie die Tilde ein: ~. Eine übliche Nutzung einer Gewichtungsspalte besteht darin, die Stichprobenerstellung oder die Bucket-Zuordnung/Aggregation der Daten zu berücksichtigen, die bereits in die einzelnen Zeilen eingebettet sind.

Beispiel: T | evaluate basket('~', sample_Count)
MaxDimensions int Legt die maximale Anzahl nicht korrelierter Dimensionen pro Warenkorb fest, die standardmäßig begrenzt ist, um die Abfragelaufzeit zu minimieren. Der Standardwert ist 5. Um den Standardwert zu verwenden, geben Sie die Tilde ein: ~.

Beispiel: T | evaluate basket('~', '~', 3)
CustomWildcard string Legt den Platzhalterwert für einen bestimmten Typ in der Ergebnistabelle fest, der angibt, dass das aktuelle Muster keine Einschränkung für diese Spalte besitzt. Der Standardwert ist null mit Ausnahme von Zeichenfolgenspalten, deren Standardwert eine leere Zeichenfolge ist. Wenn der Standardwert ein guter Wert in den Daten ist, sollte ein anderer Feldhalterwert verwendet werden, z *. B. . Um den Standardwert zu verwenden, geben Sie die Tilde ein: ~.

Beispiel: T | evaluate basket('~', '~', '~', '*', int(-1), double(-1), long(0), datetime(1900-1-1))

Hinweis

Um einen optionalen Parameter anzugeben, der einem optionalen Parameter folgt, stellen Sie sicher, dass Sie einen Wert für den vorherigen optionalen Parameter angeben. Weitere Informationen finden Sie unter Arbeiten mit optionalen Parametern.

Gibt zurück

Das basket Plug-In gibt häufige Muster zurück, die einen Schwellenwert für das Verhältnis überschreiten. Der Standardwert ist 0,05.

Jede Zeile in den Ergebnissen steht für ein Muster. Die erste Spalte ist die Segment-ID. Die nächsten beiden Spalten sind die Anzahl und der Prozentsatz der Zeilen aus der ursprünglichen Abfrage, die dem Muster entsprechen. Die restlichen Spalten beziehen sich auf die ursprüngliche Abfrage, wobei entweder ein bestimmter Wert aus der Spalte oder ein Feldhalterwert ist, der standardmäßig NULL ist, was einen Variablenwert bedeutet.

Hinweis

Der Algorithmus verwendet Stichproben, um die anfänglichen häufigen Werte zu bestimmen. Daher können sich die Ergebnisse geringfügig zwischen mehreren Ausführungen für Muster unterscheiden, deren Häufigkeit nahe am Schwellenwert liegt.

Beispiel

StormEvents
| where monthofyear(StartTime) == 5
| extend Damage = iff(DamageCrops + DamageProperty > 0 , "YES" , "NO")
| project State, EventType, Damage, DamageCrops
| evaluate basket(0.2)

Ausgabe

SegmentId Anzahl Percent State EventType Damage DamageCrops
0 4.574 77,7 Nein 0
1 2278 38,7 Hagel Nein 0
2 5.675 96,4 0
3 2371 40,3 Hagel 0
4 1.279 21,7 Sturm 0
5 2.468 41,9 Hagel
6 1.310 22.3 YES
7 1.291 21,9 Sturm

Beispiel mit benutzerdefinierten Platzhaltern

StormEvents
| where monthofyear(StartTime) == 5
| extend Damage = iff(DamageCrops + DamageProperty > 0 , "YES" , "NO")
| project State, EventType, Damage, DamageCrops
| evaluate basket(0.2, '~', '~', '*', int(-1))

Ausgabe

SegmentId Anzahl Percent State EventType Damage DamageCrops
0 4.574 77,7 * * Nein 0
1 2278 38,7 * Hagel Nein 0
2 5.675 96,4 * * * 0
3 2371 40,3 * Hagel * 0
4 1.279 21,7 * Sturm * 0
5 2.468 41,9 * Hagel * -1
6 1.310 22.3 * * YES -1
7 1.291 21,9 * Sturm * -1