我试图计算不同群体的平均值,但是留下观察者自己的群体。
我的数据如下:
library(dplyr)
df <- tribble(
~year, ~country, ~value,
2001, "France", 150,
2002, "France", 53,
2003, "France", 31,
2004, "France", 10,
2005, "France", 30,
2006, "France", 37,
2007, "France", 54,
2008, "France", 58,
2009, "France", 50,
2010, "France", 40,
2011, "France", 49,
2001, "USA", 55,
2002, "USA", 53,
2003, "USA", 64,
2004, "USA", 70,
2005, "USA", 80,
2006, "USA", 160,
2007, "USA", 55,
2008, "USA", 53,
2009, "USA", 71,
2010, "USA", 11,
2011, "USA", 10,
2001, "GBR", 12,
2002, "GBR", 8,
2003, "GBR", 7,
2004, "GBR", -5,
2005, "GBR", NA,
2006, "GBR", NA,
2007, "GBR", NA,
2008, "GBR", 5,
2009, "GBR", 12,
2010, "GBR", 16,
2011, "GBR", 25
)
我有一个平衡的面板数据集,因此所有国家的年份都相同。
我想定义一个新列,其中包含来自其他两个国家/地区的值的平均值。
因此2001, "France"
的值为33.5,平均值为55(来自2001, "USA"
)和12(来自2001, "GBR"
)。我杂乱的现实生活中的数据集要大得多,所以手工做这个并不是一个好主意。