滚动窗口的均值 R2 是回归的总 R2 吗?

问题描述

在这里快速提问。

我必须计算 60 天滚动窗口 R2 时间序列的平均值。我的时间序列有 4680 个观察值。

我想知道,R2 的级数的平均值是回归的总 R2 吗?

示例:

Mean(series of r2) = R2 对所有样本数据的回归

解决方法

试试吧。我们展示了在这种情况下定义 R 平方的两种等效方法:

library(zoo)
set.seed(123)
n <- 4680
w <- 60
x <- rnorm(4680)

r2 <- function(x) summary(lm(x ~ seq_along(x)))$r.squared
# r2 <- function(x) cor(x,seq_along(x))^2  # this is equivalent

mean(rollapplyr(x,w,r2))
## [1] 0.4992133

r2(x)
## [1] 0.0001151601