Table.FuzzyGroupTable.FuzzyGroup

SyntaxSyntax

Table.FuzzyGroup(table as table, key as any, aggregatedColumns as list, optional options as nullable record) as table

InfoAbout

Gruppiert die Zeilen von table zeilenweise nach den Werten in der angegebenen Spalte key.Groups the rows of table by fuzzily matching values in the specified column, key, for each row. Für jede Gruppe wird ein Datensatz erstellt, der die Schlüsselspalten (und deren Werte) zusammen mit allen durch aggregatedColumns angegebenen aggregierten Spalten enthält.For each group, a record is constructed containing the key columns (and their values) along with any aggregated columns specified by aggregatedColumns. Diese Funktion kann nicht garantieren, dass Zeilen in fester Reihenfolge zurückgegeben werden.This function cannot guarantee to return a fixed order of rows.

Optional können options einbezogen werden, um anzugeben, wie die Schlüsselspalten verglichen werden sollen.An optional set of options may be included to specify how to compare the key columns. Beispiele für Optionen:Options include:

  • Culture: Hiermit ist das Gruppieren von Datensätzen basierend auf kulturspezifischen Regeln möglich.Culture: Allows grouping records based on culture-specific rules. Dabei kann es sich um einen beliebigen Kulturnamen handeln.It can be any valid culture name. Beispielsweise werden bei der „Culture“-Option „ja-JP“ Datensätze basierend auf der japanischen Kultur gruppiert.For example, a Culture option of "ja-JP" groups records based on the Japanese culture. Der Standardwert ist "", wodurch basierend auf der englischbasierten Kultur gruppiert wird.The default value is "", which groups based on the Invariant English culture.
  • IgnoreCase: Dies ist ein logischer Wert (true/false), der das Gruppieren von Schlüsseln ermöglicht, bei denen die Groß- und Kleinschreibung beachtet wird.IgnoreCase: A logical (true/false) value that allows case-insensitive key grouping. Bei „true“ wird „Trauben“ beispielsweise mit „trauben“ gruppiert.For example, when true, "Grapes" is grouped with "grapes". Der Standardwert ist true.The default value is true.
  • IgnoreSpace: Dies ist ein logischer Wert (true/false), der das Kombinieren von Textteilen ermöglicht, um Gruppen zu suchen.IgnoreSpace: A logical (true/false) value that allows combining of text parts in order to find groups. Bei „true“ wird „Trau ben“ beispielsweise mit „Trauben“ gruppiert.For example, when true, "Gra pes" is grouped with "Grapes". Der Standardwert ist true.The default value is true.
  • SimilarityColumnName: Dies ist ein Name für die Spalte, die die Ähnlichkeit zwischen einem Eingabewert und dem repräsentativen Wert für diese Eingabe anzeigt.SimilarityColumnName: A name for the column that shows the similarity between an input value and the representative value for that input. Der Standardwert ist NULL. In Diesem Fall wird keine neue Spalte für Ähnlichkeiten hinzugefügt.The default value is null, in which case a new column for similarities will not be added.
  • Threshold: Dies ist eine Zahl zwischen 0,00 und 1,00, die den Ähnlichkeitswert angibt, bei dem zwei Werte gruppiert werden.Threshold: A number between 0.00 and 1.00 that specifies the similarity score at which two values will be grouped. Beispiel: „Trauben“ und „Trauen“ (fehlendes „b“) werden nur dann gruppiert, wenn diese Option auf weniger als 0,90 festgelegt ist.For example, "Grapes" and "Graes" (missing "p") are grouped together only if this option is set to less than 0.90. Ein Schwellenwert von 1,00 entspricht der Angabe eines genauen Übereinstimmungskriteriums beim Gruppieren.A threshold of 1.00 is the same as specifying an exact match criteria while grouping. Der Standardwert ist 0,80.The default value is 0.80.
  • TransformationTable: Dies ist eine Tabelle, die das Gruppieren von Datensätzen basierend auf benutzerdefinierten Wertzuordnungen ermöglicht.TransformationTable: A table that allows grouping records based on custom value mappings. Dabei sollten die Spalten „From“ und „To“ enthalten sein.It should contain "From" and "To" columns. Beispiel: „Trauben“ wird mit „Rosinen“ gruppiert, wenn eine Transformationstabelle bereitgestellt wird, in der die Spalte „From“ den Wert „Trauben“ und die Spalte „To“ den Wert „Rosinen“ enthält.For example, "Grapes" is grouped with "Raisins" if a transformation table is provided with the "From" column containing "Grapes" and the "To" column containing "Raisins". Beachten Sie, dass die Transformation auf alle Vorkommen des Texts in der Transformationstabelle angewendet wird.Note that the transformation will be applied to all occurrences of the text in the transformation table. Bei der obigen Transformationstabelle wird „Trauben sind süß“ auch mit „Rosinen sind süß“ gruppiert.With the above transformation table, "Grapes are sweet" will also be grouped with "Raisins are sweet".

BeispielExample

Gruppieren Sie die Tabelle, indem Sie eine aggregierte Spalte hinzufügen [Count], die die Anzahl der Mitarbeiter an den einzelnen Standorten enthält (each Table.RowCount(_)).Group the table adding an aggregate column [Count] that contains the number of employees in each location (each Table.RowCount(_)).

Table.FuzzyGroup(
    Table.FromRecords(
        {
            [EmployeeID = 1, Location = "Seattle"],
            [EmployeeID = 2, Location = "seattl"],
            [EmployeeID = 3, Location = "Vancouver"],
            [EmployeeID = 4, Location = "Seatle"],
            [EmployeeID = 5, Location = "vancover"],
            [EmployeeID = 6, Location = "Seattle"],
            [EmployeeID = 7, Location = "Vancouver"]
        },
        type table [EmployeeID = nullable number, Location = nullable text]
    ),
    "Location",
    {"Count", each Table.RowCount(_)},
    [IgnoreCase = true, IgnoreSpace = true]
)
SpeicherortLocation AnzahlCount
SeattleSeattle 44
VancouverVancouver 33