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
solved is there a R code for group_by and combinations