İngilizce dilinde oku

Aracılığıyla paylaş


Table.FuzzyGroup

Sözdizimi

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

Hakkında

table satırlarını, her satır için keybelirtilen sütundaki bulanık eşleşen değerlere göre gruplandırır. Her grup için, aggregatedColumnstarafından belirtilen 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 nasıl karşılaştırılacağını belirtmek için isteğe bağlı bir options kümesi eklenebilir. Seçenekler şunlardır:

  • 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, doğru olduğunda, "Üzümler" "üzümler" ile aynı gruba dahil edilir. Varsayılan değer true değeridir.
  • IgnoreSpace: Grupları bulmak için metin bölümlerinin birleştirilmesine olanak tanıyan mantıksal (true/false) değer. Örneğin, doğru olduğunda, "Gra pes" "Üzümler" ile gruplandırılır. Varsayılan değer true değeridir.
  • 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ıdır. Örneğin, "Üzümler" ve "Graes" ("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. "Gönderen" ve "Giden" sütunları içermelidir. Örneğin, bir dönüştürme tablosunda "Kimden" sütununda "Üzüm" ve "Kime" sütununda "Kuru Üzüm" bulunuyorsa, "Üzüm", "Kuru Üzüm" 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 konumdaki çalışanların sayısını içeren bir toplama sütunu (each Table.RowCount(_)) 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]
})