将分析权重应用于时间序列数据

时间:2016-01-03 19:56:24

标签: r time-series stata

我想将分析权重应用于某些时间序列数据,但我不知道如何在R中执行此操作。我正在转录一些Stata代码,代码使用collapse和{ {1}}。

Stata Code

[aweight='weightVar']

如何将分析权重应用于下面collapse temp [aweight='weightVar], by(year); 的数据作为每年每个ID的croparea的加权变量?

示例数据

temp

1 个答案:

答案 0 :(得分:2)

感谢您提供样本数据!这使事情变得更容易。

Stata collapseR functions aggregate or ddply类似。您似乎希望按croparea分组的temp加权(id)加权。

For weighted means in R see this SO question;我将采用最佳解决方案并将其应用于您的数据:

library(plyr)
ddply(df, .(id), function(x) data.frame(wtempmean=weighted.mean(x$temp, x$croparea)))

  id wtempmean
1  1  59.28554
2  2  59.28554