วิธีการคำนวณระยะทางแฮมมิงใน python (พร้อมตัวอย่าง)


ระยะห่างของแฮมมิง ระหว่างเวกเตอร์สองตัวเป็นเพียงผลรวมขององค์ประกอบที่สอดคล้องกันซึ่งแตกต่างกันระหว่างเวกเตอร์

ตัวอย่างเช่น สมมติว่าเรามีเวกเตอร์สองตัวต่อไปนี้:

 x = [1, 2, 3, 4]

y = [1, 2, 5, 7]

ระยะห่างของ Hamming ระหว่างเวกเตอร์ทั้งสองจะเป็น 2 เนื่องจากนี่คือจำนวนรวมขององค์ประกอบที่ตรงกันซึ่งมีค่าต่างกัน

ในการคำนวณระยะทาง Hamming ระหว่างสองอาร์เรย์ใน Python เราสามารถใช้ฟังก์ชัน hamming() จากไลบรารี scipy.spatial.distance ซึ่งใช้ไวยากรณ์ต่อไปนี้:

 scipy. spatial . distance . hamming (array1, array2)

โปรดทราบว่าฟังก์ชันนี้จะส่งคืน เปอร์เซ็นต์ ขององค์ประกอบที่ตรงกันซึ่งแตกต่างกันระหว่างสองอาร์เรย์

ดังนั้น เพื่อให้ได้ระยะแฮมมิง เราสามารถคูณด้วยความยาวของตารางใดตารางหนึ่งได้:

 scipy. spatial . distance . hamming (array1, array2) * len (array1)

บทช่วยสอนนี้มีตัวอย่างการใช้งานฟังก์ชันนี้ในทางปฏิบัติหลายตัวอย่าง

ตัวอย่างที่ 1: ระยะห่างระหว่างไบนารีอาเรย์

รหัสต่อไปนี้แสดงวิธีการคำนวณระยะทาง Hamming ระหว่างสองอาร์เรย์ซึ่งแต่ละค่ามีเพียงสองค่าที่เป็นไปได้:

 from scipy. spatial . distance import hamming

#define arrays
x = [0, 1, 1, 1, 0, 1]
y = [0, 0, 1, 1, 0, 0]

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

2.0

ระยะห่างของแฮมมิงระหว่างทั้งสองโต๊ะคือ 2

ตัวอย่างที่ 2: ระยะห่างระหว่างอาร์เรย์ตัวเลข

รหัสต่อไปนี้แสดงวิธีการคำนวณระยะทาง Hamming ระหว่างสองอาร์เรย์ซึ่งแต่ละค่ามีค่าตัวเลขหลายค่า:

 from scipy. spatial . distance import hamming

#define arrays
x = [7, 12, 14, 19, 22]
y = [7, 12, 16, 26, 27]

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

3.0

ระยะห่างของแฮมมิงระหว่างสองโต๊ะคือ 3

ตัวอย่างที่ 3: ระยะห่างระหว่างอาร์เรย์สตริง

รหัสต่อไปนี้แสดงวิธีการคำนวณระยะทาง Hamming ระหว่างสองอาร์เรย์ซึ่งแต่ละค่ามีค่าอักขระหลายค่า:

 from scipy. spatial . distance import hamming 

#define arrays
x = ['a', 'b', 'c', 'd']
y = ['a', 'b', 'c', 'r']

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

1.0

ระยะห่างของแฮมมิงระหว่างสองโต๊ะคือ 1

แหล่งข้อมูลเพิ่มเติม

วิธีการคำนวณระยะทางแบบยุคลิดใน Python
วิธีการคำนวณระยะทาง Mahalanobis ใน Python
วิธีการคำนวณความคล้ายคลึงกันของ Jaccard ใน Python

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *