Table.AddFuzzyClusterColumn
Sintassi
Table.AddFuzzyClusterColumn(table as table, columnName as text, newColumnName as text, optional options as nullable record) as table
Informazioni su
Aggiunge una nuova colonna newColumnName
a table
con valori rappresentativi di columnName
. I valori rappresentativi vengono ottenuti mediante la corrispondenza fuzzy dei valori in columnName
, per ogni riga.
È possibile includere un set facoltativo di options
per specificare la modalità di confronto delle colonne chiave. Le opzioni includono:
-
Culture
: consente di raggruppare i record in base a regole specifiche delle impostazioni cultura. Può essere qualsiasi nome di impostazioni cultura valido. Ad esempio, con l'opzione Culture "ja-JP" i record vengono raggruppati in base alle impostazioni cultura Giapponese. Il valore predefinito è "", che esegue il raggruppamento in base alle impostazioni cultura Inglese invariante. -
IgnoreCase
: valore logico (true/false) che consente il raggruppamento di chiavi senza distinzione tra maiuscole e minuscole. Ad esempio, se true, "Uva" viene raggruppato con "uva". Il valore predefinito è true. -
IgnoreSpace
: valore logico (true/false) che consente la combinazione di parti di testo per trovare i gruppi. Ad esempio, se true, "U va" viene raggruppato con "Uva". Il valore predefinito è true. -
SimilarityColumnName
: nome della colonna che mostra la somiglianza tra un valore di input e il valore rappresentativo per tale input. Il valore predefinito è Null, nel qual caso non verrà aggiunta una nuova colonna per le somiglianze. -
Threshold
: numero compreso tra 0,00 e 1,00 che specifica il punteggio di somiglianza in corrispondenza del quale verranno raggruppati due valori. Ad esempio, "Uva" e "Uv" (senza la "a") vengono raggruppati solo se questa opzione è impostata su meno di 0,90. Una soglia di 1,00 consente solo corrispondenze esatte. Si noti che una "corrispondenza esatta" fuzzy potrebbe ignorare le differenze, ad esempio maiuscole e minuscole, ordine delle parole e punteggiatura. Il valore predefinito è 0,80. -
TransformationTable
: tabella che consente il raggruppamento di record in base ai mapping di valori personalizzati. Deve contenere le colonne "From" e "To". Ad esempio, "Uva" viene raggruppato con "Uva passa" se si specifica una tabella di trasformazione in cui la colonna "From" contiene "Uva" e la colonna "To" contiene "Uva passa". Si noti che la trasformazione verrà applicata a tutte le occorrenze del testo nella tabella di trasformazione. Con la tabella di trasformazione precedente, "Uva è dolce" sarà raggruppato anche con "Uva passa è dolce".
Esempio 1
Trovare i valori rappresentativi per la posizione dei dipendenti.
Utilizzo
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]
)