代码之家  ›  专栏  ›  技术社区  ›  moodymudskipper

按所有变量计数/与dplyr不同的计数

  •  2
  • moodymudskipper  · 技术社区  · 6 年前

    说我有这个 data.frame 以下内容:

    library(dplyr)
    df1 <- data.frame(x=rep(letters[1:3],1:3),y=rep(letters[1:3],1:3))
    #   x y
    # 1 a a
    # 2 b b
    # 3 b b
    # 4 c c
    # 5 c c
    # 6 c c
    

    我可以通过说出名字来方便地分组和计数:

    df1 %>%
      count(x,y)
    # A tibble: 3 x 3
    #        x      y     n
    #   <fctr> <fctr> <int>
    # 1      a      a     1
    # 2      b      b     2
    # 3      c      c     3
    

    我如何做每一件事而不提及个别列名,以最紧凑/易读的方式?

    df1 %>% count(everything()) df1 %>% count(vars(everything())) 不要工作。

    1 回复  |  直到 6 年前
        1
  •  3
  •   moodymudskipper    6 年前

    我们可以将输入本身传递给 ... 论证并将其与 !!! 以下内容:

    df1 %>% count(!!!.) 
    # # A tibble: 3 x 3
    #        x      y     n
    #   <fctr> <fctr> <int>
    # 1      a      a     1
    # 2      b      b     2
    # 3      c      c     3
    

    注意:请参见编辑历史记录以理解某些注释