快速R问题:我有一个类似如下的数据集:
Outlet weekday visitors Month
jackInthebox Monday 10 July
jackInthebox Monday 11 July
jackInthebox Tues 15 July
jackInthebox Tues 16 July
jackInthebox Wed 30 July
jackInthebox Wed 28 July
KFC Monday 50 July
KFC Monday 53 July
KFC Tues 60 July
KFC Tues 64 July
KFC Wed 30 July
KFC Wed 31 July我想做一个移动平均预测,但先按星期几分组,然后按网点分组。因此,获取下5个星期一和下5个星期二的jackinthebox的预测,以此类推。这是针对每个插座的。并且希望添加一个outlet标签和星期几标签,这样我就能知道哪个属于哪个。
现在,我正尝试在for循环中这样做,但遇到了它的分组部分的问题。
同样,我们的目标是做一个滚动平均预测,但基于星期几和月份(忘记包括在内)。有多个网点和月份)对于每个网点
任何帮助都将是伟大的!!
发布于 2017-08-18 00:26:02
如果没有5,则roll计算5或更小的滚动平均值。ave将其应用于每个组。
library(zoo)
roll <- function(x) rollapplyr(x, 5, mean, partial = TRUE)
transform(DF, ma = ave(visitors, Outlet, weekday, Month, FUN = roll))结果将ma列添加到输入:
Outlet weekday visitors Month ma
1 jackInthebox Monday 10 July 10.0
2 jackInthebox Monday 11 July 10.5
3 jackInthebox Tues 15 July 15.0
4 jackInthebox Tues 16 July 15.5
5 jackInthebox Wed 30 July 30.0
6 jackInthebox Wed 28 July 29.0
7 KFC Monday 50 July 50.0
8 KFC Monday 53 July 51.5
9 KFC Tues 60 July 60.0
10 KFC Tues 64 July 62.0
11 KFC Wed 30 July 30.0
12 KFC Wed 31 July 30.5注意:这是假定的输入DF
Lines <- "
Outlet weekday visitors Month
jackInthebox Monday 10 July
jackInthebox Monday 11 July
jackInthebox Tues 15 July
jackInthebox Tues 16 July
jackInthebox Wed 30 July
jackInthebox Wed 28 July
KFC Monday 50 July
KFC Monday 53 July
KFC Tues 60 July
KFC Tues 64 July
KFC Wed 30 July
KFC Wed 31 July"
DF <- read.table(text = Lines, header = TRUE, as.is = TRUE)https://stackoverflow.com/questions/45740094
复制相似问题