วิธีเปรียบเทียบเวกเตอร์สองตัวใน r (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อเปรียบเทียบเวกเตอร์สองตัวใน R:

 #check if two vectors are identical
identical(vector_1, vector_2)

#display items that are in both vectors
intersect(vector_1, vector_2)

#display items that are only in first vector, but not in second vector
setdiff(vector_1, vector_2)

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่างที่ 1: ตรวจสอบว่าเวกเตอร์สองตัวเหมือนกันหรือไม่

รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน เหมือนกัน () เพื่อตรวจสอบว่าเวกเตอร์สองตัวเหมือนกันหรือไม่:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#check if two vectors are identical
identical(vector_1, vector_2)

[1] FALSE

เวกเตอร์ทั้งสองไม่เหมือนกัน ดังนั้นจะส่งคืนค่า FALSE

ตัวอย่างที่ 2: ค้นหาองค์ประกอบที่มีอยู่ในเวกเตอร์ทั้งสอง

รหัสต่อไปนี้แสดงวิธีการใช้ฟังก์ชัน intersect() เพื่อแสดงองค์ประกอบที่มีอยู่ในเวกเตอร์ทั้งสอง:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in both vectors
intersect(vector_1, vector_2)

[1] “Bob” “Carl” “Doug”

องค์ประกอบทั้งสามที่มีอยู่ในเวกเตอร์ทั้งสองจะปรากฏขึ้น

นอกจากนี้เรายังสามารถใช้ฟังก์ชัน length() ได้หากต้องการทราบว่ามีองค์ประกอบ จำนวนเท่าใด ในเวกเตอร์ทั้งสอง:

 #find how many items exist in both vectors
length(intersect(vector_1, vector_2))

[1] 3

มีองค์ประกอบสามองค์ประกอบอยู่ในเวกเตอร์ทั้งสอง

ตัวอย่างที่ 3: ค้นหาองค์ประกอบที่มีอยู่ในเวกเตอร์เดียวเท่านั้น

รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน setdiff() เพื่อแสดงองค์ประกอบที่มีอยู่ในเวกเตอร์แรก แต่ไม่ใช่ในเวกเตอร์ที่สอง:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in first vector, but not in second vector
setdiff(vector_1, vector_2)

[1] “Andy”

มีองค์ประกอบเดียวในเวกเตอร์แรกที่ไม่มีอยู่ในเวกเตอร์ที่สอง

เราสามารถกลับเวกเตอร์ทั้งสองเพื่อระบุองค์ประกอบที่มีอยู่ในเวกเตอร์ที่สอง แต่ไม่ใช่ในเวกเตอร์แรก:

 #definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')

#display items that exist in second vector, but not in first vector
setdiff(vector_2, vector_1)

[1] “Ethan” “Fred”

มีองค์ประกอบสององค์ประกอบในเวกเตอร์ที่สองซึ่งไม่มีอยู่ในเวกเตอร์แรก

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

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:

วิธีเปรียบเทียบสองคอลัมน์ใน R
วิธีเปรียบเทียบสตริงใน R
วิธีเพิ่มค่าให้กับเวกเตอร์โดยใช้การวนซ้ำใน R

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

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