Hola Miriam, df <- data.table(df) df[,.(Nueva=mean(Word.count, na.rm = TRUE)) , by=c("Product.id")]
df_out <- as.data.frame(df) Cuando creas "Nueva" en la sentencia anterior, aparece en el dataframe agregada y diferente cada grupo "Product.id". Es una de las ventajas de "data.table". En tu ejemplo, primero agregas y luego la adjuntas al dataframe. Saludos, Carlos Ortega www.qualityexcellence.es El 12 de septiembre de 2018, 13:54, Miriam Alzate <miriam.alz...@unavarra.es > escribió: > No es lo que busco..La idea es crear una variable nueva, por ejemplo > "Nueva", que sea la media de "Wordcount" agregada por "Product.Id". Pero > quiero que esta variable se añada a mi base de datos fusionandose > directamente por "Product.Id". > > Al hacerlo me da este error: > > Reviews.211216$Adjetives.Product<- aggregate(adj.x ~ Product.Id, > data=Reviews.211216, + FUN=mean) Error in `$<-.data.frame`(`*tmp*`, > Adjetives.Product, value = list(Product.Id = c("P104006", : replacement > has 143 rows, data has 65505 No me deja crear así directamente la variable. > > > El 12/09/2018 a las 13:45, Jesús Para Fernández escribió: > > No se si te he entendido muy bien, pero con data.table puedes hacer > > algo como esto: > > > > df <- data.table(df) > > df[,.(word.count=mean(variableimportante)),by=word.count] > > > > UN saludo > > Jesús > > ------------------------------------------------------------------------ > > *De:* R-help-es <r-help-es-boun...@r-project.org> en nombre de Miriam > > Alzate <miriam.alz...@unavarra.es> > > *Enviado:* miércoles, 12 de septiembre de 2018 13:38 > > *Para:* r-help-es > > *Asunto:* [R-es] Crear columna en data frame agregando otra y fusionando > > Buenas, > > > > Necesito crear una variable que viene de agregar otra por la media. El > > dataframe tiene 65000 obsrvaciones.Tengo estas variables > > > > Product.Id (145 diferentes) > > > > Word.Count > > > > Review.number > > > > Necesito agregar la variable Word.Count por Product.Id. Al agregarlo, > > tengo un data.frame de 2 variables y 145 observaciones pero en vez de > > tener que fusionar después por Product.Id los dos dataframe me gustaría > > saber si hay una forma más directa de hacerlo todo en la misma formula y > > que agregue Word.count por Product.Id y luego directamente fusione. > > > > Un saludo > > > > Miriam > > > > _______________________________________________ > > R-help-es mailing list > > R-help-es@r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > > -- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es