मैं स्ट्रिंग इनपुट के साथ arrange_()
और अवरोही क्रम में कॉलम में से एक में उपयोग करने का प्रयास कर रहा हूं।arrange_() अवरोही क्रम के साथ एकाधिक कॉलम
#dynamic string
myCol <- "x"
#failed attempts
df1 %>% arrange_("grp", desc(myCol))
Error: incorrect size (1), expecting : 5
df1 %>% arrange_("grp", "desc(myCol)")
:Error: object 'myCol' not found
df1 %>% arrange(grp, -x)
df1 %>% arrange(grp, desc(x))
# grp x
# 1 1 6.16
# 2 1 3.39
# 3 1 2.82
# 4 2 9.17
# 5 2 4.35
मेरे मामले दूसरे कॉलम में एक स्ट्रिंग है:
library(dplyr) # R version 3.3.0 (2016-05-03) , dplyr_0.4.3
# data
set.seed(1)
df1 <- data.frame(grp = factor(c(1,2,1,2,1)),
x = round(runif(5,1,10), 2))
# grp x
# 1 1 3.39
# 2 2 4.35
# 3 1 6.16
# 4 2 9.17
# 5 1 2.82
नीचे मैं क्या हासिल करने की आवश्यकता है 0
मैं समान समाधान here मिलीं लेकिन वे यह काम कर सकता था:
df1 %>% arrange_(.dots = c("grp", "desc(myCol)"))
Error: object 'myCol' not found
Feels की तरह मैं कुछ बहुत स्पष्ट है, विचारों याद आ रही है?
हां, ये अच्छे विकल्प हैं, इच्छा है कि पेस्ट से बचने के लिए एक सुंदर समाधान था। – zx8754
@ zx8754 मैंने 'इंटरप 'के साथ एक विकल्प जोड़ा, लेकिन मुझे लगता है कि' पेस्ट 'वाला एक कॉम्पैक्ट – akrun
सहमत है, पेस्ट जाने का एक तरीका लगता है,' इंटरप 'इसे और भी खराब दिखता है (कोई अपराध नहीं)। – zx8754