如何在面板中查找变量的最大值

时间:2014-03-12 20:43:46

标签: r max performance

我有一个包含61个国家/地区名称的面板数据和一个名为tradeofgdp的变量,它表示gdp的交易比例。我想知道每个国家/地区的tradeofgdp(gdp的最大交易额)的最大值。我的数据目前看起来像这样:

country year    tradeofgdp
Algeria 1990    0.5
Algeria 1991    0.7
Algeria 1992    0.8
Algeria 1993    0.9
Algeria 1994    0.45
Egypt   1997    0.2
Egypt   1998    0.6
Egypt   1999    0.7
Egypt   2000    0.4
Egypt   2001    0.6
Egypt   2002    0.8
China   1990    0.5
China   1991    0.2
China   1992    0.3
China   1993    0.32
China   1994    0.4

我希望子集化后的数据如下所示:

country year    tradeofgdp
Algeria 1993    0.9
Egypt   2002    0.8
China   1990    0.5

是否有办法为每个国家/地区提取最大值?

1 个答案:

答案 0 :(得分:0)

此? (df是您的数据框)

merge(df,aggregate(tradeofgdp~country,df,max))
#   country tradeofgdp year
# 1 Algeria        0.9 1993
# 2   China        0.5 1990
# 3   Egypt        0.8 2002

如果某个国家/地区的最大值出现在多年内,您将获得该国家/地区的多条记录。