我正在运行以下脚本:
using LinqKit.Extensions;
var orderDetails = context.Orders
.AsExpandable()
.Where(...)
.Select(o => new {
Id = o.Id,
Date = o.Date,
PersonView = PersonView.Projector.Invoke(o.Person)
})
.FirstOrDefault();
但是从下面的结果中可以看出,我的滞后变量与原始变量相同。
library(Quandl)
df <- Quandl(c("WIKI/AAPL"))
str(df)
head(df[,c(1,2)])
df$lagOpen <- lag(df$Open, 1, na.pad=TRUE)
head(df[,c(1,2,14)])
我尝试对数据进行排序,看看是否可以解决问题
head(df[,c(1,2)])
Date Open
1 2016-12-22 116.35
2 2016-12-21 116.80
3 2016-12-20 116.74
4 2016-12-19 115.80
5 2016-12-16 116.47
6 2016-12-15 115.38
但我有同样的问题
df <- df[order(df$Date),]
head(df[,c(1,2)])
df$lagOpen <- lag(df$Open, 1, na.pad=TRUE)
head(df[,c(1,2,14)])
答案 0 :(得分:1)
lag
适用于时间序列,因此您可以要求Quandl
返回type="xts"
:
library(Quandl)
df <- Quandl(c("WIKI/AAPL"), type="xts")
df$lagOpen <- lag(df$Open)
head(df[,c("Open","lagOpen")])
Open lagOpen
1980-12-12 28.75 NA
1980-12-15 27.38 28.75
1980-12-16 25.37 27.38
1980-12-17 25.87 25.37
1980-12-18 26.63 25.87
1980-12-19 28.25 26.63