[R-es] Pivot tables con data.table
Fernando Macedo
fermace en gmail.com
Sab Sep 3 19:23:39 CEST 2016
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!
--
Fernando Macedo
Más información sobre la lista de distribución R-help-es