मेरे पास निम्नलिखित 2 data.frames है:
a1 <- data.frame(a = 1:5, b=letters[1:5])
a2 <- data.frame(a = 1:3, b=letters[1:3])
मैं a1 है कि a2 नहीं है पंक्ति खोजना चाहता हूँ।
क्या इस प्रकार के ऑपरेशन के लिए एक अंतर्निहित फ़ंक्शन है?
(पीएस: मैंने इसके लिए एक समाधान लिखा था, मैं बस उत्सुक हूं कि अगर कोई पहले से ही एक और अधिक कोड बनाया गया है)
यहाँ मेरा समाधान है:
a1 <- data.frame(a = 1:5, b=letters[1:5])
a2 <- data.frame(a = 1:3, b=letters[1:3])
rows.in.a1.that.are.not.in.a2 <- function(a1,a2)
{
a1.vec <- apply(a1, 1, paste, collapse = "")
a2.vec <- apply(a2, 1, paste, collapse = "")
a1.without.a2.rows <- a1[!a1.vec %in% a2.vec,]
return(a1.without.a2.rows)
}
rows.in.a1.that.are.not.in.a2(a1,a2)
a2 <- data.frame(a = c(1:3, 1), b = c(letters[1:3], "c"))
:।a1
वही छोड़ दो । अब तुलना करके देखें। केवल सामान्य तत्वों को सूचीबद्ध करने के लिए उचित तरीका क्या विकल्प है यह पढ़ने में भी मेरे लिए स्पष्ट नहीं है।