Hola, Sí, mira un par de alternativas con un data.frame de ejemplo para simular el conjunto de datos equivalente al que tienes..
#------------------------- library(dplyr) res_df <- my_df %>% group_by(pais_id) %>% mutate( gini_avg = mean(gini)) head(res_df) tail(res_df) library(data.table) my_dt <- as.data.table(my_df) my_dt[ , gini_avg := mean(gini), pais_id] my_dt #------------------------- Gracias, Carlos Ortega www.qualityexcellence.es El lun, 15 feb 2021 a las 16:59, Rolando Valdez (<rvald...@gmail.com>) escribió: > No funciona, solo genera el valor = 1 en las primeras 25 observaciones y > NAs en el resto. > > El dom, 14 de feb. de 2021 a la(s) 22:03, Ivan Corredor castillo ( > ivangcorred...@gmail.com) escribió: > > > Buenos días, > > Puedes intentar colocando el índice de las filas para cada país 1:25 y el > > índice de la columna 1. Los valores que colocó son de ejemplo, tienes que > > buscar el índice de las filas y de las columnas para que le asignes los > > valores creados por la función. > > > > db[1:25, 1]<- within(db, {mgini = ave(gini, id)} > > > > El dom., 14 de febrero de 2021 9:26 p. m., Rolando Valdez < > > rvald...@gmail.com> escribió: > > > >> Estimada comunidad: > >> > >> Estoy intentando generar una variable con el valor promedio del índice > de > >> gini en un rango de 25 años para un conjunto de 38 países. Esto en un > >> pdata.frame. Sin embargo, necesito que el valor promedio de cada país se > >> repita 25 veces en cada uno de estos. > >> > >> He intentado con la función aggregate tal como sigue: > >> > >> > db$mgini <- aggregate(db$gini, by = list(db$id), FUN = mean, na.rm = > >> TRUE) > >> Error in `$<-.data.frame`(x, name, value) : > >> replacement has 38 rows, data has 950 > >> > >> Con este último es que genera un valor para cada país. > >> > >> Después intenté con la función within, y al parecer sí obtengo el valor > >> medio repetido 25 veces en cada país, no obstante, no logro incorporarlo > >> en > >> el pdata.frame. > >> > >> > within(db, {mgini = ave(gini, id)}) > >> > >> ¿Alguna sugerencia? > >> > >> Gracias de antemano. > >> > >> -- > >> Rol~ > >> > >> [[alternative HTML version deleted]] > >> > >> _______________________________________________ > >> R-help-es mailing list > >> R-help-es@r-project.org > >> https://stat.ethz.ch/mailman/listinfo/r-help-es > >> > > > > -- > Rol~ > > [[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