Respostas:
No R, você pode fazer isso usando o rep
comando:
tab <- data.frame(value=c(1, 2, 3, 4, 5), freq=c(2, 1, 4, 2, 1))
vec <- rep(tab$value, tab$freq)
Isso fornece o seguinte resultado:
> tab
value freq
1 1 2
2 2 1
3 3 4
4 4 2
5 5 1
> vec
[1] 1 1 2 3 3 3 3 4 4 5
Para detalhes, consulte o arquivo de ajuda do rep
comando digitando ?rep
.
Obviamente em R é mais simples.
No Excel, eu usaria uma coluna auxiliar (se o valor estiver em A1):
value freq help
1 1 2 =REPT(A2 & ", ",B2)
2 2 1 =C1 & REPT(A3 & ", ",B3)
3 3 4 (drag or copy from upper cell)
4 4 2 (drag or copy from upper cell)
5 5 1 (drag or copy from upper cell)
=LEFT(C6, LEN(C6)-1)
Em C7 você tem o seu resultado
vec <- sample(1:5, 20, TRUE)
criado portable()
:rep(names(table(vec)), table(vec))
. O resultado precisa ser convertido comas.numeric()
se as categorias forem números reais.