Table.FuzzyGroup

Sözdizimi

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

Hakkında

Satırlarını, her satır table için belirtilen sütundaki keyeşleşen değerlere göre gruplandırın. Her grup için, tarafından aggregatedColumnsbelirtilen tüm toplanmış sütunlarla birlikte anahtar sütunlarını (ve değerlerini) içeren bir kayıt oluşturulur. Bu işlev sabit bir satır sırası döndürmeyi garanti edemez.

Anahtar sütunların options nasıl karşılaştırılacağını belirtmek için isteğe bağlı bir küme eklenebilir. Seçenekler arasında bulunanlar:

  • Culture: Kayıtları kültüre özgü kurallara göre gruplandırmanıza izin verir. Herhangi bir geçerli kültür adı olabilir. Örneğin, "ja-JP" kültür seçeneği kayıtları Japon kültürüne göre gruplandırmaktadır. Varsayılan değer, Sabit İngilizce kültürüne göre gruplanan ""dir.
  • IgnoreCase: Büyük/küçük harfe duyarsız anahtar gruplandırmasına izin veren mantıksal (true/false) değer. Örneğin, true olduğunda, "Üzümler" "üzümler" ile gruplandırılır. Varsayılan değer doğru'dur.
  • IgnoreSpace: Grupları bulmak için metin bölümlerinin birleştirilmesine izin veren mantıksal (true/false) değer. Örneğin, true olduğunda, "Gra pes" "Üzümler" ile gruplandırılır. Varsayılan değer doğru'dur.
  • SimilarityColumnName: Giriş değeri ile bu girişin temsili değeri arasındaki benzerliği gösteren sütun adı. Varsayılan değer null değeridir ve bu durumda benzerlikler için yeni bir sütun eklenmez.
  • Threshold: İki değerin gruplandırılacağı benzerlik puanını belirten 0,00 ile 1,00 arasında bir sayı. Örneğin, "Üzümler" ve "Soslar" ("p" eksik) yalnızca bu seçenek 0,90'dan küçük olarak ayarlanmışsa birlikte gruplandırılır. 1,00 eşiği yalnızca tam eşleşmelere izin verir. (Benzer bir "tam eşleşme"nin büyük/küçük harf, sözcük sırası ve noktalama işaretleri gibi farkları yoksayabileceğini unutmayın.) Varsayılan değer 0,80'dir.
  • TransformationTable: Kayıtların özel değer eşlemelerine göre gruplandırılmasına izin veren tablo. "Kimden" ve "Son" sütunları içermelidir. Örneğin, "Üzümler", "Üzümler" içeren "Kimden" sütunu ve "Kuru Üzümler" içeren "To" sütunuyla birlikte bir dönüştürme tablosu sağlanırsa "Üzümler" ile gruplandırılır. Dönüştürmenin, dönüştürme tablosundaki metnin tüm oluşumlarına uygulanacağını unutmayın. Yukarıdaki dönüştürme tablosuyla "Üzümler tatlıdır" ifadesi de "Kuru üzümler tatlıdır" ile gruplandırılır.

Örnek 1

Her konumdakieach Table.RowCount(_) () çalışan sayısını içeren bir toplama sütunu [Count] ekleyerek tabloyu gruplandırın.

Kullanım

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

Çıkış

Table.FromRecords({
    [Location = "Seattle", Count = 4],
    [Location = "Vancouver", Count = 3]
})