rdplyrcombn

is there a R code for group_by and combinations


Am kindly looking for R code that can calculate the combinations with 2, of the total in each group.

library(dplyr)
    id<-c(1,1,1,1,2,2,2,2,3,3,3,3)
    sex<-c(1,1,1,1,1,1,1,1,1,1,1,1)
    ds<-data.frame(id,sex)
    out1<-ds %>% group_by(id) %>% summarise(n=n())
    

My output should be

 id<-c(1,2,3)
    n<-c(4,4,4)
    ncomb2<-c(6,6,6)
    

Thankyou


Solution

  • I am not sure if the code below is what you are after

    out1 <- ds %>%
        group_by(id) %>%
        summarise(n = n()) %>%
        mutate(ncomb2 = choose(n,2))
    

    such that

    > out1
    # A tibble: 3 x 3
         id     n ncomb2
      <dbl> <int>  <dbl>
    1     1     4      6
    2     2     4      6
    3     3     4      6