r - 如何计算 R 中数据框中时间序列的多个平均值?
问题描述
我对 R 很陌生,并且正在努力解决以下问题:
Country.Name variable Quantity
1 World 1977 2524966
2 World 1978 2552326
3 World 1979 2710504
4 World 1980 2732926
5 World 1981 2636113
6 World 1982 2803907
7 World 1983 2778356
8 World 1984 2693296
9 World 1985 2695397
10 World 1986 2747397
(...)
30 World 2006 3100186
对于 df$Quantity (numeric) 我想计算两个单独的平均值,从 (1) 1977 到 1991 和从 (2) 1992 到 2006。进一步的搜索并没有帮助我解决这个问题,所以我很高兴听到如果有人能帮我解决这个问题!
最好的,詹尼斯
解决方案
这是一个基本的 R 选项:
aggregate(df$Quantity,
by=list(ifelse(df$variable >= 1977 & df$variable <= 1991, 0, 1)),
FUN=mean)
这将 1977 年到 1991 年(包括两端)的行存储到零存储桶中,将所有其他年份存储到 1 存储桶中。然后,aggregate
找到属于两个存储桶的所有行的平均值。
推荐阅读
- java - 使用 ViewPager 从 Activity 更改 Fragment TextView
- java - recyclerview 项目的不需要的选择
- javascript - 从 n 位数组中返回 k 位数字的函数
- java - 使用正则表达式使用 Decimal 验证货币
- python - 通过 sqlalchemy 访问存储过程
- python - 如何计算分组数据框中类别的非零值
- python - 使用 uwsgi 服务器作为 socketio 客户端
- azure - 在 Azure AppServicePlan 上部署 Azure Webjobs 的最佳方式
- react-native - 如何在本地反应中获取社交登录国家/地区?
- .net - 解密.net加密字符串中的Swift问题