У меня есть датафрейм DF, в котором у меня множество столбцов, один с датами, а другой - с часом.
Моя точка зрения заключается в том, что мне нужно найти ЦЕНУ (дай данные за 36 часов до этого. Все мои дни не имеют 24 часа, поэтому я не могу просто перенести свой набор данных.
Моя идея состояла в том, чтобы поискать накануне в моем наборе данных & 12 часов назад.
Это то, что я написал, но это не работает:
for (i in 38:nrow(DF)){
RefDay=as.Date(DF$Date[i])
HourRef=DF$Hour[i]
DF$P24[i]=DF[which(DF$Date == (RefDay-1))& which(DF$Hour == (HourRef-36)),"PRICE"]
}
Вот мой DF:
'data.frame': 20895 obs. of 45 variables:
$ Hour : Factor w/ 24 levels "0","1","2","3",..: 1 2 3 4 5 6 7 8 9 10 ...
$ Date : POSIXct, format: "2016-07-01" "2016-07-01" "2016-07-01" "2016-07-01" ...
$ PRICE : num 29.4 24.7 23.4 21.9 20.2 ...
Вот пример моих данных:
DF.Hour DF.Date DF.PRICE
1 0 2016-07-01 29.36
2 1 2016-07-01 24.69
3 2 2016-07-01 23.42
4 3 2016-07-01 21.91
5 4 2016-07-01 20.19
6 5 2016-07-01 22.44
Заранее спасибо за помощь!