Este es mi conjunto de datos de muestra
¿Cómo puedo añadir para cada identificador una nueva observación para el mes 10 de 2020 que sería la media del mes 8 de 2020 y del mes 9 de 2020?
He probado lo siguiente, sin embargo, casi funciona pero no asigna el nombre de la categoría al valor del id correspondiente y el promedio no se toma correctamente
egen year_m_id=group(year month) /* 127 & 128 correspond to 2020 month 8,9 */
global id=r(levels)
foreach id of global id{
generate tmp=category if id==`id'
local 2020_9=_N+1
set obs `2020_9'
local 2020_9=_N
replace id =`id' if _n==`2020_9'
sum value if year_m_id===127|year_m_id==128 & id == `id'
replace value = r(mean) if _n==`2020_9' & id == `id'
replace year = 2020 if _n==`2020_9'
replace month = 2020 if _n==`2020_9'
replace category = tmp if _n==`2020_9' & category=="" & _n==`2020_9'
drop tmp
}
1 votos
¿Puede enseñarnos qué ha probado hasta ahora?
0 votos
Por favor, vea mi edición