共用方式為


Table.AddFuzzyClusterColumn

語法

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

關於

將新資料行 newColumnName 新增至具有代表值 columnNametable。 您可以針對每個資料列,在 columnName 中模糊比對值來取得代表值。

或可選擇加入一組 options 以指定索引鍵資料行的比較方式。 這些選項包括:

  • Culture:允許根據文化特性特定規則來將記錄分組。 可以是任何有效的文化特性名稱。 例如,文化特性 (Culture) 選項 'ja-JP',會依據日文文化特性來將記錄分組。 預設值為 "",這會根據不變的英文文化特性進行分組。
  • IgnoreCase:允許不區分大小寫金鑰分組的邏輯 (true/false) 值。 例如,當為 true 時,"Grapes" 會與 "grapes" 分組在一起。 預設值為 True。
  • IgnoreSpace:允許結合文字部分以尋找群組的邏輯 (true/false) 值。 例如,當為 true 時,"Gra pes" 會與 "Grapes" 分組在一起。 預設值為 True。
  • SimilarityColumnName:資料行的名稱,這個資料行會顯示輸入值與該輸入代表值之間的相似性。 預設值為 Null,在這種情況下,將不會新增相似的新資料行。
  • Threshold:介於 0.00 和 1.00 之間的數字,指定兩個值分組在一起的相似性分數。 例如,只有在此選項設為 0.90 以下時,"Grapes" 和 "Graes" (缺少 "p") 才會分組在一起。 閾值 1.00 只允許完全相符。 (請注意,模糊的「完全相符」可能會忽略大小寫、文字順序和標點符號等差異。)預設值為 0.80。
  • TransformationTable:資料表,允許根據自訂值對應來將記錄分組。 應該包含 "From" 和 "To" 資料行。 例如,若轉換資料表中提供包含 "Grapes" 的 "From" 資料行及包含 "Raisins" 的 "To" 資料行,則 "Grapes" 會與 "Raisins" 分組在一起。 請注意,轉換會套用至轉換資料表中所有出現的文字。 使用上述的轉換資料表,"Grapes are sweet" 也會與 "Raisins are sweet" 分組在一起。

範例 1

尋找員工位置的代表值。

使用方式

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]
)

輸出

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]
)