Como numerar / rotular tabela de dados por número de grupo de group_by?

Eu tenho um tbl_df onde eu querogroup_by(u, v) para cada combinação inteira distinta observada com(u, v).

EDITAR: isso foi resolvido adicionandogroup_indices() de voltadplyr 0.4.0

a) Desejo então atribuir a cada grupo distinto algum número arbitrário distinto = 1,2,3 ... por exemplo a combinação (u, v) == (2,3) pode obter o rótulo 1, (1,3) pode obter 2 e assim por diante. Como fazer isso com ummutate(), sem três etapas de resumir e participar automaticamente?

O dplyr tem uma função eleganten(), mas isso fornece o número de elementosdentro seu grupo, não o conjuntonúmero do grupo. Nodata.table isso seria simplesmente chamado.GRP.

b) Na verdade, o que eu realmente quero atribuir a um rótulo de string / caractere ('A', 'B', ...). Mas numerar grupos por números inteiros é bom o suficiente, porque eu posso usarinteger_to_label(i) como abaixo. A menos que haja uma maneira inteligente de mesclar esses dois? Mas não se preocupe com essa parte.

set.seed(1234)

# Helper fn for mapping integer 1..26 to character label
integer_to_label <- function(i) { substr("ABCDEFGHIJKLMNOPQRSTUVWXYZ",i,i) }

df <- tbl_df(data.frame(u=sample.int(3,10,replace=T), v=sample.int(4,10,replace=T)))

# Want to label/number each distinct group of unique (u,v) combinations
df %>% group_by(u,v) %>% mutate(label = n()) # WRONG: n() is number of element within its group, not overall number of group

   u v
1  2 3
2  1 3
3  1 2
4  2 3
5  1 2
6  3 3
7  1 3
8  1 2
9  3 1
10 3 4

KLUDGE 1: could do df %>% group_by(u,v) %>% summarize(label = n()) , then self-join

questionAnswers(5)

yourAnswerToTheQuestion