Teilen über


Table.AddFuzzyClusterColumn

Syntax

Table.AddFuzzyClusterColumn(
    table as table,
    columnName as text,
    newColumnName as text,
    optional options as nullable record
) as table

About

Fügt eine neue Spalte newColumnNametable mit repräsentativen Werten von columnName. Die Vertreter werden von fuzzlig übereinstimmenden Werten in columnNamejeder Zeile abgerufen.

Ein optionaler Satz kann options eingeschlossen werden, um anzugeben, wie die Schlüsselspalten verglichen werden. Zu den Optionen gehören:

  • Culture: Ermöglicht das Gruppieren von Datensätzen basierend auf kulturspezifischen Regeln. Dabei kann es sich um einen beliebigen gültigen Kulturnamen handeln. Eine Kulturoption von "ja-JP" gruppiert Datensätze beispielsweise basierend auf der japanischen Kultur. Der Standardwert ist "", die auf der invarianten englischen Kultur basiert.
  • IgnoreCase: Ein logischer Wert (true/false), der die Groß-/Kleinschreibung der Schlüsselgruppierung zulässt. Wenn beispielsweise "true" lautet, wird "Trauben" mit "Trauben" gruppiert. Der Standardwert ist true.
  • IgnoreSpace: Ein logischer Wert (true/false), der das Kombinieren von Textteilen ermöglicht, um Gruppen zu finden. Wenn beispielsweise "true" lautet, wird "Gra pes" mit "Trauben" gruppiert. Der Standardwert ist true.
  • SimilarityColumnName: Ein Name für die Spalte, die die Ähnlichkeit zwischen einem Eingabewert und dem repräsentativen Wert für diese Eingabe anzeigt. Der Standardwert ist NULL, in diesem Fall wird keine neue Spalte für Ähnlichkeiten hinzugefügt.
  • Threshold: Eine Zahl zwischen 0,00 und 1,00, die die Ähnlichkeitsbewertung angibt, mit der zwei Werte gruppiert werden. Beispielsweise werden "Trauben" und "Graes" (fehlendes "p") nur gruppiert, wenn diese Option auf weniger als 0,90 festgelegt ist. Ein Schwellenwert von 1,00 lässt nur genaue Übereinstimmungen zu. (Beachten Sie, dass eine fuzzy "genaue Übereinstimmung" Unterschiede wie Groß-/Kleinschreibung, Wortreihenfolge und Interpunktion möglicherweise ignoriert.) Der Standardwert ist 0,80.
  • TransformationTable: Eine Tabelle, die das Gruppieren von Datensätzen basierend auf benutzerdefinierten Wertzuordnungen zulässt. Sie sollte die Spalten "Von" und "An" enthalten. Beispielsweise wird "Trauben" mit "Raisins" gruppiert, wenn eine Transformationstabelle mit der Spalte "From" mit "Trauben" und der Spalte "An" mit "Raisins" bereitgestellt wird. Beachten Sie, dass die Transformation auf alle Vorkommen des Texts in der Transformationstabelle angewendet wird. Mit der obigen Transformationstabelle wird "Trauben sind süß" auch mit "Raisins sind süß" gruppiert.

Beispiel 1

Suchen Sie die repräsentativen Werte für den Standort der Mitarbeiter.

Verwendung

Table.AddFuzzyClusterColumn(
    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",
    "Location_Cleaned",
    [IgnoreCase = true, IgnoreSpace = true]
)

Output

Table.FromRecords(
    {
        [EmployeeID = 1, Location = "Seattle", Location_Cleaned = "Seattle"],
        [EmployeeID = 2, Location = "seattl", Location_Cleaned = "Seattle"],
        [EmployeeID = 3, Location = "Vancouver", Location_Cleaned = "Vancouver"],
        [EmployeeID = 4, Location = "Seatle", Location_Cleaned = "Seattle"],
        [EmployeeID = 5, Location = "vancover", Location_Cleaned = "Vancouver"],
        [EmployeeID = 6, Location = "Seattle", Location_Cleaned = "Seattle"],
        [EmployeeID = 7, Location = "Vancouver", Location_Cleaned = "Vancouver"]
    },
    type table [EmployeeID = nullable number, Location = nullable text, Location_Cleaned = nullable text]
)