R 以矩阵/数据帧格式获取CCF的输出

R 以矩阵/数据帧格式获取CCF的输出,r,time-series,R,Time Series,我正在使用R中的prewhiten()计算互相关。我希望以矩阵/数据帧格式导出输出,并且仅用于正滞后。例如: x<-c(12,14,22,23,25,26,28,30,32,27,36,44,22,15,8,18) y<-c(1,2,5,2,4,4,5,6,8,9,10,3,4,8,8,9) x_model<-auto.arima(x) correlation<-prewhiten(x,y,x.model=x_model,plot=FALSE) correlation$c

我正在使用R中的
prewhiten()
计算互相关。我希望以矩阵/数据帧格式导出输出,并且仅用于正滞后。例如:

x<-c(12,14,22,23,25,26,28,30,32,27,36,44,22,15,8,18)
y<-c(1,2,5,2,4,4,5,6,8,9,10,3,4,8,8,9)
x_model<-auto.arima(x)
correlation<-prewhiten(x,y,x.model=x_model,plot=FALSE)
correlation$ccf
等等……

你可以做:

data.frame(lag=correlation$ccf$lag, CCF=correlation$ccf$acf)
但是,您可以使用
str
轻松检查对象的结构,这将帮助您转换为所需的结构:

str(correlation$ccf)
# List of 6
#  $ acf   : num [1:19, 1, 1] -0.1702 0.1041 -0.0985 0.1238 0.0107 ...
#  $ type  : chr "correlation"
#  $ n.used: int 16
#  $ lag   : num [1:19, 1, 1] -9 -8 -7 -6 -5 -4 -3 -2 -1 0 ...
#  $ series: chr "X"
#  $ snames: chr "x & y"
#  - attr(*, "class")= chr "acf"
str(correlation$ccf)
# List of 6
#  $ acf   : num [1:19, 1, 1] -0.1702 0.1041 -0.0985 0.1238 0.0107 ...
#  $ type  : chr "correlation"
#  $ n.used: int 16
#  $ lag   : num [1:19, 1, 1] -9 -8 -7 -6 -5 -4 -3 -2 -1 0 ...
#  $ series: chr "X"
#  $ snames: chr "x & y"
#  - attr(*, "class")= chr "acf"