Replicar cada linha de data.frame e especificar o número de replicações para cada linha?

Estou programando em R e tenho o seguinte problema:

Eu tenho uma string de dados jb, que é bastante longa. Aqui está uma versão simples:

jb:    a     b     frequency               jb.expanded: a    b   
       5     3        2                                 5    3
       5     7        1                                 5    3
       9     1        40                                5    7
       12    4        5                                 9    1
       12    5        13                                9    1
                                                        ...  ...   

Eu quero replicar as linhas e a frequência da replicação é a frequência da coluna. Isso significa que a primeira linha é replicada duas vezes, a segunda linha é replicada uma vez e assim por diante. Eu já resolvi esse problema com o código

jb.expanded <- jb[rep(row.names(jb), jb$freqency), 1:2] 

Agora, aqui está o problema:

Sempre que qualquer número no canto de frequência for maior que 10, o número de colunas replicadas está errado. Por exemplo:

Frequency: 43 --> 14 columns
           40 --> 13 columns
           13 --> 11 columns
           14 --> 12 columns

Pode me ajudar? Eu não tenho ideia de como consertar isso, eu também não consigo encontrar nada na internet.

Obrigado pela ajuda!

questionAnswers(3)

yourAnswerToTheQuestion