अपडेट करें:
उपरोक्त सभी उत्तर बार-बार दिए गए मानों के लिए काम नहीं करेंगे, @ BenBolker का उत्तर duplicated()यह है कि यह हल करता है:
full_vector[!full_vector %in% searched_vector | duplicated(full_vector)]
मूल उत्तर:
यहां मैं इसके लिए एक छोटा सा कार्य लिखता हूं:
exclude_val<-function(full_vector,searched_vector){
found=c()
for(i in full_vector){
if(any(is.element(searched_vector,i))){
searched_vector[(which(searched_vector==i))[1]]=NA
}
else{
found=c(found,i)
}
}
return(found)
}
तो, चलो कहते हैं full_vector=c(1,2,3,4,1)औरsearched_vector=c(1,2,3) ।
exclude_val(full_vector,searched_vector)(4,1) वापस आएगा, हालांकि उपरोक्त उत्तर बस वापस आ जाएंगे (4)।
setdiffबेहतर है, क्योंकि यह एक ऑपरेशन में सब कुछ करता है, और केवल एक बार संशोधित वेक्टर का संदर्भ देता है।