朱莉娅 |如何对 TimeArray 数据集执行线性回归

Julia | How to perform a linear regression on a TimeArray dataset

我有一个 TimeArray 类型的数据集,我想执行线性回归。但是,julia 目前似乎不支持 TimeArray 类型的回归方法。

我可以将数据下载为 DataFrame 而不是 TimeArray 并使用 GLM 包,但是 TimeArray 时间戳对于以后的其他分析非常有用在。我想直接对 TimeArray 数据集执行线性回归。

编辑1:下面给出一个简单的例子:

julia> using TimeSeries

       dates = collect(Date(1999,1,1):Date(1999,1,31))

       # Dependent variable
       y  = TimeArray(dates, rand(length(dates)))

       # Explanatory variables 
       x1 = TimeArray(dates, rand(length(dates))) # Explanatory variable 1
       x2 = TimeArray(dates, rand(length(dates))) # Explanatory variable 2
       x  = rename(merge(x1,x2), ["x1", "x2"])    # Merge x1 and x2 into a single TimeArray

       # Linear regression
       coefs = linreg(x, y) # Yields a method error since linreg does not support the TimeArray type. 

有没有人找到解决此问题的方法或解决方法?

TimeArray 类型似乎有一个 .values 字段,您可以使用它以正确的顺序获取与数组关联的值。因此,您可以使用以下方法执行线性回归:

coefs = linreg(x.values,y.values)