दिलचस्प पोस्ट
मैं उल्का क्षुधा के बीच मोंगोडीबी संग्रह कैसे साझा कर सकता हूं? लॉगिन / लॉगआउट के साथ डेल्फी आवेदन – कैसे लागू करने के लिए? पायथन में स्विच स्टेटमेंट के लिए प्रतिस्थापन? Jquery / ajax का उपयोग करके div में सामग्री को ताज़ा / पुनः लोड करें ट्रान्सेंडैंटल समीकरण के समाधान की सटीकता में वृद्धि presentViewController: IOS पर क्रैश <6 (ऑटोलेआउट) कमांड लाइन से शानदार टेस्ट (Win7) रेगेक्स मुद्रा सत्यापन पीडीएफ फाइल में वॉटरमार्क कैसे जोड़ें? विंडोज़ 64-बिट रजिस्ट्री बनाम 32-बिट रजिस्ट्री कार्यों के लिए क्लिक करने योग्य लिंक के साथ IOS UITextView या UILabel क्या आप सी # कोड में एक मूल अपवाद पकड़ सकते हैं? जावा के साथ XSLT प्रसंस्करण? स्कला में अंडरस्कोर के सभी उपयोग क्या हैं? एंगल 1.6 में सरल हैश (# /) के बजाय यूआरएल हैश-बैंग (#! /) उपसर्ग

dplyr: "n () में त्रुटि: फ़ंक्शन को सीधे नहीं बुलाया जाना चाहिए"

मैं dplyr पैकेज में उदाहरणों में से एक को पुन: उत्पन्न करने का प्रयास कर रहा हूं, लेकिन यह त्रुटि संदेश। मुझे उम्मीद है कि प्रत्येक संयोजन की आवृत्ति के साथ उत्पादित एक नया कॉलम n। क्या कोई मुझे बता सकता है कि मुझे क्या याद आ रहा है? मैंने ट्रिपल की जांच की कि पैकेज भरी हुई है। हमेशा की तरह, मदद के लिए धन्यवाद

library(dplyr) # summarise peels off a single layer of grouping by_vs_am <- group_by(mtcars, vs, am) by_vs <- summarise(by_vs_am, n = n()) #Error in n() : This function should not be called directly 

वेब के समाधान से एकत्रित समाधान "dplyr: "n () में त्रुटि: फ़ंक्शन को सीधे नहीं बुलाया जाना चाहिए""

मैं मानता हूं कि आपके पास एक ही सत्र में dplyr और plyr लोड किए गए हैं। dplyr नहीं है ddply dplyr पैकेज में कोई फ़ंक्शन नहीं है

दोनों dplyr और plyr कार्यों के summarise / summarize

मुखौटे वाली वस्तुओं को देखने के लिए conflicts() के परिणाम देखें

जैसा कि पिछले उत्तर के अनुसार वर्णित है, आपके पास पीलीर और डीप्टर के बीच एक संघर्ष हो सकता है। आप plyr पैकेज को अनलोड करने के लिए यह आदेश चला सकते हैं।

 detach("package:plyr", unload=TRUE) 

तो आप अपेक्षा के अनुसार जारी रख सकते हैं

 library(dplyr) ... summarise(n = n()) 

मास्किंग फ़ंक्शंस से भ्रम से बचने के लिए, यह "पैकेज :: फ़ंक्शन" विनिर्देश का उपयोग करने के लिए स्पष्ट है, जैसे नीचे दिए गए उदाहरण:

 delay <- dplyr::summarise(by_tailnum, count = n(), dist = mean(distance, na.rm = TRUE), delay = mean(arr_delay, na.rm = TRUE)) 

दूसरे मामले में, यह त्रुटि निम्न कोड में हुई है।

 library(dplyr) # dplyr 0.5.0 library(lazyeval) df <- data_frame(group = c(1, 2, 2, 3, 3, 3)) g <- "group" df %>% group_by_(g) %>% summarise_( n = n(), sum = interp(~sum(col, na.rm = TRUE), col = as.name(g)) ) # Error in n() : This function should not be called directly 

इसे निम्नानुसार हल किया जा सकता है

 df %>% group_by_(g) %>% summarise_( n = "n()", sum = interp(~sum(col, na.rm = TRUE), col = as.name(g)) ) # A tibble: 3 × 3 # group n sum # <dbl> <int> <dbl> # 1 1 1 1 # 2 2 2 4 # 3 3 3 9