学习笔记
参考书籍:《计量经济学》-李子奈;《统计学:从数据到结论》-吴喜之;
虚拟变量模型
许多变量是可以定量度量的,如需求量、价格等,但也有一些因素无法定量度量,如职业、性别。为了能够在模型中反映这些因素的影响,并提高模型的精度,需要将它们’量化’,这种’量化’通常是通过引入虚拟变量来完成的。根据这些因素的属性类型,构造取’0’或’1’的人工变量。通常称为虚拟变量,记为D。
例如:反映性别的虚拟变量可取为:
一般地,在虚拟变量的设置中,基础类型和肯定类型取值为1; 比较类型和否定类型取值为0。同时含有一般解释变量与虚拟变量的模型称为虚拟变量模型。
- 加法模型
若我们以员工薪金作为因变量,工龄
作为一般解释变量,性别
作为虚拟变量构造虚拟变量模型,则在模型中可以将虚拟变量
以相加的形式引入模型,则该加法模型为:
- 乘法模型
若在模型中将虚拟变量以相乘的形式引入模型,则该乘法模型为:
- 混合模型(自己起的名字)
我们也可以将虚拟变量同时以相加和相乘的形式引入模型:
R语言实现
在个例子中,我们模拟一系列数据,再用虚拟变量模型去拟合。
模拟数据:
set.seed(1234)
x <- c(-19:20)
y1 <- 2*x + rnorm(40, 0, 2)
y2 <- -x +rnorm(40, 3, 2)
df1 <- data.frame(x = x, y = y1, c = rep('A', 40))
df2 <- data.frame(x = x, y = y2, c = rep('B', 40))
df <- rbind(df1, df2)
plot(df$x, df$y, col = df$c, main = "散点图", xlab = 'x', ylab = 'y')
图像:
回归:
lm01 <- lm(y ~ x*c, data = df)
summary(lm01)
控制台输出:
Call:
lm(formula = y ~ x * c, data = df)
Residuals:
Min 1Q Median 3Q Max
-4.3410 -1.2588 -0.3353 0.8964 5.6449
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.81327 0.31223 -2.605 0.0111 *
x 1.97107 0.02702 72.941 < 2e-16 ***
cB 3.63159 0.44156 8.225 4.09e-12 ***
x:cB -2.92208 0.03822 -76.462 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.973 on 76 degrees of freedom
Multiple R-squared: 0.9886, Adjusted R-squared: 0.9881
F-statistic: 2194 on 3 and 76 DF, p-value: < 2.2e-16
此时,各个回归系数均通过显著性检验,则被估计的虚拟变量模型为:
注意!此时的虚拟变量取为: