dplyr计数没有qoutes

时间:2018-03-06 20:10:04

标签: r shiny dplyr

我想知道为什么dplyr会将此产生为两个不同的输出

df <- data.frame("A" = 1:10, "B" = 1:10, "C" = 1:10)    
df %>% select("A") %>%  count("A")
# A tibble: 1 x 2
  `"A"`     n
  <chr> <int>
1 A        10


df %>% select(A) %>%  count(A)
# A tibble: 10 x 2
       A     n
   <int> <int>
 1     1     1
 2     2     1
 3     3     1
 4     4     1
 5     5     1
 6     6     1
 7     7     1
 8     8     1
 9     9     1
10    10     1

在这种情况下,我需要第二个。我正在建立一个闪亮的应用程序,其名称带有

selectInput("variables", 
                  choices = names(df), 
                  selected = "A", 
                  multiple = TRUE)

然后使用此输入创建一个包含df %>% select(input$variables) %>% count(input$variables)的摘要表,但结果是第一个输出。

1 个答案:

答案 0 :(得分:1)

使用最新版本的dplyr(&gt; 0.7),您应该使用新的tidyeval语法。

# varname <- input$variables
varname <- "A"
df %>% select(!!as.name(varname)) %>%  count(!!as.name(varname))