दिलचस्प पोस्ट
एक जावा मानचित्र में अधिकतम मूल्य के साथ जुड़े कुंजी ढूँढना सी ++ ईस्ट्रीम फेलबिट और बैडबिट Django के माध्यम से जावास्क्रिप्ट को पायथन डेटा पास करना प्रतिलिपि के बदले किसी ऑब्जेक्ट के लिए एक const संदर्भ लौट रहा है टुकड़ों के बीच डेटा कैसे पास करें आईफ़ोन एसडीके के साथ FTP के माध्यम से अपलोड करना और डाउनलोड करना एएससीआईआई कला रूपांतरण की छवि रिक्त स्थान के साथ std :: cin इनपुट? जावा में स्ट्रिंगबइल्डर का उपयोग कब करना 'बटन' के 'क्लिक' ईवेंट के सभी ईवेंट हैंडलर्स को कैसे निकालना संभव होगा? क्यों सी / सी ++ का "एक बार" एक आईएसओ मानक नहीं है? अन्य स्क्रिप्ट पूर्ण होने से पहले एक अन्य PHP स्क्रिप्ट पर कॉल करें और उपयोगकर्ता को वापस नियंत्रण दें लैम्ब्डा मेटाटेक्टीक के साथ जावा एक्सेस बीन मेथड निर्धारित करें कि एक प्रकार एक संकलित समय पर एक एसटीएल कंटेनर है एसवीजी बिटमैप छवियों का समर्थन एम्बेड करता है?

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 

Solutions Collecting From Web of "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