Skip to content
Prev 10624 / 15380 Next

[R-es] Pivot tables con data.table

Buenas, estoy intentando hacer una especie de pivot tables con 
data.table pero no logro que me salga.

Este código refleja un poco lo que quiero


library(data.table)
set.seed(1234)
DT <- data.table(x=rep(c(1,2,3),each=30),
                  y=letters[sample(1:3,30,replace = T,)],
                  v=sample(1:100,30))
out <- DT[,list(N=.N),by=list(x,y)]

Eso genera una salida como esta:

      x y  N
1: 1 a  8
2: 1 b 10
3: 1 c 12
4: 2 a  8
5: 2 b 10
6: 2 c 12
7: 3 a  8
8: 3 b 10
9: 3 c 12


Que esta bien, pero lo que me interesa a mi es sacar una tabla con la 
siguiente estructura:

x  a b c
1 8 10 12
2 8 10 12
  ...

y así. Porque después quiero hacer frecuencias y me resulta más fácil 
para armar columnas de frecuencias seguidas de esas y queda mejor para 
presentar los datos también.

La verdad que he buscado pero no logro dar con la tecla de hacerlo en un 
solo paso en data.table, o de repente no la hay.

  Desde ya agradezco su ayuda.
Saludos!