Table.AddFuzzyClusterColumn
Sintaxe
Table.AddFuzzyClusterColumn(table as table, columnName as text, newColumnName as text, optional options as nullable record) as table
Sobre nós
Adiciona uma nova coluna newColumnName
a table
com valores representativos de columnName
. Os representantes são obtidos através da correspondência aproximada de valores em columnName
para cada linha.
Um conjunto opcional de options
pode ser incluído para especificar como comparar as colunas de chave. As opções incluem:
-
Culture
: Permite agrupar registros com base em regras específicas da cultura. Pode ser qualquer nome de cultura válido. Por exemplo, uma opção Cultura de "ja-JP" agrupa registros baseados na cultura japonesa. O valor padrão é "", que agrupa com base na cultura inglesa invariante. -
IgnoreCase
: Um valor lógico (verdadeiro/falso) que permite o agrupamento de chaves que não diferencia maiúsculas de minúsculas. Por exemplo, quando verdadeiro, "Uvas" é agrupado com "uvas". O valor padrão é true. -
IgnoreSpace
: Um valor lógico (verdadeiro/falso) que permite a combinação de partes de texto para encontrar grupos. Por exemplo, quando verdadeiro, "Gra pes" é agrupado com "Uvas". O valor padrão é true. -
SimilarityColumnName
: Um nome para a coluna que mostra a semelhança entre um valor de entrada e o valor representativo para essa entrada. O valor padrão é null, caso em que uma nova coluna para semelhanças não será adicionada. -
Threshold
: Um número entre 0,00 e 1,00 que especifica a pontuação de semelhança na qual dois valores serão agrupados. Por exemplo, "Uvas" e "Graes" (faltando o "p") são agrupados apenas se esta opção estiver definida como inferior a 0,90. Um limite de 1,00 só permite correspondências exatas. (Observe que uma "correspondência exata" difusa pode ignorar diferenças como invólucro, ordem das palavras e pontuação.) O valor padrão é 0,80. -
TransformationTable
: Uma tabela que permite agrupar registros com base em mapeamentos de valores personalizados. Deve conter as colunas "De" e "Para". Por exemplo, "Uvas" e "Passas" são agrupadas se for fornecida uma tabela de transformação com a coluna "De" a conter "Uvas" e a coluna "Para" a conter "Passas". Observe que a transformação será aplicada a todas as ocorrências do texto na tabela de transformação. Com a tabela de transformação acima, "As uvas são doces" também serão agrupadas com "As passas são doces".
Exemplo 1
Encontre os valores representativos para a localização dos funcionários.
Utilização
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]
)
Saída
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]
)