如何在 r 中执行 chow 测试


Chow检验用于检验两个不同回归模型在不同数据集上的系数是否相等。

该检验通常用于计量经济学领域的时间序列数据,以确定给定时间点的数据是否存在结构性中断。

本教程提供了如何在 R 中执行 Chow 测试的分步示例。

第 1 步:创建数据

首先,我们将创建假数据:

 #create data
data <- data.frame(x = c(1, 1, 2, 3, 4, 4, 5, 5, 6, 7, 7, 8, 8, 9, 10, 10,
                         11, 12, 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 20),
                   y = c(3, 5, 6, 10, 13, 15, 17, 14, 20, 23, 25, 27, 30, 30, 31,
                         33, 32, 32, 30, 32, 34, 34, 37, 35, 34, 36, 34, 37, 38, 36))

#view first six rows of data
head(data)

  xy
1 1 3
2 1 5
3 2 6
4 3 10
5 4 13
6 4 15

第 2 步:可视化数据

接下来,我们将创建一个简单的散点图来可视化数据:

 #load ggplot2 visualization package
library (ggplot2)

#create scatterplot
ggplot(data, aes (x = x, y = y)) +
    geom_point(col=' steelblue ', size= 3 )

R 中的食品测试

从散点图中,我们可以看到数据中的模式在 x = 10 处出现变化。因此,我们可以执行 Chow 检验来确定数据中在 x = 10 处是否存在结构断点。

第 3 步:执行 Chow 测试

我们可以使用strucchange 包中的sctest函数执行 Chow 测试:

 #load strucchange package
library (strucchange)

#perform Chow test
sctest(data$y ~ data$x, type = " Chow ", point = 10 )

	Chow test

data: data$y ~ data$x
F = 110.14, p-value = 2.023e-13

从测试结果我们可以看出:

  • F 检验统计量:110.14
  • p 值: <.0000

由于 p 值小于 0.05,我们可以拒绝检验的原假设。这意味着我们有足够的证据表明数据中存在结构断点。

换句话说,两条回归线比一条回归线可以更有效地拟合数据中的模型。

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注