[R-es] Matriz de Datos
Eric
ericconch@munoz @ending from gm@il@com
Vie Dic 7 05:49:07 CET 2018
Hola Rafael, con la librería data.table podrías hacerlo algo así:
library(data.table)
dat <- fread("tusdatos")
dat[,sum(Monto),by=.(D,Grupo)]
y obtener esto:
D Grupo V1
1: a 1 6.575
2: a 2 3.497
3: b 1 5.637
4: b 3 4.445
5: c 2 4.935
6: c 1 2.299
7: c 3 1.111
Ahí ya está calculado, luego lo puedes reordenar con dcast(dat2, D ~
Grupo, value.var="V1") y obtienes:
D 1 2 3
1: a 6.575 3.497 NA
2: b 5.637 NA 4.445
3: c 2.299 4.935 1.111
Que creo que es lo que necesitas.
Suerte !!!
Eric.
pd: aquí puedes ver como funciona dcast()
https://cran.r-project.org/web/packages/data.table/vignettes/datatable-reshape.html
On 06/12/2018 22:42, Rafael Saturno wrote:
> Hola Comunidad,
>
> Queria consultarles algo,
>
> Tengo una data con la siguiente estructura
>
> Descripcion Grupo Monto
> a 1 1.826
> a 2 3.497
> a 1 4.749
> b 1 3.999
> b 1 1.638
> b 3 4.445
> c 2 4.935
> c 1 2.299
> c 3 1.111
>
> Y quiero crear una matriz que a la fila tenga la descripcion y en la columna el grupo y en cada valor interno la suma del monto correspondiente,
>
> Es decir algo como
>
> Descripcion/Grupo 1 2 3
> a 6.575 3.497 0
> b 5.637 0 4.445
> c 2.299 4.935 1.111
>
> En excel lo haria con una tabla dinamica, hay alguna forma de hacerlo en R? esty utilizando un "for" pero tarda mucho
>
> Muchas Gracias
>
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
Más información sobre la lista de distribución R-help-es