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@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
_______________________________________________
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es