मैं नए पैकेज का उपयोग कर रहा हूं, dplyr और कुछ कठिनाइयों का सामना कर रहा हूं।आर dplyr में उत्परिवर्तित/परिवर्तन (पास कस्टम फ़ंक्शन)
mutate(df,isOdd=digit%%2) or transform(df,isOdd=digit%%2)
दोनों जो पूरी तरह से काम करते हैं।
मैं कस्टम विधि पारित करने पर एक प्रश्न पूछ रहा हूं।
IsItOdd <- function(x) {
if(x%%2==0)
result<-"even"
else
result<-"odd"
return(result)
}
transform(df,isOdd=IsItOdd(digit))
यह काम नहीं करता है क्योंकि सभी अंकों का पूरा कॉलम फ़ंक्शन पर पास हो जाता है। क्या इस काम को पूरे कॉलम के बजाए फ़ंक्शन में बस एक सेल से गुजरने का कोई तरीका है?
'बदलने (df, isOdd = vapply (अंकों, IsItOdd," "))' या 'बदलने (, आईएसओ dd = vectorize (IsItOdd) (अंक)) '? – lukeA