R中多元时间序列的线性回归
作为我数据分析的一部分,我使用线性回归分析来检查我是否能够使用今天的数据预测明天的价值 我的数据是大约100个公司收益的时间序列。以下是我目前的代码:R中多元时间序列的线性回归,r,time-series,linear-regression,R,Time Series,Linear Regression,作为我数据分析的一部分,我使用线性回归分析来检查我是否能够使用今天的数据预测明天的价值 我的数据是大约100个公司收益的时间序列。以下是我目前的代码: returns <- read.zoo("returns.csv", header=TRUE, sep=",", format="%d-%m-%y") returns_lag <- lag(returns) lm_univariate <- lm(returns_lag$companyA ~ returns$companyA)
returns <- read.zoo("returns.csv", header=TRUE, sep=",", format="%d-%m-%y")
returns_lag <- lag(returns)
lm_univariate <- lm(returns_lag$companyA ~ returns$companyA)
返回当您知道要包含在回归中的变量的确切名称时,公式非常有用。当你在值上循环时,它们就不是那么好了。下面是一个使用索引为每次迭代提取感兴趣列的示例
#sample data
x.Date <- as.Date("2003-02-01") + c(1, 3, 7, 9, 14) - 1
returns <- zoo(cbind(companya=rnorm(10), companyb=rnorm(10)), x.Date)
returns_lag <- lag(returns)
$loop over columns/companies
xx<-lapply(setNames(1:ncol(returns),names(returns)), function(i) {
today <-returns_lag[,i]
yesterday <-head(returns[,i], -1)
lm(today~yesterday)
})
xx
#示例数据
x、 当您知道要包含在回归中的变量的确切名称时,Date公式非常有用。当你在值上循环时,它们就不是那么好了。下面是一个使用索引为每次迭代提取感兴趣列的示例
#sample data
x.Date <- as.Date("2003-02-01") + c(1, 3, 7, 9, 14) - 1
returns <- zoo(cbind(companya=rnorm(10), companyb=rnorm(10)), x.Date)
returns_lag <- lag(returns)
$loop over columns/companies
xx<-lapply(setNames(1:ncol(returns),names(returns)), function(i) {
today <-returns_lag[,i]
yesterday <-head(returns[,i], -1)
lm(today~yesterday)
})
xx
#示例数据
x、 日期使用dyn软件包(加载zoo),我们可以执行以下操作:
library(dyn)
z <- zoo(EuStockMarkets) # test data
lapply(as.list(z), function(z) dyn$lm(z ~ lag(z, -1)))
库(dyn)
z使用dyn软件包(加载zoo),我们可以做到:
library(dyn)
z <- zoo(EuStockMarkets) # test data
lapply(as.list(z), function(z) dyn$lm(z ~ lag(z, -1)))
库(dyn)
看起来真的很有用。我无法理解为什么在搜索时间序列回归时从未找到dyn库。这看起来非常有用。我无法理解为什么在搜索时间序列回归时从未找到dyn库。