Share via


Table.AddFuzzyClusterColumn

ไวยากรณ์

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

เกี่ยวกับ

เพิ่มคอลัมน์newColumnNameใหม่ไปยัง table ด้วยค่าตัวแทนของcolumnName ได้ตัวแทนจากการจับคู่ค่าแบบไม่เต็มมุมใน columnNameสําหรับแต่ละแถว

อาจรวมชุด options ที่เลือกได้ เพื่อระบุวิธีการเปรียบเทียบคอลัมน์คีย์ ตัวเลือกมีดังนี้

  • Culture: อนุญาตให้จัดกลุ่มระเบียนตามกฎเฉพาะของวัฒนธรรม ซึ่งอาจเป็นชื่อวัฒนธรรมที่ถูกต้อง ตัวอย่างเช่น ตัวเลือกวัฒนธรรมของ "ja-JP" จะจัดกลุ่มระเบียนตามวัฒนธรรมญี่ปุ่น ค่าเริ่มต้นคือ "" ซึ่งจัดกลุ่มตามวัฒนธรรมอังกฤษที่ไม่แปรเปลี่ยน
  • IgnoreCase: ค่าตรรกะ (จริง/เท็จ) ที่อนุญาตให้มีการจัดกลุ่มคีย์แบบไม่ตรงตามตัวพิมพ์ใหญ่-เล็ก ตัวอย่างเช่น เมื่อเป็นจริง "Grapes" จะถูกจัดรวมกลุ่มกับ "grapes" ค่าเริ่มต้นคือ จริง
  • IgnoreSpace: ค่าตรรกะ (จริง/เท็จ) ที่อนุญาตให้มีการรวมส่วนของข้อความเพื่อค้นหากลุ่ม ตัวอย่างเช่น เมื่อเป็นจริง "Gra pes" จะถูกจัดรวมกลุ่มกับ "Grapes" ค่าเริ่มต้นคือ จริง
  • SimilarityColumnName: ชื่อสําหรับคอลัมน์ที่แสดงความคล้ายคลึงกันระหว่างค่าอินพุตและค่าตัวแทนสําหรับอินพุตนั้น ค่าเริ่มต้นเป็น null ซึ่งในกรณีนี้จะไม่มีการเพิ่มคอลัมน์ใหม่สําหรับความคล้ายคลึงกัน
  • Threshold: ตัวเลขระหว่าง 0.00 และ 1.00 ที่ระบุคะแนนความคล้ายคลึงกันที่จะจัดกลุ่มค่าสองค่า ตัวอย่างเช่น "Grapes" และ "Graes" ("p" หายไป) จะถูกจัดกลุ่มเข้าด้วยกันก็ต่อเมื่อตั้งค่าตัวเลือกนี้น้อยกว่า 0.90 ค่าเกณฑ์ 1.00 จะอนุญาตให้จับคู่ตรงกันทั้งหมดเท่านั้น (โปรดทราบว่า "การจับคู่ที่แน่นอน" แบบไม่ชัดเจนอาจละเว้นความแตกต่าง เช่น การกําหนดลําดับคํา และเครื่องหมายวรรคตอน) ค่าเริ่มต้นคือ 0.80
  • TransformationTable: ตารางที่อนุญาตให้จัดกลุ่มระเบียนโดยยึดตามการแมปค่าแบบกําหนดเอง ซึ่งควรประกอบด้วยคอลัมน์ "From" และ "To" ตัวอย่างเช่น "Grapes" จัดรวมกลุ่มกับ "Raisins" ถ้ามีตารางการแปลงที่มีคอลัมน์ "From" ที่มี "Grapes" และคอลัมน์ "To" ที่มี "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]
)