วิธีเปรียบเทียบสามคอลัมน์ใน r (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อเปรียบเทียบค่าของสามคอลัมน์ใน R:
df$all_matching <- df$A == df$B & df$B == df$C
ไวยากรณ์นี้จะสร้างคอลัมน์ใหม่ที่เรียกว่า all_matching ซึ่งจะส่งคืน TRUE หากคอลัมน์ทั้งหมดมีค่าที่ตรงกัน มิฉะนั้นจะส่งคืน FALSE
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: เปรียบเทียบสามคอลัมน์ใน R
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R โดยมีสามคอลัมน์:
#create data frame df <- data. frame (A=c(4, 0, 3, 3, 6, 8, 7, 9, 12), B=c(4, 2, 3, 5, 6, 4, 7, 7, 12), C=c(4, 0, 3, 5, 5, 10, 7, 9, 12)) #view data frame df ABC 1 4 4 4 2 0 2 0 3 3 3 3 4 3 5 5 5 6 6 5 6 8 4 10 7 7 7 7 8 9 7 9 9 12 12 12
เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างคอลัมน์ใหม่ที่เรียกว่า all_matching ซึ่งจะคืนค่า TRUE หากคอลัมน์ทั้งสามตรงกันในแถวที่กำหนด และ FALSE หากไม่ตรงกัน:
#create new column that checks if values in all three columns match df$all_matching <- df$A == df$B & df$B == df$C #view updated data frame df ABC all_matching 1 4 4 4 TRUE 2 0 2 0 FALSE 3 3 3 3 TRUE 4 3 5 5 FALSE 5 6 6 5 FALSE 6 8 4 10 FALSE 7 7 7 7 TRUE 8 9 7 9 FALSE 9 12 12 12 TRUE
คอลัมน์ใหม่ที่เรียกว่า all_matching ระบุว่าค่าในสามคอลัมน์ตรงกันในแถวที่กำหนดหรือไม่
ตัวอย่างเช่น:
- ค่าทั้งสามค่าตรงกันในแถวแรก ดังนั้น TRUE จะถูกส่งกลับ
- ค่าบางค่าไม่ตรงกันในแถวที่สอง ดังนั้นจึงส่งคืน FALSE
- ค่าทั้งสามค่าตรงกันในแถวที่สาม ดังนั้น TRUE จะถูกส่งกลับ
และอื่นๆ
หากคุณต้องการส่งกลับค่าอื่นที่ไม่ใช่ TRUE และ FALSE คุณสามารถระบุค่าเหล่านี้ในฟังก์ชัน ifelse()
ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อส่งคืน “Yes” หากค่าในคอลัมน์ทั้งสามตรงกันหรือ “No” มิฉะนั้น:
#create new column that checks if values in all three columns match df$all_matching <- ifelse(df$A == df$B & df$B == df$C, ' Yes ', ' No ') #view updated data frame df ABC all_matching 1 4 4 4 Yes 2 0 2 0 No 3 3 3 3 Yes 4 3 5 5 No 5 6 6 5 No 6 8 4 10 No 7 7 7 7 Yes 8 9 7 9 No 9 12 12 12 Yes
คอลัมน์ใหม่จะส่งกลับ “ใช่” หรือ “ไม่ใช่” แทน TRUE หรือ FALSE
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:
วิธีตรวจสอบว่ามีคอลัมน์อยู่ใน data frame ใน R หรือไม่
วิธีตรวจสอบว่าคอลัมน์มีสตริงใน R หรือไม่
วิธีเพิ่มคอลัมน์ใน data frame ใน R ตามคอลัมน์อื่น